toysolver-0.6.0: Assorted decision procedures for SAT, SMT, Max-SAT, PB, MIP, etc

Copyright(c) Masahiro Sakai 2011-2015
LicenseBSD-style
Maintainermasahiro.sakai@gmail.com
Stabilityprovisional
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

ToySolver.Data.FOL.Formula

Contents

Description

Formula of first order logic.

Synopsis

Overloaded operations for formula.

Concrete formula

data Formula a Source #

formulas of first order logic

Constructors

T 
F 
Atom a 
And (Formula a) (Formula a) 
Or (Formula a) (Formula a) 
Not (Formula a) 
Imply (Formula a) (Formula a) 
Equiv (Formula a) (Formula a) 
Forall Var (Formula a) 
Exists Var (Formula a) 
Instances
Eq a => Eq (Formula a) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Methods

(==) :: Formula a -> Formula a -> Bool #

(/=) :: Formula a -> Formula a -> Bool #

Ord a => Ord (Formula a) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Methods

compare :: Formula a -> Formula a -> Ordering #

(<) :: Formula a -> Formula a -> Bool #

(<=) :: Formula a -> Formula a -> Bool #

(>) :: Formula a -> Formula a -> Bool #

(>=) :: Formula a -> Formula a -> Bool #

max :: Formula a -> Formula a -> Formula a #

min :: Formula a -> Formula a -> Formula a #

Show a => Show (Formula a) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Methods

showsPrec :: Int -> Formula a -> ShowS #

show :: Formula a -> String #

showList :: [Formula a] -> ShowS #

Boolean (Formula c) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Methods

(.=>.) :: Formula c -> Formula c -> Formula c Source #

(.<=>.) :: Formula c -> Formula c -> Formula c Source #

Complement (Formula a) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Methods

notB :: Formula a -> Formula a Source #

MonotoneBoolean (Formula c) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Variables a => Variables (Formula a) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Methods

vars :: Formula a -> VarSet Source #

IfThenElse (Formula c) (Formula c) Source # 
Instance details

Defined in ToySolver.Data.FOL.Formula

Methods

ite :: Formula c -> Formula c -> Formula c -> Formula c Source #

IsOrdRel (Expr c) (Formula (Atom c)) Source # 
Instance details

Defined in ToySolver.Data.FOL.Arith

Methods

(.<.) :: Expr c -> Expr c -> Formula (Atom c) Source #

(.<=.) :: Expr c -> Expr c -> Formula (Atom c) Source #

(.>.) :: Expr c -> Expr c -> Formula (Atom c) Source #

(.>=.) :: Expr c -> Expr c -> Formula (Atom c) Source #

ordRel :: RelOp -> Expr c -> Expr c -> Formula (Atom c) Source #

IsEqRel (Expr c) (Formula (Atom c)) Source # 
Instance details

Defined in ToySolver.Data.FOL.Arith

Methods

(.==.) :: Expr c -> Expr c -> Formula (Atom c) Source #

(./=.) :: Expr c -> Expr c -> Formula (Atom c) Source #

pushNot :: Complement a => Formula a -> Formula a Source #

convert a formula into negation normal form