Implementation of a theorem prover for propositional logic using G4ip in Haskell.
- G4ip/Proposition.hs -- Definition of propositions and some syntactic sugar
- G4ip/Decider.hs -- The actual theorem prover (decider?)
- G4ip/Tester.hs -- For defining and running tests
- G4ip/TestMain.hs -- Actually runs the default test suite
decide propto see if
You can use
() with their usual meanings to form propositions. To form an atom, either use
Atom "name" or use one of the predefined atoms:
f. Here is an example:
decide $ (neg b ==> neg a) ==> (a ==> b) \/ (a \/ a ==> a)
True as expected (
$ if for associativity, you can use parenthesis if you want).
Email me at email@example.com for any questions.