The identity operation for n qubits. The identity operation is essentially a
no operation (noop) since it does not change the state of the qubit(s). Direct
implementations of this interface should be named OperationIdentityN.

C# | Visual Basic | Visual C++ |
public interface IOperationIdentityN : IQuantumOperation, ICoveObject
Public Interface IOperationIdentityN _ Implements IQuantumOperation, ICoveObject
public interface class IOperationIdentityN : IQuantumOperation, ICoveObject

All Members | Methods | ||||
Icon | Member | Description |
---|---|---|
![]() | Clone()()() |
Return a clone (deep copy) of the current operation. This operation returned can be modified
without any impact to this object. Unlike quantum registers, quantum operations cannot be
in superposition- hence a clone of them does not violate the no-cloning theorem.
|
![]() | Combine(IQuantumOperation) |
Combine two same sized operations into one.
(Inherited from IQuantumOperation.) |
![]() | GetOperationAndTargets()()() |
Get a string that shows the operations name and target. An example might
be something like "CNOT: Control = 0, Target = 2".
(Inherited from IQuantumOperation.) |
![]() | GetSize()()() |
Get the size of this operation, the number of qubits it operates on.
|
![]() | GetTargets()()() |
Get the target indexes for this operation.
|
![]() | IsValidOperation()()() |
Is this a valid quantum operation? All quantum operations must be unitary,
so this allows for all operations to be checked before they are applied to
registers.
(Inherited from IQuantumOperation.) |
![]() | NumberOfQubitsOperatesOn()()() |
Returns the number of qubits that the operation operates on. For example
a CNot operation would return 2 since there are two qubits, target and control.
(Inherited from IQuantumOperation.) |
![]() | SetSize(Int32) |
Set the size of this operation, the number of qubits it operates on.
|
![]() | SetTargets(array<Int32>[]()[]) |
Set the target indexes for this operation. This also resizes
the operation to match the number of indexes passed in.
|
![]() | Tensor(IQuantumOperation) |
Tensor two operations into one combined one.
(Inherited from IQuantumOperation.) |
![]() | ToString()()() |
Get the string representation of the object
(Inherited from ICoveObject.) |