things that are in here: ## general things ### [Logic.Parse](Parse.hs) - generic sequence parser ### [Logic.Graph](Graph.hs) - generic breadth-first search - verify graph paths reach the goal and have all extant edges ## statement things ### [Logic.Statement.Parse](Statement/Serialize.hs) - parse string -> statement - serialize a statement -> plaintext, LaTeX ### [Logic.Language.Impl.L](Language/Impl/L.hs) - serialize a statement -> L (the formal language) - parse L (the formal language) string -> statement ## semantic statement things ### [Logic.Statement.Eval](Statement/Eval.hs) - assign truth values and evaluate statements - determine tautology, contradiction, or contingent ### [Logic.Statement.Serialize](Statement/Serialize.hs) - generate a LaTeX truth table from a statement ## syntactic things ### [Logic.Statements.Laws](Statements/Laws.hs) - match/replace patterns in statements (e.g. logical laws) - verify logical-law equivalence of statements - find logical-law equivalence of statements with breadth-first search (slow) ### [Logic.Language](Language.hs) - implement formal languages (symbols, axioms schemas, and inference rules) with a clunky api, see also ### [Logic.Language.Derivation](Language/Derivation.hs) - verify derivations in formal languages ### formal languages - [the MIU system](Language/Impl/MIU.hs) (from "Gödel, Escher, Bach") - [L](Language/Impl/L.hs)