#CondensedDetachment example
Axiom 1: โข (๐ โ (๐ โ ๐))
Axiom 2: โข ((๐ โ (๐ โ ๐)) โ ((๐ โ ๐) โ (๐ โ ๐)))
Rule of Modus Ponens:
โข Major hypothesis: โข (๐ โ ๐)
โข Minor hypothesis: โข ๐
โข Resulting Assertion: โข ๐
โโ
D<major><minor> applies the Rule of Modus Ponens treating the two given tautologies as having metavariables living in different namespaces and returning the normalized result. We extend by using underscore as a placeholder, so D__ recovers the rule of modus ponens.
โโ
"D2_" is proof of the rule:
โข Hypothesis: โข (๐ โ (๐ โ ๐))
โข Resulting assertion: โข ((๐ โ ๐) โ (๐ โ ๐))
โโ
"D21" is a proof which unifies "1" โข (๐โฒ โ (๐โฒ โ ๐โฒ)) with the hypothesis of "D2_" giving the substitution map ๐: {๐โฒ โฆ ๐, ๐โฒ โฆ ๐, ๐ โฆ ๐} resulting in the tautology: โข ((๐ โ ๐) โ (๐ โ ๐))
(Note that unification can map variables from either side, but when faced with a variable matching a term has to match the variable to that term.)
โโ
"DD21_" is proof of the rule:
โข Hypothesis: โข (๐ โ ๐)
โข Resulting assertion: โข ((๐ โ ๐)
โโ
"DD211" is a proof which unifies "1" โข (๐โณ โ (๐โณ โ ๐โณ)) with the hypothesis of "DD21_" giving the substitution map ๐: {๐โณ โฆ ๐, ๐ โฆ (๐โณ โ ๐)} resulting in the tautology: โข (๐ โ ๐)
This has been adapted and expanded from a run of my symbolic-mgu pre-release crate. https://crates.io/crates/symbolic-mgu
cargo run -r --bin compact -- --wide D__ 1 2 D2_ D21 DD21_ DD211
