460 likes | 567 Vues
This work explores the management of mathematical knowledge, encompassing essential components such as theorems, definitions, and proofs. It discusses methods for learning, adding to, and formally verifying mathematical knowledge through tools like parsers and databases. The research aims to enhance our understanding and accessibility of mathematical concepts via the LPT programming language and innovative graphical user interfaces. Key features include parsing algorithms and statistical analysis of logical structures, ultimately contributing to clearer mathematical communication.
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