toysolver: Assorted decision procedures

[ algorithms, bsd3, constraints, formal-methods, library, logic, optimisation, optimization, program, smt, theorem-provers ] [ Propose Tags ]

Toy-level implementation of some decision procedures


[Skip to Readme]

Modules

[Last Documentation]

  • Algorithm
    • Algorithm.BoundsInference
    • Algorithm.CAD
    • Algorithm.CongruenceClosure
    • Algorithm.ContiTraverso
    • Algorithm.Cooper
    • Algorithm.FOLModelFinder
    • Algorithm.FourierMotzkin
    • Algorithm.LPSolver
    • Algorithm.LPSolverHL
    • Algorithm.LPUtil
    • Algorithm.MIPSolver2
    • Algorithm.MIPSolverHL
    • Algorithm.OmegaTest
    • Algorithm.Simplex
    • Algorithm.Simplex2
  • Converter
    • Converter.CNF2LP
    • Converter.LP2SMT
    • Converter.MaxSAT2LP
    • Converter.ObjType
    • Converter.PB2LP
  • Data
    • Data.AlgebraicNumber
      • Data.AlgebraicNumber.Root
    • Data.ArithRel
    • Data.Delta
    • Data.Expr
    • Data.Formula
    • Data.Interval
    • Data.LA
    • Data.LBool
    • Data.Lattice
    • Data.Linear
    • Data.Polynomial
      • Data.Polynomial.FactorZ
      • Data.Polynomial.GBase
      • Data.Polynomial.Lagrange
      • Data.Polynomial.Sturm
  • SAT
    • SAT.CAMUS
    • SAT.Integer
    • SAT.MUS
    • SAT.PBO
    • SAT.Printer
    • SAT.TheorySolver
    • SAT.TseitinEncoder
    • SAT.Types
  • Text
    • Text.GCNF
    • Text.GurobiSol
    • Text.LPFile
    • Text.MPSFile
    • Text.MaxSAT
    • Text.PBFile
    • Text.SDPFile
  • Util
  • Version

Flags

Automatic Flags
NameDescriptionDefault
forcechar8

set default encoding to char8 (not to use iconv)

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.0.2, 0.0.3, 0.0.4, 0.0.4.1, 0.0.5, 0.0.6, 0.1.0, 0.2.0, 0.3.0, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.8.1
Dependencies array, base (>=4.4 && <4.6), bytestring, containers (>=0.4.2), deepseq, filepath, heaps, logic-TPTP, mtl, old-locale, OptDir, parse-dimacs, parsec, primes, queue, random, stm (>=2.3), time, toysolver, unbounded-delays [details]
License BSD-3-Clause
Author Masahiro Sakai (masahiro.sakai@gmail.com)
Maintainer masahiro.sakai@gmail.com
Revised Revision 1 made by sjakobi at 2021-11-18T01:49:43Z
Category Algorithms
Bug tracker https://github.com/msakai/toysolver/issues
Source repo head: git clone git://github.com/msakai/toysolver.git
Uploaded by MasahiroSakai at 2013-01-08T16:14:12Z
Distributions
Reverse Dependencies 4 direct, 0 indirect [details]
Executables lpconvert, toyfmf, toysat, toysolver
Downloads 15246 total (60 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-22 [all 7 reports]

Readme for toysolver-0.0.3

[back to package description]

toysolver

Installation

  • unpack
  • cd toysolver
  • cabal install

Usage

This package includes several commands.

toysolver

Arithmetic solver for the following problems:

  • Mixed Integer Liner Programming (MILP or MIP)
  • Real Closed Field
  • LA(Q), LA(Z) (NOT IMPLEMENTED YET)

Usage: toysolver [OPTION...] file.lp

-h  --help           show help
-v  --version        show version number
    --solver=SOLVER  mip (default), omega-test, cooper, cad, old-mip, ct

toysat

SAT-based solver for the following problems:

  • SAT
    • Minimally Unsatisfiable Subset (MUS)
  • PB
    • Pseudo Boolean Satisfaction (PBS)
    • Pseudo Boolean Optimization (PBO)
    • Weighted Boolean Optimization (WBO)
  • Max-SAT
  • Integer Programming (all variables must be bounded)

Usage:

toysat [file.cnf||-]
toysat --mus [file.gcnf|file.cnf|-]
toysat --pb [file.opb|-]
toysat --wbo [file.wbo|-]
toysat --maxsat [file.cnf|file.wcnf|-]
toysat --lp [file.lp|file.mps|-]

PB'12 competition result:

  • toysat placed 2nd in PARTIAL-BIGINT-LIN and SOFT-BIGINT-LIN categories
  • toysat placed 4th in PARTIAL-SMALLINT-LIN and SOFT-SMALLINT-LIN categories
  • toysat placed 8th in OPT-BIGINT-LIN category

toyfmf

SAT-based finite model finder for first order logic (FOL).

Usage:

toyfmf file.tptp size

lpconvert

Converter between LP/MIP/SAT-related formats

Usage:

lpconvert -o <outputile> <inputfile>

Supported formats:

  • Input formats: lp, mps, cnf, wcnf, opb, wbo
  • Output formats: lp, smt2, ys

TODO

  • Local search
  • Suvery propagation