AbsorptionDeclaration (python class)
See also
This section presents the AbsorptionDeclaration python class.
This class models the declaration of the absorption inference-rule in the target universe-of-discourse.
Punctilious users do not need to instanciate objects from this class. In effect, the UniverseOfDiscourse class exposes the absorption property, and instanciation is automatic when the property is accessed for the first time.
- class punctilious.AbsorptionDeclaration(u, echo=None)
This python class models the declaration of the absorption inference-rule in a universe-of-discourse .
TODO: AbsorptionDeclaration: Add a data validation step to assure that terms p and q are propositional.
- class Premises(p_implies_q)
- p_implies_q: Union[punctilious.core.Formula, punctilious.core.FormulaStatement, punctilious.core.CompoundFormula, tuple, list]
Alias for field number 0
- construct_formula(p_implies_q)
This python method verify the syntactic correctness of the premises, but does not verify the validity of the premises, it then applies the inference-rule algorithm, and returns a formula.
Note
Note the critical distinction between the
construct_formulaand theinfer_formula_statementmethods. The former only verifies the syntactic correctness but does not verify the validity of the premises, it then applies the inference-rule algorithm, and produces a formula that may be invalid . The later verifies the validity of the premises, applies the inference-rule algorithm, and produces a formula-statement that is valid by definition.Taking the modus-ponens inference-rule as an example, the
construct_formulamethod requires two premise arguments:p_implies_qandp. One may pass a formula as thep_implies_qargument that is not valid in the theory-derivation under consideration, but that is syntactically correct. On the other hand, theinfer_formula_statementmethod requires that both premise arguments be valid.This distinction makes it possible to use the algorithms of inference-rules in “what if” scenarii, i.e. building invalid formulae. And at the same time, it assures that all formula_statements are valid.
- Return type
CompoundFormula