Safe Haskell | Safe-Inferred |
---|
FirstOrderTheory.Syntax
- data Literal
- data Atom
- data Term
- data NNFFormula
- nnfLit :: Literal -> NNFFormula
- nnfCon :: NNFFormula -> NNFFormula -> NNFFormula
- nnfDis :: NNFFormula -> NNFFormula -> NNFFormula
- toPropositionalCNF :: NNFFormula -> CNF Literal
- negateLit :: Literal -> Literal
- atomArgs :: Atom -> [Term]
- predicateName :: Atom -> Name
- isFunctionWithName :: Name -> Term -> Bool
- isNeg :: Literal -> Bool
- getAtom :: Literal -> Atom
- varName :: Term -> Name
- intVal :: Term -> Int
- funcArgs :: Term -> [Term]
- lit :: Atom -> Literal
- nLit :: Atom -> Literal
- atom :: Name -> [Term] -> Atom
- func :: Name -> [Term] -> Term
- var :: Name -> Term
- intConst :: Int -> Term
Documentation
nnfLit :: Literal -> NNFFormula
Returns a NNF Formula consisting of only the input literal
nnfCon :: NNFFormula -> NNFFormula -> NNFFormula
Returns the conjunction of two NNF formulas
nnfDis :: NNFFormula -> NNFFormula -> NNFFormula
Return the disjunction of two NNF formulas
toPropositionalCNF :: NNFFormula -> CNF Literal
Convert NNFFormula to propositional formula in conjunctive normal form
predicateName :: Atom -> Name
Return the name of the predicate of the input atom
isFunctionWithName :: Name -> Term -> Bool
Returns True if the input term is a function with the give name, and false otherwise
Returns false if the literal is an atomic formula and true if the literal is the negation of an atomic formula
Return the name of the input variable, throws error if input term is not a variable
Returns the integer value of an Integer constant or an error if the input is not an integer
Returns the input function's argument list, throws error if input term is not a function