A Julia package for numerical computation in quantum information theory.
Numerical investigations are prevalent in quantum information theory. Numerical experiments can be used to find counter examples for theorems, to test hypotheses or to gain insight about quantum objects and operations.
Our goal while designing QuantumInformation.jl library was to follow principles presented in book "Geometry of Quantum States" . We work with column vectors reprinting kets and row vectors representing bras. We fix our basis to the computational one. Density matrices and quantum channels are represented as two dimensional arrays in the same fixed basis. This approach allows us to obtain low level complexity of our code, high flexibility and good computational efficiency. The design choices where highly motivated by the properties of the language in which the our library was implemented, namely Julia .
The purpose of QuantumInformation.jl library is to provide functions to:
- creating and analyzing quantum
- manipulating them with quantum channels
- calculating functionals on these objects, i.e. trace norm, diamond norm, entropy, fidelity,
- application of random matrix theory in quantum
 I. Bengtsson, K. Życzkowski, Geometry of Quantum States: An Introduction to Quantum Entanglement, Cambridge University Press (2008).
 J. Bezanson, S. Karpinski, V. B. Shah, A. Edelman, Julia: A fast dynamic language for technical computing, preprint.