The interface that all operations on qubits must implement. This is a base
interface and there should not be direct implementations.
| C# | Visual Basic | Visual C++ |
public interface IQubitOperation : IQuantumOperation, ICoveObject
Public Interface IQubitOperation _ Implements IQuantumOperation, ICoveObject
public interface class IQubitOperation : IQuantumOperation, ICoveObject
| All Members | Methods | ||||
| Icon | Member | Description |
|---|---|---|
| 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.) | |
| GetOperationMatrix()()() |
Return the matrix that represents this operation
| |
| GetTargetQubit()()() |
Get the target index of this single qubit 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.) | |
| SetTargetQubit(Int32) |
Set the target index of this single qubit operation.
| |
| Tensor(IQuantumOperation) |
Tensor two operations into one combined one.
(Inherited from IQuantumOperation.) | |
| ToString()()() |
Get the string representation of the object
(Inherited from ICoveObject.) |