packages feed

mios-1.4.0: mios.cabal

-- Initial mios.cabal generated by cabal init.  For further documentation,
-- see http://haskell.org/cabal/users-guide/

name:                   mios
version:                1.4.0
synopsis:               A Minisat-based SAT solver in Haskell
description:

  A modern and fast SAT solver written in Haskell, based on Minisat-1.14 and 2.2.
  By using CDCL, watch literals, VSIDS, restart, blocking-literals, LBD and so on.
  The current version is only 2.0 time slower than Minisat-2.2.
  'Mios' is an abbreviation of 'Minisat-based Implementation and Optimization Study on SAT solver'.
  .

homepage:               https://github.com/shnarazk/mios
license:                GPL-3
license-file:           LICENSE
author:                 Shuji Narazaki <narazaki@nagasaki-u.ac.jp>
maintainer:             Shuji Narazaki <narazaki@nagasaki-u.ac.jp>
category:               Artificial Intelligence, Constraints
build-type:             Simple
cabal-version:          >=1.16
extra-source-files:  app/sample.hs

source-repository head
  type:                 git
  location:             https://github.com/shnarazk/mios

Flag llvm
  Description:	        Compile with llvm
  Default:	        False

Flag lib
  Description:	        Build the solver library
  Default:	        True

library
  if flag(lib)
    buildable:	        True
  else
    buildable:	        False
  default-language:	Haskell2010
  default-extensions:   Strict
  other-extensions:	    BangPatterns
                            FlexibleContexts
                            FlexibleInstances
                            FunctionalDependencies
                            MagicHash
                            MultiParamTypeClasses
                            RecordWildCards
                            ScopedTypeVariables
                            TypeFamilies
                            Trustworthy
                            TupleSections
                            Safe
                            UndecidableInstances
                            ViewPatterns
  exposed-modules:
                        SAT.Mios.Clause
                        SAT.Mios.ClauseManager
                        SAT.Mios.Vec
                        SAT.Mios.Main
                        SAT.Mios.OptionParser
                        SAT.Mios.Solver
                        SAT.Mios.Types
                        SAT.Mios.Validator
                        SAT.Mios.Util.DIMACS.MinisatReader
                        SAT.Mios.Util.DIMACS.Reader
                        SAT.Mios.Util.DIMACS.Writer
                        SAT.Mios.Util.DIMACS
                        SAT.Mios.Util.BoolExp
                        SAT.Mios
  build-depends:        base ==4.9.*, vector >=0.11, ghc-prim >=0.5, bytestring >=0.10
  if flag(llvm)
    ghc-options:	-O2 -ignore-asserts -funbox-strict-fields -fllvm -optlo-O3
  else
    ghc-options:	-O2 -ignore-asserts -funbox-strict-fields

executable mios
  main-is:              app/mios.hs
  buildable:	        True
  default-language:	Haskell2010
  default-extensions:  Strict
  build-depends:        base ==4.9.*,  vector >=0.11, ghc-prim >=0.5, bytestring >=0.10
  if flag(llvm)
    ghc-options:	-O2 -ignore-asserts -funbox-strict-fields -fllvm -optlo-O3
  else
    ghc-options:	-O2 -ignore-asserts -funbox-strict-fields
  other-modules:
                        SAT.Mios.Clause
                        SAT.Mios.ClauseManager
                        SAT.Mios.Vec
                        SAT.Mios.Main
                        SAT.Mios.OptionParser
                        SAT.Mios.Solver
                        SAT.Mios.Types
                        SAT.Mios.Validator
                        SAT.Mios