1 / 46

A Language for Mathematical Knowledge Management

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.

falala
Télécharger la présentation

A Language for Mathematical Knowledge Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Language for Mathematical Knowledge Management Steve Kieffer Carnegie Mellon University

  2. What is Mathematical Knowledge? • Theorems • Definitions • Proofs

  3. How do we “manage” it? • Experts • Books • Wikipedia?

  4. Idea for MKM: Encyclopedia Entries, Stored in Computers

  5. How transparent is the entry, to the computer?

  6. What do we want to do with mathematical knowledge? • Learn it • Add to it • Study its history • Formally verify it • Study its logical structure • ...

  7. My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration

  8. Choice of Language

  9. Choice of Language

  10. Mizar

  11. LPT • Designed by Friedman • Adds nice features to language of set theory

  12. Terms in LPT Ordered tuples:

  13. Terms in LPT Function evaluation:

  14. Terms in LPT Infix functions:

  15. Terms in LPT Sets:

  16. Terms in LPT Descriptions:

  17. Terms in LPT Lambda abstraction:

  18. Formulas in LPT Predication:

  19. Formulas in LPT Infix relations:

  20. Formulas in LPT Quantifiers:

  21. R is a partial order on A

  22. R is a partial order on A

  23. E T T F  ( ) F E a T E  T F a F a What is parsing? (aa)  a

  24. 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

  25. [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] rel’n var var var var var var var formula tuple formula term formula FCN [ f ]  f = { < x , y > : f ( x ) = y }

  26. Parsing method • Earley algorithm • n3 runtime • parses any context free grammar

  27. 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

  28. 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

  29. My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration

  30. 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.

  31. Comparison: LPT vs. DZFC

  32. Comparison: LPT vs. DZFC

  33. Comparison: LPT vs. DZFC

  34. My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration

  35. Directed Acyclic Graph (DAG) of Conceptual Dependencies Depth: 4 Size: 5

  36. DAG data

  37. Quantifier depth: alternating or non-alternating

  38. 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.

  39. Expanding formulas The result:

  40. Three expansion levels • 1. No expansion • 2. Total expansion • 3. Partial – lowest foundational concepts left unexpanded

  41. 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

  42. Quantifier depth data

  43. Quantifier depth data (out of 341 definitions)

  44. My Work • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration

  45. Summary • 1. Parser • 2. Database of definitions • 3. Translator • 4. Statistics on logical structure • 5. GUI for concept exploration

More Related