packages feed

obdd-0.6.0: obdd.cabal

Name:                obdd
Version:             0.6.0
Cabal-Version:       >= 1.8
Build-type: Simple
Synopsis:            Ordered Reduced Binary Decision Diagrams
Description:
  Construct, combine and query OBDDs;
  an efficient representation for formulas in propositional logic.
  .
  This is mostly educational.
  The BDDs do not share nodes and this might introduce inefficiencies.
  .
  An important (for me, in teaching) feature is
  that I can immediately draw the BDD to an X11 window (via graphviz).
  For example, to show the effect of different variable orderings,
  try this in ghci:
  .
  > import qualified Prelude as P
  > import OBDD
  > let f [] = false; f (x:y:zs) = x && y || f zs
  > display P.$ f P.$ P.map variable [1,2,3,4,5,6]
  > display P.$ f P.$ P.map variable [1,4,2,5,3,6]

  If you want better performance,
  use <http://vlsi.colorado.edu/%7Efabio/CUDD/ CUDD>
  <https://hackage.haskell.org/package/cudd Haskell bindings>,
  see <https://gitlab.imn.htwk-leipzig.de/waldmann/min-comp-sort this example>.

category:	     Logic
License:             GPL
License-file:        LICENSE
Author:              Johannes Waldmann
Maintainer:          Johannes Waldmann
Homepage:	     https://github.com/jwaldmann/haskell-obdd

Source-Repository head
    Type: git
    Location: git://github.com/jwaldmann/haskell-obdd.git

Library
    Build-Depends:       base==4.*, random, mtl, containers>=0.5, array, process
    Hs-Source-Dirs:	     src
    Exposed-Modules:     OBDD OBDD.Data OBDD.Make OBDD.Operation OBDD.Property, OBDD.Linopt
    Other-Modules:	     OBDD.IntIntMap, OBDD.VarIntIntMap
    ghc-options: -funbox-strict-fields

test-suite obdd-placement
    Hs-Source-Dirs : examples
    Type: exitcode-stdio-1.0
    Main-Is: Placement.hs
    Build-Depends: base, containers, obdd

test-suite obdd-queens
    Hs-Source-Dirs : examples
    Type: exitcode-stdio-1.0
    Main-Is: Queens.hs
    ghc-options: -threaded -rtsopts
    Build-Depends: base, containers, obdd

test-suite obdd-queens2
    Hs-Source-Dirs : examples
    Type: exitcode-stdio-1.0
    Main-Is: Queens2.hs
    Build-Depends: base, containers, obdd

test-suite obdd-weight
    Hs-Source-Dirs : examples
    Type: exitcode-stdio-1.0
    Main-Is: Weight.hs
    Build-Depends: base, containers, obdd
    
test-suite obdd-sort
    Hs-Source-Dirs : examples
    Type: exitcode-stdio-1.0
    Main-Is: Sort.hs
    Build-Depends: base, containers, obdd
    Ghc-Options: -rtsopts    

test-suite obdd-mm0916
    Hs-Source-Dirs : examples
    Type: exitcode-stdio-1.0
    Main-Is: MM0916.hs
    Build-Depends: base, containers, obdd, array
    Ghc-Options: -rtsopts