úÎ#Ç"      GIn order to interpret an expression, a mapping from variables to truth B values needs to be provided. Truth values are compositional; that' s to say, J the value of a composite expression (any expression which is not atomic) N depends on the truth values of its component parts. For example, the Haskell $ expression below would evaluate to False.  interpret 1 (Conjunction (Variable "A") (Variable "B")) , (fromList [("A", True), ("B", False)]) BGenerates the possible assignments of variables in an expression. 7Lists the names of variables present in an expression. JDetermines whether two expressions are extensionally equivalent (that is, 2 have the same values under all interpretations). 2Determines whether an expression is tautological. 3Determines whether an expression is contradictory. JDetermines whether an expression is contingent (that is, true in at least ? one interpretation and false in at least one interpretation). JLists the values of an expression under all interpretations (that is, all & assignments of values to variables). 8Represents expressions using only ASCII characters (the  function J pretty-prints expressions using logical symbols only present in extended  character sets).   The ; function accepts the name of a source, and a string to be I parsed, and attempts to parse the string as a logical expression of the  following forms, where Æ and È are metalinguistic variables $ standing for any valid expression.  Variables: "P", "Q", "R"! etc.; basically anything in the  character class [A-Z]  Negation: "~Æ"  Conjunction: "(Æ & È)"  Disjunction: "(Æ | È)"  Conditional: "(Æ -> È)"  Biconditional: "(Æ <-> È)" The ; function produces a truth table for the given expression. The  is a configurable version of  which allows a K printer function to be selected, so for example one can print ASCII truth  tables by passing  to  instead of .           !"#$%&'hatt-0.2Data.Logic.PropositionalData.Logic.Propositional.CoreData.Logic.Propositional.ParserData.Logic.Propositional.TablesbaseGHC.ShowshowMappingExpr Biconditional Conditional Disjunction ConjunctionNegationVariable interpret assignments variables equivalent isTautologyisContradiction isContingent showAscii parseExpr truthTable truthTablePvaluesshowBinaryConnectiveshowBCshowBCA statementexprvariablenegationbinaryPbinaryshowAssignmentshowBool