symplectic-chp-0.1.0.1: symplectic-chp.cabal
cabal-version: 3.0
-- The cabal-version field refers to the version of the .cabal specification,
-- and can be different from the cabal-install (the tool) version and the
-- Cabal (the library) version you are using. As such, the Cabal (the library)
-- version used must be equal or greater than the version stated in this field.
-- Starting from the specification version 2.2, the cabal-version field must be
-- the first thing in the cabal file.
-- Initial package description 'symplectic-chp' generated by
-- 'cabal init'. For further documentation, see:
-- http://haskell.org/cabal/users-guide/
--
-- The name of the package.
name: symplectic-chp
-- Tested GHC versions
-- GHC 9.2 has compatibility issues with stim-parser dependency
tested-with: GHC == 9.4.8
, GHC == 9.6.7
, GHC == 9.8.4
, GHC == 9.10.1
, GHC == 9.12.2
-- The package version.
-- See the Haskell package versioning policy (PVP) for standards
-- guiding when and how versions should be incremented.
-- https://pvp.haskell.org
-- PVP summary: +-+------- breaking API changes
-- | | +----- non-breaking API additions
-- | | | +--- code changes with no API change
version: 0.1.0.1
-- A short (one-line) description of the package.
synopsis: CHP Clifford simulator using symplectic geometry
-- A longer description of the package.
description: A Haskell implementation of the CHP Clifford simulator through the lens of symplectic geometry. Includes a library for programmatic circuit construction and a command-line tool for simulating STIM circuit files.
-- The license under which the package is released.
license: MIT
-- The file containing the license text.
license-file: LICENSE
-- The package author(s).
author: overshiki
-- An email address to which users can send suggestions, bug reports, and patches.
maintainer: le.niu@hotmail.com
-- A copyright notice.
copyright: 2026 overshiki
-- Category for Hackage
category: Physics, Quantum Computing, Math
-- Homepage and bug tracker
homepage: https://github.com/overshiki/symplectic-chp
bug-reports: https://github.com/overshiki/symplectic-chp/issues
-- Build information
build-type: Simple
-- Extra doc files to be distributed with the package, such as a CHANGELOG or a README.
extra-doc-files: CHANGELOG.md, README.md
-- Extra source files to be distributed with the package, such as examples, or a tutorial module.
extra-source-files: data/stim-circuits/*.stim,
data/stim-circuits/*.expected,
data/stim-circuits/*.derive.md
source-repository head
type: git
location: https://github.com/overshiki/symplectic-chp
common warnings
ghc-options: -Wall
common test-settings
import: warnings
default-language: GHC2021
ghc-options:
-O0
-threaded
-rtsopts
library
import: warnings
exposed-modules:
SymplecticCHP
SymplecticCHP.BitVec
SymplecticCHP.LargeTableau
other-modules:
build-depends:
, base >= 4.17 && < 4.22
, vector >= 0.12 && < 0.14
, vector-sized >= 1.5 && < 1.7
, finite-typelits >= 0.1 && < 0.3
, primitive >= 0.7 && < 0.10
, random >= 1.2 && < 1.3
, mtl >= 2.2 && < 2.4
, transformers >= 0.5 && < 0.7
, deepseq >= 1.4 && < 1.6
hs-source-dirs: src
default-language: GHC2021
test-suite symplectic-chp-test
import: test-settings
type: exitcode-stdio-1.0
hs-source-dirs: test, app
main-is: Spec.hs
other-modules:
Test.TableauSpec
Test.GatesSpec
Test.MeasurementSpec
Test.UtilsSpec
Test.Examples
Test.Arbitrary
Test.StimCircuitSpec
CHPCircuit
CLI
Simulator
StimToCHP
build-depends:
, symplectic-chp
, base >= 4.17 && < 4.22
, hspec >= 2.10 && < 2.12
, hspec-discover >= 2.10 && < 2.12
, QuickCheck >= 2.14 && < 2.16
, vector >= 0.12 && < 0.14
, vector-sized >= 1.5 && < 1.7
, finite-typelits >= 0.1 && < 0.3
, random >= 1.2 && < 1.3
, filepath >= 1.4 && < 1.6
, directory >= 1.3 && < 1.4
, containers >= 0.6 && < 0.8
, stim-parser >= 0.1 && < 0.3
build-tool-depends:
hspec-discover:hspec-discover >= 2.10 && < 2.12
default-language: GHC2021
executable symplectic-chp
-- Import common warning flags.
import: warnings
-- .hs or .lhs file containing the Main module.
main-is: Main.hs
-- Modules included in this executable, other than Main.
other-modules:
CHPCircuit
CLI
Simulator
StimToCHP
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends:
, base >= 4.17 && < 4.22
, stim-parser >= 0.1 && < 0.3
, containers >= 0.6 && < 0.8
, symplectic-chp
, random >= 1.2 && < 1.3
-- Directories containing source files.
hs-source-dirs: app
-- Base language which the package is written in.
default-language: GHC2021
executable verify-large-tableau
import: warnings
main-is: VerifyLargeTableau.hs
build-depends:
, base >= 4.17 && < 4.22
, symplectic-chp
, vector >= 0.12 && < 0.14
, random >= 1.2 && < 1.3
, time >= 1.11 && < 1.14
hs-source-dirs: app
default-language: GHC2021