460 likes | 563 Views
A Language for Mathematical Knowledge Management. Steve Kieffer Carnegie Mellon University. What is Mathematical Knowledge?. Theorems Definitions Proofs. How do we “manage” it?. Experts Books Wikipedia?. Idea for MKM: Encyclopedia Entries, Stored in Computers.
E N D
A Language for Mathematical Knowledge Management Steve Kieffer Carnegie Mellon University
What is Mathematical Knowledge? • Theorems • Definitions • Proofs
How do we “manage” it? • Experts • Books • Wikipedia?
What do we want to do with mathematical knowledge? • Learn it • Add to it • Study its history • Formally verify it • Study its logical structure • ...
My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration
LPT • Designed by Friedman • Adds nice features to language of set theory
Terms in LPT Ordered tuples:
Terms in LPT Function evaluation:
Terms in LPT Infix functions:
Terms in LPT Sets:
Terms in LPT Descriptions:
Terms in LPT Lambda abstraction:
Formulas in LPT Predication:
Formulas in LPT Infix relations:
Formulas in LPT Quantifiers:
E T T F ( ) F E a T E T F a F a What is parsing? (aa) a
E T T F ( ) F E a T E T F a F a [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E [[[([[[a]F]T[[[a]F]T]E]E)]F[[a]F]T]T]E
[ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] rel’n var var var var var var var formula tuple formula term formula FCN [ f ] f = { < x , y > : f ( x ) = y }
Parsing method • Earley algorithm • n3 runtime • parses any context free grammar
T T F ( ) F E a T E T F a F a Simple example E Grammar: E T E E T T F T T F F ( E ) F a Input: ( a a ) a
I2 [F a , 1] [T F T, 1] [T F , 1] [E T E, 1] [E T , 1] [F (E ), 0] I2 [F a , 1] [T F T, 1] [T F , 1] [E T E, 1] [E T , 1] [F (E ), 0] I4 [F a , 3] [T F T, 3] [T F , 3] [E T E, 3] [E T , 3] [E T E , 1] [F (E ), 0] I4 [F a , 3] [T F T, 3] [T F , 3] [E T E, 3] [E T , 3] [E T E , 1] [F (E ), 0] I4 [F a , 3] [T F T, 3] [T F , 3] [E T E, 3] [E T , 3] [E T E , 1] [F (E ), 0] I4 [F a , 3] [T F T, 3] [T F , 3] [E T E, 3] [E T , 3] [E T E , 1] [F (E ), 0] I5 [F (E) , 0] [T F T, 0] [T F , 0] [E T E, 0] [E T , 0] I7 [F a , 6] [T F T, 6] [T F , 6] [T F T , 0] [E T E, 0] [E T , 0] I7 [F a , 6] [T F T, 6] [T F , 6] [T F T , 0] [E T E, 0] [E T , 0] I7 [F a , 6] [T F T, 6] [T F , 6] [T F T , 0] [E T E, 0] [E T , 0] 64642156432 64642156432 64642156432 64642156432 64642156432 64642156432 64642156432 64642156432 64642156432 64642156432 Earley algorithm I2 [F a , 1] [T F T, 1] [T F , 1] [E T E, 1] [E T , 1] [F (E ), 0] I0 [E T E, 0] [E T, 0] [T F T, 0] [T F, 0] [F (E), 0] [F a, 0] I1 [F ( E), 0] [E T E, 1] [E T, 1] [T F T, 1] [T F, 1] [F (E), 1] [F a, 1] Grammar: (1) (2) (3) (4) (5) (6) E T E E T T F T T F F ( E ) F a I4 [F a , 3] [T F T, 3] [T F , 3] [E T E, 3] [E T , 3] [E T E , 1] [F (E ), 0] I3 [E T E, 1] [E T E, 3] [E T, 3] [T F T, 3] [T F, 3] [F (E), 3] [F a, 3] I5 [F (E) , 0] [T F T, 0] [T F , 0] [E T E, 0] [E T , 0] Input: I6 [T F T, 0] [T F T, 6] [T F, 6] [F (E), 6] [F a, 6] I7 [F a , 6] [T F T, 6] [T F , 6] [T F T , 0] [E T E, 0] [E T , 0] I7 [F a , 6] [T F T, 6] [T F , 6] [T F T , 0] [E T E, 0] [E T , 0] ( a a ) a 64642156432
My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration
Translation • LPT as language for proof system? • Set up translation to make database useable. • Database has set-theoretic foundational definitions (e.g. von Neumann ordinals). • Translate into DZFC (“Definitional ZFC”), a conservative extension of ZFC.
My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration
Directed Acyclic Graph (DAG) of Conceptual Dependencies Depth: 4 Size: 5
Definitional axiom for PORD in DZFC: Definiens for PORD: : : : Expanding formulas To expand, locate the definiens for each defined concept appearing above. Then plug in.
Expanding formulas The result:
Three expansion levels • 1. No expansion • 2. Total expansion • 3. Partial – lowest foundational concepts left unexpanded
Eight data points • LPT • unexpanded DZFC • fully expanded DZFC • partially expanded DZFC • alt. LPT • alt. unexpanded DZFC • alt. fully expanded DZFC • alt. partially expanded DZFC
Quantifier depth data (out of 341 definitions)
My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration
Summary • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration