| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Algebra.Heyting.Free
Documentation
Free Heyting algebra.
Note: Eq and PartialOrd instances aren't structural.
>>>Top == (Var 'x' ==> Var 'x')True
>>>Var 'x' == Var 'y'False
You can test for taulogogies:
>>>leq Top $ (Var 'A' /\ Var 'B' ==> Var 'C') <=> (Var 'A' ==> Var 'B' ==> Var 'C')True
>>>leq Top $ (Var 'A' /\ neg (Var 'A')) <=> BottomTrue
>>>leq Top $ (Var 'A' \/ neg (Var 'A')) <=> TopFalse
Constructors
| Var a | |
| Bottom | |
| Top | |
| (Free a) :/\: (Free a) infixr 6 | |
| (Free a) :\/: (Free a) infixr 5 | |
| (Free a) :=>: (Free a) infixr 4 |
Instances
retractFree :: Heyting a => Free a -> a Source #