Quantum computing is already a reality, scientific advances in this area are becoming more frequent and with a greater degree of complexity. It is clear that this technology within a few years will revolutionize the way in which we currently communicate and use information.
Today IBMIt is driving quantum computing research with an Online Service that allows anyone to use a five-qubit quantum computer that its researchers have established in a research lab in Yorktown Heights, New York.
They can access the machine over the Internet through a simple software interface or, at least, it's simple if you understand the basics of quantum computing. There are also quantum processors that almost reach the 2 000 qubits and that are on the market but building a quantum computer for you to use on your desk is still a long way off.
In this case, we know that quantum computers exist, and although they are not available to everyone, we would like to know how they work, although the main question is what operating system does a quantum computer use?
We will not be so fussy when defining and finding the concept of operating system, and more because we will see it around quantum computers, so we will focus on those systems that offer software and communication utilities for quantum computers.
Throughout this article we will see those known operating systems, various simulators and even programming languages for quantum technology.
t|fell off⟩ ™ is an architecture-independent quantum software stack and best-in-class compiler. t | ket⟩ ™ translates machine independent algorithms into executable circuits, optimizing the physical design of the qubit while reducing the amount of operations required.
t|fell off⟩ offers a flexible workflow for developing quantum chemistry and quantum machine learning applications.t|fell off⟩ is a class leading circuit optimizer and qubit mapping system that generates highly efficient circuits tuned for any of the leading quantum computing processors and devices.
Build engine provides optimization passes geared towards high-performance applications, with a consistent routing interface, optimizations and other circuit transformations.
Unique transform combiners allow users to design their own passes, to minimize quantum resource requirements for your chosen application, while always guaranteeing the correctness of the general circuit, regardless of the target platform.
Who developed t|fell off⟩?
Cambridge Quantum Computing (CQC) is a world leader in quantum computing software with more than 60 scientists, including 35 PhDs in Cambridge offices(UK), San Francisco, London and Tokyo. CQC builds tools for the commercialization of quantum technologies that will have a profound global impact.
The giant Microsoft could not be left behind and presents us (opens in a new tab)”>LIQUi|> . LIQUi|> it is a software architecture and toolkit for quantum computing. Includes a programming language, optimization and programming algorithms, and quantum simulators.
LIQUi|> It can be used to translate a quantum algorithm written in the form of a high-level program into the low-level machine instructions for a quantum device. LIQUi|> is being developed byQuantum Architectures and Computation Group (quarc) at Microsoft Research.
To aid in the development and understanding of quantum protocols, quantum algorithms, quantum error correction and quantum devices, quarc has developed an extensive software platform called LIQUi |>. LIQUi |> allows simulation of Hamiltonians, quantum circuits, quantum stabilizer circuits and quantum noise models, and is compatible with the client, cloud service and operation.
Allows the user to express circuits in a high-level functional language (F #), and supports extraction of circuit data structures that can be passed to other components for circuit optimization, quantum error correction, door replacement, export or rendering. The system is designed to be completely modular to allow easy extension as desired.
What can LIQUi do|>?
Some of the specific algorithms you can simulate with LIQUi |> son:
- Simple quantum teleportation
- Shor factorization algorithm
- Quantum chemistry: calculate the ground state energy of a molecule
- Quantum error correction
- Quantum associative memory (Ventura and Martinez)
- Quantum linear algebra (Harrow, Hassidim y Lloyd)
In a certain way LIQUi|> it seems that it was a communication or programming language between normal sentences and quantum data, but by allowing a communication in interaction between the quantum nucleus and the instructions that it processes, it could be defined that it is like an operating system.
We know that Linux dominates the area of supercomputers, but unfortunately we have no information that indicates that any Linux distro is being developed or used for communication with quantum computers. Even so, there are software kits that can be installed on Linux.
Quantum Development Kit
Microsoft Introduces Quantum Development Kit, which, give you the tools you need to develop quantum computing programs that solve our most challenging problems in computing.
The Quantum Development Kit contains the tools you will need to build your own quantum computing programs and experiments. Assuming some experience with Visual Studio, beginners can write their first quantum program, and experienced researchers can develop new quantum algorithms quickly and efficiently.
Developers interested in working with and visualizing quantum computing can use open source tools to help get started..
- jQuantum . jQuantum is a program that simulates a quantum computer. Users can design quantum circuits with jQuantum and let them run. The current state of the quantum register can be visualized. GPL
- Squankum . Squankum is a quantum computer simulator that allows the visualization of a single qubit. You can also observe the representation on a Bloch sphere [http://en.wikipedia.org/wiki/Bloch_Sphere], a useful tool for understanding multi-state situations. GPL
- Q ++ . Q ++ is a C template library ++ multiplatform used to simulate quantum calculus. Q ++ enables testing of quantum algorithms by providing a faster way to create compiled programs for speed. LGPL.
- Quantum Toolkit . A quantum mechanics toolkit and 3D viewer for C ++, this application allows visualization through images, surfaces and volume graphics using OpenGL. GPL
Language Q # (Q-sharp)
Q# (Q-sharp) is a domain specific programming language used to express quantum algorithms. It should be used to write subroutines that run on an attached quantum processor, under the control of a classic host program and a computer. Until quantum processors are widely available, the Q subroutines # run on a simulator.
Q # provides a small set of primitive types, along with two ways (matrices and tuples) to create new structured types. Supports a basic procedure model for writing programs, with loops and if statements / then. The top-level constructions in Q # they are types, user-defined operations and functions.
Quantum Computing Language is a programming language that can be used to write programs for quantum computers.
Since each quantum machine must be controlled by a classical device, existing quantum programming languages incorporate classical control structures, like loops and conditional execution, and allow to operate with classical and quantum data.
Quipper is an embedded and scalable functional programming language for quantum computing. Provides, among other things:
- A high-level circuit description language. This includes door-to-door descriptions of circuit fragments, as well as powerful operators to assemble and manipulate circuits.
- A syntax that allows a mix of procedural and declarative programming styles.
- Integrated facilities for the automatic synthesis of reversible quantum circuits, even from classic code.
- Support for hierarchical circuits.
- Extensible quantum data types.
- Programmable Circuit Transformers.
- Support for three execution phases: compile time, circuit generation time and circuit execution time. A dynamic lift operation to allow circuit generation to be parametric on the values generated at circuit runtime.
- Extensive libraries of quantum functions, including: libraries for quantum integers and fixed point arithmetic; the quantum Fourier transform; an efficient Qram implementation; Libraries for the simulation of pseudo-classical circuits, stabilizer circuits and arbitrary circuits; libraries for exact and approximate decomposition of circuits into specific gate sets.
We know that quantum computing is still in its infancy, but it is of great importance to begin to know all the areas of development that this new technology will create and modify in the future..