Quantum NamespaceA Sandcastle Documented Class Library
The basic namespace of the library. Includes two sub-namespaces: Quantum.Operations for performing complex quantum operations, such as Quantum Fourier Transform, and Quantum.Algorithms containing implementations of the most important quantum algorithms, such as Shor's factoring algoritm.
Classes

  ClassDescription
Public classQuantumComputer
The main class for quantum computation.
Remarks

QuantumComputer is a singleton, which instance can be obtained by calling GetInstance  method. QuantumComputer can create and delete the Register class (Registers cannot be created independently by new operator). Quantum computations can be performed by Register class, but also by QuantumComputer class, by using its extension methods located in namespace Quantum.Operations.

Public classRegister
The basic unit needed for performing quantum computation.
Remarks

QuantumComputer may have zero to many Registers, but at least one is required to perform quantum computations. Register consist of qubits, which are targets for quantum gates. To apply a quantum gate, use methods of Register class (for computation on its qubits) or extension methods of QuantumComputer class (for computation on qubits in different registers; see Quantum.Operations).

Register is not an independent class. It could be created and deleted only by QuantumComputer.

Structures

  StructureDescription
Public structureRegisterRef
This structure represents a reference to a qubit in quantum register.