Today I read a paper titled “Q#, a quantum computation package for the .NET platform”
The abstract is:
Quantum computing is a promising approach of computation that is based on equations from Quantum Mechanics.
A simulator for quantum algorithms must be capable of performing heavy mathematical matrix transforms.
The design of the simulator itself takes one of three forms: Quantum Turing Machine, Network Model or circuit model of connected gates or, Quantum Programming Language, yet, some simulators are hybrid.
We studied previous simulators and then we adopt features from three simulators of different implementation languages, different paradigms, and for different platforms.
They are Quantum Computing Language (QCL), QUASI, and Quantum Optics Toolbox for Matlab 5.
Our simulator for quantum algorithms takes the form of a package or a programming library for Quantum computing, with a case study showing the ability of using it in the circuit model.
The .NET is a promising platform for computing.
VB.NET is an easy, high productive programming language with the full power and functionality provided by the .NET framework.
It is highly readable, writeable, and flexible language, compared to another language such as C#.NET in many aspects.
We adopted VB.NET although its shortage in built-in mathematical complex and matrix operations, compared to Matlab.
For implementation, we first built a mathematical core of matrix operations.
Then, we built a quantum core which contains: basic qubits and register operations, basic 1D, 2D, and 3D quantum gates, and multi-view visualization of the quantum state, then a window for demos to show you how to use and get the most of the package.