-- The name of the package. name: newsynth -- The package version. See the Haskell package versioning policy (PVP) -- for standards guiding when and how versions should be incremented. -- http://www.haskell.org/haskellwiki/Package_versioning_policy -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change version: 0.2.0.1 -- A short (one-line) description of the package. synopsis: Exact and approximate synthesis of quantum circuits -- A longer description of the package. description: A library of algorithms for exact and approximate synthesis of quantum circuits over the Clifford+T gate set. This includes, among other things: . * "Quantum.Synthesis.GridSynth": an efficient single-qubit approximate synthesis algorithm. From N. J. Ross and P. Selinger, \"Optimal ancilla-free Clifford+/T/ approximation of /z/-rotations\", . . * "Quantum.Synthesis.MultiQubitSynthesis": multi-qubit exact synthesis algorithms. From B. Giles and P. Selinger, \"Exact synthesis of multiqubit Clifford+/T/ circuits\", Physical Review A 87, 032332, 2013, . . * "Quantum.Synthesis.CliffordT": the computation of Matsumoto-Amano normal forms. From K. Matsumoto and K. Amano, \"Representation of Quantum Circuits with Clifford and π\/8 Gates\", . . * "Quantum.Synthesis.RotationDecomposition": an algorithm for decomposing multi-qubit unitary operators into one- and two-level unitaries. See e.g. Section 4.5.1 of M. A. Nielsen and I. L. Chuang, \"Quantum Computation and Quantum Information\", Cambridge University Press, 2002. . This package also provides an easy-to-use command line tool for single-qubit approximate synthesis. -- URL for the project homepage or repository. homepage: http://www.mathstat.dal.ca/~selinger/newsynth/ -- The license under which the package is released. license: GPL-3 -- The file containing the license text. license-file: LICENSE -- The package author(s). author: Neil J. Ross, Peter Selinger -- An email address to which users can send suggestions, bug reports, and -- patches. maintainer: selinger@mathstat.dal.ca -- A copyright notice. copyright: Copyright (c) 2012-2014 Neil J. Ross and Peter Selinger -- A classification category for future use by the package catalogue -- Hackage. These categories have not yet been specified, but the -- upper levels of the module hierarchy make a good start. category: Quantum -- The type of build used by this package. build-type: Custom -- Constraint on the version of Cabal needed to build this package. cabal-version: >=1.8 -- A list of additional files to be included in source distributions -- built with setup sdist. extra-source-files: images/*.png ChangeLog library -- Modules exported by the library. exposed-modules: Quantum.Synthesis.Newsynth, Quantum.Synthesis.Matrix, Quantum.Synthesis.LaTeX, Quantum.Synthesis.RotationDecomposition, Quantum.Synthesis.ArcTan2, Quantum.Synthesis.EulerAngles, Quantum.Synthesis.EuclideanDomain, Quantum.Synthesis.SymReal, Quantum.Synthesis.Ring, Quantum.Synthesis.Clifford, Quantum.Synthesis.MultiQubitSynthesis, Quantum.Synthesis.CliffordT, Quantum.Synthesis.Ring.FixedPrec, Quantum.Synthesis.Ring.SymReal, Quantum.Synthesis.GridProblems Quantum.Synthesis.GridSynth Quantum.Synthesis.Diophantine Quantum.Synthesis.StepComp Quantum.Synthesis.QuadraticEquation -- Modules included in this library but not exported. -- other-modules: -- Other library packages from which modules are imported. build-depends: base >= 4.6 && < 4.8, random >= 1.0 && < 1.2, fixedprec >= 0.2.2 && < 0.3, superdoc ==0.1.*, containers ==0.5.* -- Additional options for GHC when the package is built with -- profiling enabled. ghc-prof-options: -prof -auto-all executable gridsynth -- .hs or .lhs file containing the Main module. main-is: gridsynth.hs -- Root directories for the module hierarchy. hs-source-dirs: programs -- Modules included in this executable, other than Main. other-modules: CommandLine -- Other library packages from which modules are imported. build-depends: base >= 4.6 && < 4.8, random >= 1.0 && < 1.2, time ==1.4.*, superdoc ==0.1.*, newsynth