QuantumInformation.jl—A Julia package for numerical computation in quantum information theory

Numerical investigations are an important research tool in quantum information theory. There already exists a wide range of computational tools for quantum information theory implemented in various programming languages. However, there is little effort in implementing this kind of tools in the Julia language. Julia is a modern programming language designed for numerical computation with excellent support for vector and matrix algebra, extended type system that allows for implementation of elegant application interfaces and support for parallel and distributed computing. QuantumInformation.jl is a new quantum information theory library implemented in Julia that provides functions for creating and analyzing quantum states, and for creating quantum operations in various representations. An additional feature of the library is a collection of functions for sampling random quantum states and operations such as unitary operations and generic quantum channels.

[1]  M. Stephanov,et al.  Random Matrices , 2005, hep-ph/0509286.

[2]  C. Jarlskog A recursive parametrization of unitary matrices , 2005 .

[3]  John Watrous,et al.  The Theory of Quantum Information , 2018 .

[4]  Jaroslaw Adam Miszczak Generating and using truly random quantum states in Mathematica , 2011, Comput. Phys. Commun..

[5]  Darrel C. Ince,et al.  The case for open computer programs , 2012, Nature.

[6]  Uttam Singh,et al.  Average subentropy, coherence and entanglement of random mixed quantum states , 2015 .

[7]  Stephan Fritzsche,et al.  Simulation of n-qubit quantum systems. V. Quantum measurements , 2010, Comput. Phys. Commun..

[8]  H. Sommers,et al.  Statistical properties of random density matrices , 2004, quant-ph/0405031.

[9]  Eric Jones,et al.  SciPy: Open Source Scientific Tools for Python , 2001 .

[10]  Vikram S. Adve,et al.  LLVM: a compilation framework for lifelong program analysis & transformation , 2004, International Symposium on Code Generation and Optimization, 2004. CGO 2004..

[11]  Ion Nechita,et al.  Almost all quantum channels are equidistant , 2016, 1612.00401.

[12]  Stephan Fritzsche,et al.  Simulation of n-qubit quantum systems. IV. Parametrizations of quantum states, matrices and probability distributions , 2008, Comput. Phys. Commun..

[13]  W. Wootters Random quantum states , 1990 .

[14]  Helmut Ritsch,et al.  QuantumOptics.jl: A Julia framework for simulating open quantum systems , 2018, Comput. Phys. Commun..

[15]  Stephen P. Boyd,et al.  Convex Optimization in Julia , 2014, 2014 First Workshop for High Performance Technical Computing in Dynamic Languages.

[16]  F. Mezzadri How to generate random matrices from the classical compact groups , 2006, math-ph/0609050.

[17]  Karol Życzkowski,et al.  Random quantum operations , 2008, 0804.2361.

[18]  Zhihua Chen,et al.  Spectral density of mixtures of random density matrices for qubits , 2017, Physics Letters A.

[19]  W. Wootters,et al.  Entanglement of a Pair of Quantum Bits , 1997, quant-ph/9703041.

[20]  Richard Johnson,et al.  Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization , 2003 .

[21]  Stephan Fritzsche,et al.  Simulation of n-qubit quantum systems. III. Quantum operations , 2007, Comput. Phys. Commun..

[22]  H. Sommers,et al.  Induced measures in the space of mixed quantum states , 2000, quant-ph/0012101.

[23]  Travis E. Oliphant,et al.  Guide to NumPy , 2015 .

[24]  Lin Zhang,et al.  Average coherence and its typicality for random mixed quantum states , 2016, 1607.02294.

[25]  K. Życzkowski,et al.  Random unitary matrices , 1994 .

[26]  Franco Nori,et al.  QuTiP 2: A Python framework for the dynamics of open quantum systems , 2012, Comput. Phys. Commun..

[27]  Jaroslaw Adam Miszczak,et al.  SINGULAR VALUE DECOMPOSITION AND MATRIX REORDERINGS IN QUANTUM INFORMATION THEORY , 2010, 1011.1585.

[28]  J. Ginibre Statistical Ensembles of Complex, Quaternion, and Real Matrices , 1965 .

[29]  Alan Edelman,et al.  Array Operators Using Multiple Dispatch: A design methodology for array implementations in dynamic languages , 2014, ARRAY@PLDI.

[30]  Stephan Fritzsche,et al.  Simulation of n-qubit quantum systems. II. Separability and entanglement , 2006, Comput. Phys. Commun..

[31]  Zbigniew Puchala,et al.  Distinguishability of generic quantum states , 2015, 1507.05123.

[32]  T. Tao,et al.  RANDOM MATRICES: THE CIRCULAR LAW , 2007, 0708.2895.

[33]  Alan Edelman,et al.  Julia: A Fresh Approach to Numerical Computing , 2014, SIAM Rev..

[34]  Stephan Fritzsche,et al.  Simulation of n-qubit quantum systems. I. Quantum registers and quantum gates , 2005, Comput. Phys. Commun..

[35]  Francisco Delgado,et al.  QUANTUM: A Wolfram Mathematica add-on for Dirac Bra-Ket Notation, Non-Commutative Algebra, and Simulation of Quantum Computing Circuits , 2016 .

[36]  Franco Nori,et al.  QuTiP: An open-source Python framework for the dynamics of open quantum systems , 2011, Comput. Phys. Commun..