Sine ¡Qua ¡Non ¡for ¡ Large ¡Theory ¡Reasoning ¡ Kryštof ¡Hoder ¡ Andrei ¡Voronkov ¡
Large ¡Theory ¡Reasoning ¡ in ¡First-‑Order ¡Logic ¡ • TradiAonal ¡FO ¡problems ¡ ¡ Structure ¡of ¡a ¡First-‑Order ¡problem ¡ – Not ¡too ¡many ¡axioms ¡ – AxiomaAzaAons ¡of ¡ algebras, ¡set ¡theory ¡ Theory ¡axioms ¡ • Large ¡theory ¡problems ¡ ¡ – Many ¡axioms, ¡but ¡most ¡of ¡ AssumpAons ¡ Conjecture ¡ them ¡are ¡irrelevant ¡to ¡the ¡ conjecture ¡ • Axiom ¡selecAon ¡ – aKempts ¡to ¡remove ¡the ¡ irrelevant ¡and ¡keep ¡the ¡ important ¡
Sources ¡of ¡Large ¡Theory ¡Problems ¡ • Ontology ¡reasoning ¡ – SUMO, ¡YAGO, ¡CyC ¡ – Up ¡to ¡10m ¡axioms ¡ – Proofs ¡involve ¡few ¡axioms, ¡almost ¡no ¡equaliAes ¡ • MathemaAcal ¡libraries ¡ – Mizar ¡MathemaAcal ¡Library ¡ – Tens ¡of ¡thousands ¡axioms ¡ – More ¡complex ¡proofs, ¡equaliAes ¡
Idea: ¡Simple ¡Relevance ¡ • Based ¡on ¡mutual ¡ subclass(beverage, ¡liquid) ¡ occurrences ¡of ¡symbols ¡in ¡ subclass(beer, ¡beverage) ¡ axioms ¡ subclass(chair, ¡furniture) ¡ ¡ • Symbol ¡ s ¡is ¡0-‑relevant ¡if ¡it ¡ ? ¡subclass(beer, ¡liquid) ¡ occurs ¡in ¡the ¡goal ¡ • If ¡s ¡is ¡ d -‑relevant ¡and ¡ appears ¡in ¡A, ¡A ¡and ¡its ¡ symbols ¡are ¡( d +1)-‑ 0: ¡ beer ¡ subclass ¡ liquid ¡ relevant ¡ • Select ¡axioms ¡ d -‑relevant ¡ to ¡the ¡conjecture ¡(and ¡ assumpAons) ¡ 1: ¡ chair ¡ furniture ¡ beverage ¡ d ¡ ∈ ¡{1,…,∞} ¡
Problem: ¡Common ¡Symbols ¡ • With ¡this ¡noAon ¡of ¡ subclass(beverage, ¡liquid) ¡ subclass(beer, ¡beverage) ¡ relevance ¡almost ¡all ¡ subclass(chair, ¡furniture) ¡ ¡ axioms ¡are ¡usually ¡ ? ¡subclass(beer, ¡liquid) ¡ selected ¡ • Common ¡symbols ¡(such ¡ as ¡‘subclass’ ¡or ¡ 0: ¡ beer ¡ subclass ¡ liquid ¡ ‘subsumes’) ¡make ¡ relevant ¡otherwise ¡ unrelated ¡symbols ¡ 1: ¡ chair ¡ furniture ¡ beverage ¡
SoluAon: ¡Trigger-‑Based ¡SelecAon ¡ • We ¡had ¡ subclass(beverage, ¡liquid) ¡ subclass(beer, ¡beverage) ¡ If ¡s ¡is ¡ d -‑relevant ¡and ¡ subclass(chair, ¡furniture) ¡ appears ¡in ¡A, ¡A ¡and ¡its ¡ ¡ symbols ¡are ¡( d +1)-‑relevant ¡ ? ¡subclass(beer, ¡liquid) ¡ • Assuming ¡a ¡‘triggers’ ¡ relaAon ¡between ¡ We ¡want: ¡ symbols ¡and ¡axioms, ¡we ¡ 0: ¡ beer ¡ subclass ¡ liquid ¡ can ¡write ¡ If ¡s ¡is ¡ d -‑relevant ¡and ¡ triggers ¡A, ¡A ¡and ¡its ¡ 1: ¡ beverage ¡ symbols ¡are ¡( d +1)-‑relevant ¡ ¡
What ¡Is ¡a ¡Common ¡Symbol? ¡ • There ¡is ¡no ¡a ¡priori ¡ subclass(beverage, ¡liquid) ¡ subclass(beer, ¡beverage) ¡ informaAon ¡on ¡symbol ¡ subclass(chair, ¡furniture) ¡ commonness ¡ Occ. ¡ Symbols ¡ • We ¡approximate ¡it ¡by ¡ subclass ¡ 3 ¡ number ¡of ¡occurrences ¡ beverage ¡ 2 ¡ – more ¡common ¡symbols ¡ liquid, ¡beer, ¡ appear ¡in ¡more ¡axioms ¡ 1 ¡ chair, ¡furniture ¡
Occ. ¡ Symbols ¡ ‘Triggers’ ¡relaAon ¡ subclass ¡ 3 ¡ beverage ¡ 2 ¡ liquid, ¡beer, ¡ 1 ¡ chair, ¡furniture ¡ • Should ¡penalize ¡ subclass(beverage, ¡liquid) ¡ subclass(beer, ¡beverage) ¡ common ¡symbols ¡ subclass(chair, ¡furniture) ¡ ¡ • But ¡not ¡ignore ¡them ¡ ? ¡subclass(beer, ¡liquid) ¡ completely ¡ subclass(x, ¡y) ¡ ∧ ! subclass(y, ¡z) ¡ ¡→ ¡subclass(x, ¡z) ¡ 0: ¡ beer ¡ • Our ¡soluAon: ¡ subclass ¡ liquid ¡ Only ¡the ¡least ¡common ¡ symbols ¡trigger ¡an ¡axiom. ¡ 1: ¡ beverage ¡
Incompleteness, ¡Unstability ¡ • Small ¡difference ¡in ¡ subclass(X,Y) ¡ ∧ ¡subclass(Y,Z) ¡→ ¡subclass(X,Z) ¡ 1: ¡ subclass(petrol,liquid) ¡ ¡ number ¡of ¡occurrences ¡ Occ. ¡ Symbols ¡ ¬subclass(stone,liquid) ¡ ¡ subclass ¡ 7 ¡ subclass(beverage,liquid) ¡ can ¡lead ¡to ¡loss ¡of ¡ 2: ¡ liquid ¡ 3 ¡ subclass(beer,beverage) ¡ 1: ¡ important ¡axioms ¡ beer, ¡beverage ¡ 2 ¡ subclass(guinness,beer) ¡ petrol, ¡stone, ¡ ¡ 1 ¡ guinness ¡ ¡ ? ¡subclass(beer,liquid) ¡ 0: ¡ beer ¡ subclass ¡ liquid ¡ 1: ¡ beverage ¡
Incompleteness, ¡Unstability ¡ • Small ¡difference ¡in ¡ subclass(X,Y) ¡ ∧ ¡subclass(Y,Z) ¡→ ¡subclass(X,Z) ¡ 1: ¡ subclass(petrol,liquid) ¡ ¡ number ¡of ¡occurrences ¡ Occ. ¡ Symbols ¡ ¬subclass(stone,liquid) ¡ ¡ subclass ¡ 7 ¡ subclass(beverage,liquid) ¡ can ¡lead ¡to ¡loss ¡of ¡ ¡ liquid, ¡beer ¡ 3 ¡ subclass(beer,beverage) ¡ 1: ¡ important ¡axioms ¡ beverage ¡ 2 ¡ subclass(guinness,beer) ¡ petrol, ¡stone, ¡ subclass(pilsner,beer) ¡ 1 ¡ • Or ¡simply ¡too ¡liKle ¡ guinness, ¡pilsner ¡ ¡ ? ¡subclass(beer,liquid) ¡ axioms ¡may ¡be ¡selected ¡ 0: ¡ beer ¡ subclass ¡ liquid ¡ • We ¡need ¡a ¡possibility ¡to ¡ extend ¡the ¡‘triggers’ ¡ relaAon ¡
Tolerance ¡ t=1.5: ¡ • We ¡had ¡ subclass(X,Y) ¡ ∧ ¡subclass(Y,Z) ¡→ ¡subclass(X,Z) ¡ 1: ¡ subclass(petrol,liquid) ¡ ¡ Only ¡the ¡least ¡common ¡ Occ. ¡ Symbols ¡ ¬subclass(stone,liquid) ¡ ¡ symbols ¡trigger ¡an ¡axiom ¡ subclass ¡ 7 ¡ subclass(beverage,liquid) ¡ 2: ¡ liquid, ¡beer ¡ 3 ¡ • Having ¡tolerance ¡ subclass(beer,beverage) ¡ 1: ¡ beverage ¡ 2 ¡ subclass(guinness,beer) ¡ parameter ¡t ¡ petrol, ¡stone, ¡ subclass(pilsner,beer) ¡ 1 ¡ guinness, ¡pilsner ¡ – Only ¡symbols ¡with ¡ t ¡Ames ¡ ¡ more ¡occurrences ¡than ¡the ¡ ? ¡subclass(beer,liquid) ¡ least ¡common ¡symbol ¡ 0: ¡ beer ¡ subclass ¡ liquid ¡ trigger ¡an ¡axiom ¡ • For ¡t=∞ ¡the ¡selecAon ¡ degrades ¡to ¡the ¡simple ¡ 1: ¡ beverage ¡ relevance ¡
Experiments ¡ Two ¡parameters: ¡ Numbers ¡of ¡selected ¡axioms ¡ t ¡ Tolerance ¡ SUMO: ¡ d ¡ Depth ¡limit ¡(selects ¡ d -‑relevant ¡axioms) ¡ Problem ¡sizes ¡ CYC: ¡ Mizar: ¡
Experiments ¡ Solved ¡problems ¡ Implemented ¡in ¡Vampire ¡( ¡hKp://vprover.org ¡) ¡ ¡ vampire --mode axiom_selection --sine_selection axioms --sine_tolerance t --sine_depth d ¡
Recommend
More recommend