|
| | QCircuitGate () |
| | Identity gate constructor. More...
|
| |
| | QCircuitGate (bitLenInt q1, bitLenInt q2) |
| | Swap gate constructor More...
|
| |
| | QCircuitGate (bitLenInt trgt, const complex matrix[]) |
| | Single-qubit gate constructor. More...
|
| |
| | QCircuitGate (bitLenInt trgt, const complex matrix[], const std::set< bitLenInt > &ctrls, const bitCapInt &perm) |
| | Controlled gate constructor. More...
|
| |
| | QCircuitGate (bitLenInt trgt, const std::map< bitCapInt, std::shared_ptr< complex >> &pylds, const std::set< bitLenInt > &ctrls) |
| | Uniformly controlled gate constructor (that only accepts control qubits is ascending order) More...
|
| |
| QCircuitGatePtr | Clone () |
| |
| bool | CanCombine (QCircuitGatePtr other, bool clifford=false) |
| | Can I combine myself with gate other? More...
|
| |
| void | Clear () |
| | Set this gate to the identity operator. More...
|
| |
| void | AddControl (bitLenInt c) |
| | Add control qubit. More...
|
| |
| bool | CanRemoveControl (bitLenInt c) |
| | Check if a control qubit can be removed. More...
|
| |
| void | RemoveControl (bitLenInt c) |
| | Remove control qubit. More...
|
| |
| bool | TryRemoveControl (bitLenInt c) |
| | Check if I can remove control, and do so, if possible. More...
|
| |
| void | Combine (QCircuitGatePtr other) |
| | Combine myself with gate other More...
|
| |
| bool | TryCombine (QCircuitGatePtr other, bool clifford=false) |
| | Check if I can combine with gate other, and do so, if possible. More...
|
| |
| bool | IsIdentity () |
| | Am I an identity gate? More...
|
| |
| bool | IsPhase () |
| | Am I a phase gate? More...
|
| |
| bool | IsInvert () |
| | Am I a Pauli X plus a phase gate? More...
|
| |
| bool | IsPhaseInvert () |
| | Am I a combination of "phase" and "invert" payloads? More...
|
| |
| bool | IsCnot () |
| | Am I a CNOT gate? More...
|
| |
| bool | IsAntiCnot () |
| | Am I a CNOT gate? More...
|
| |
| bool | IsClifford () |
| | Am I a Clifford gate? More...
|
| |
| bool | CanPass (QCircuitGatePtr other) |
| | Do I commute with gate other? More...
|
| |
| std::unique_ptr< complex[]> | MakeUniformlyControlledPayload () |
| | To run as a uniformly controlled gate, generate my payload array. More...
|
| |
| std::vector< bitLenInt > | GetControlsVector () |
| | Convert my set of qubit indices to a vector. More...
|
| |
| void | PostSelectControl (bitLenInt c, bool eigen) |
| | Erase a control index, if it exists, (via post selection). More...
|
| |