# ApplyWithCA operation

Given two operations, applies one as conjugated with the other.

Given two operations, respectively described by unitary operators $U$ and $V$, applies them in the sequence $U^{\dagger} V U$. That is, this operation implements the unitary operator given by $V$ conjugated with $U$.

operation ApplyWithCA (outerOperation : ('T => Unit is Adj), innerOperation : ('T => Unit is Adj + Ctl), target : 'T) : Unit
Functors

## Type Parameters

'T

The target on which each of the inner and outer operations act.

## Input

outerOperation

The operation $U$ that should be used to conjugate $V$. Note that the outer operation $U$ needs to be adjointable, but does not need to be controllable.

Functors

#### Output: Unit

innerOperation

The operation $V$ being conjugated.

Functors

#### Output: Unit

target
'T

The input to be provided to the outer and inner operations.

Unit

## Remarks

The outer operation is always assumed to be adjointable, but does not need to be controllable in order for the combined operation to be controllable.