OperationsTransverse Method |
Expands a parent gate to a transverse version.
Namespace: Microsoft.Research.LiquidAssembly: Liquid1 (in Liquid1.dll) Version: 1.0.5981.24943 (1.0.*)
Syntax static member Transverse :
cCnt : int *
f : FSharpFunc<FSharpList<Qubit>, Unit> *
qs : FSharpList<Qubit> -> unit
Parameters
- cCnt
- Type: SystemInt32
The total number of qubits in code - f
- Type: Microsoft.FSharp.CoreFSharpFuncFSharpListQubit, Unit
The parent gate to expand - qs
- Type: Microsoft.FSharp.CollectionsFSharpListQubit
The qubits that final gate will operate on
Remarks
If the parent gate operates on a single qubit, then it is applied to each qubit in the code.
If the parent gate applies to two qubits, then it is applied to pairs of qubits selected
from the first and second half of the list.
For example, if the code contained 3 qubits,
so that the qubits to operate on would contain 6 qubits,
then the gate would be applied to pairs 0 and 3, 1 and 4, and 2 and 5.
It is an error if the parent gate takes more than two qubits.
The transverse gate's name is the parent's name with a "_T" suffix.
See Also