definition:
|
isTaut :: Boolean -> Bool
isTaut b = case b of
(Or ls) -> isTaut' ls
_ -> False
where
isTaut' [] = False
isTaut' (x:xs) = containsInverted x xs || isTaut' xs
containsInverted x xs = case x of
(Var i) -> nv i `elem` xs
(Not (Var i)) -> va i `elem` xs
_ -> False
|
demand:
|
argument 1
|
deterministic:
|
deterministic operation
|
failfree:
|
_
|
indeterministic:
|
referentially transparent operation
|
infix:
|
no fixity defined
|
iotype:
|
{({Or}) |-> _ || ({Var}) |-> _ || ({Not}) |-> _ || ({And}) |-> _}
|
name:
|
isTaut
|
precedence:
|
no precedence defined
|
result-values:
|
_
|
signature:
|
Dimacs.Types.Boolean -> Prelude.Bool
|
solution-complete:
|
operation might suspend on free variables
|
terminating:
|
possibly non-terminating
|
totally-defined:
|
reducible on all ground data terms
|