46
A Language for Mathematical Knowledge Management Steve Kieffer Carnegie Mellon University

A Language for Mathematical Knowledge Management

  • Upload
    falala

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

Page 1: A Language for Mathematical Knowledge Management

A Language for Mathematical Knowledge Management

Steve Kieffer

Carnegie Mellon University

Page 2: A Language for Mathematical Knowledge Management

2

What is Mathematical Knowledge?

Theorems Definitions Proofs

Page 3: A Language for Mathematical Knowledge Management

3

How do we “manage” it?

Experts Books Wikipedia?

Page 4: A Language for Mathematical Knowledge Management

4

Idea for MKM: Encyclopedia Entries, Stored in Computers

Page 5: A Language for Mathematical Knowledge Management

5

How transparent is the entry, to the computer?

Page 6: A Language for Mathematical Knowledge Management

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

Page 7: A Language for Mathematical Knowledge Management

7

My Work

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

Page 8: A Language for Mathematical Knowledge Management

8

Choice of Language

Page 9: A Language for Mathematical Knowledge Management

9

Choice of Language

Page 10: A Language for Mathematical Knowledge Management

10

Mizar

Page 11: A Language for Mathematical Knowledge Management

11

LPT

Designed by Friedman Adds nice features to language of set theory

Page 12: A Language for Mathematical Knowledge Management

12

Terms in LPT

Ordered tuples:

Page 13: A Language for Mathematical Knowledge Management

13

Terms in LPT

Function evaluation:

Page 14: A Language for Mathematical Knowledge Management

14

Terms in LPT

Infix functions:

Page 15: A Language for Mathematical Knowledge Management

15

Terms in LPT

Sets:

Page 16: A Language for Mathematical Knowledge Management

16

Terms in LPT

Descriptions:

Page 17: A Language for Mathematical Knowledge Management

17

Terms in LPT

Lambdaabstraction:

Page 18: A Language for Mathematical Knowledge Management

18

Formulas in LPT

Predication:

Page 19: A Language for Mathematical Knowledge Management

19

Formulas in LPT

Infix relations:

Page 20: A Language for Mathematical Knowledge Management

20

Formulas in LPT

Quantifiers:

Page 21: A Language for Mathematical Knowledge Management

21

R is a partial order on A

Page 22: A Language for Mathematical Knowledge Management

22

R is a partial order on A

Page 23: A Language for Mathematical Knowledge Management

23

What is parsing?

(a a) a

ET

F

a(

)

TFE

T E

aF

a

TF

Page 24: A Language for Mathematical Knowledge Management

[[[([[[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

ET

F

a(

)

TFE

T E

aF

a

TF

Page 25: A Language for Mathematical Knowledge Management

[ ][ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ]var var var var var var varrel’n ][

formula

[ ]tuple

[ ]formula

[ ]term

formula

FCN [ f ] f = { < x , y > : f ( x ) = y }

Page 26: A Language for Mathematical Knowledge Management

26

Parsing method

Earley algorithm n3 runtime parses any context free grammar

Page 27: A Language for Mathematical Knowledge Management

Simple example

E T EE T T F T T F F ( E )F a

Grammar:

Input:

( a a ) a

E

T

F T

Fa

( )E

T E

T

Fa

Fa

Page 28: A Language for Mathematical Knowledge Management

Earley algorithm

E T EE T T F T T F F ( E )F a

Grammar:

Input:

( a a ) a

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]

I2

[F a , 1][T F T, 1][T F , 1][E T E, 1][E T , 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]

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]

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]

(1)(2)(3)(4)(5)(6)

I7

[F a , 6][T F T, 6][T F , 6][T F T , 0][E T E, 0][E T , 0]

64642156432

I7

[F a , 6][T F T, 6][T F , 6][T F T , 0][E T E, 0][E T , 0]

64642156432

I7

[F a , 6][T F T, 6][T F , 6][T F T , 0][E T E, 0][E T , 0]

64642156432

I7

[F a , 6][T F T, 6][T F , 6][T F T , 0][E T E, 0][E T , 0]

64642156432

I5

[F (E) , 0][T F T, 0][T F , 0][E T E, 0][E T , 0]

64642156432

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]

64642156432

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]

6464215643264642156432

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]

64642156432

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]

64642156432

I2

[F a , 1][T F T, 1][T F , 1][E T E, 1][E T , 1][F (E ), 0]

64642156432

I2

[F a , 1][T F T, 1][T F , 1][E T E, 1][E T , 1][F (E ), 0]

Page 29: A Language for Mathematical Knowledge Management

29

My Work

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

Page 30: A Language for Mathematical Knowledge Management

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.

Page 31: A Language for Mathematical Knowledge Management

31

Comparison: LPT vs. DZFC

Page 32: A Language for Mathematical Knowledge Management

32

Comparison: LPT vs. DZFC

Page 33: A Language for Mathematical Knowledge Management

33

Comparison: LPT vs. DZFC

Page 34: A Language for Mathematical Knowledge Management

34

My Work

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

Page 35: A Language for Mathematical Knowledge Management

35

Directed Acyclic Graph (DAG) of Conceptual Dependencies

Depth: 4 Size: 5

Page 36: A Language for Mathematical Knowledge Management

36

DAG data

Max MeanDepth 32 10.77Size 110 29.56

Page 37: A Language for Mathematical Knowledge Management

DAG depths

0

5

10

15

20

25

30

35

40

0 5 10 15 20 25 30 35

Depth

Fre

qu

en

cy

DAG depths

Page 38: A Language for Mathematical Knowledge Management

38

Quantifier depth: alternating or non-alternating

Page 39: A Language for Mathematical Knowledge Management

39

Expanding formulas

Definitional axiom for PORD in DZFC:

To expand, locate the definiens for each defined conceptappearing above.

:

:

:

Then plug in.

Definiens for PORD:

Page 40: A Language for Mathematical Knowledge Management

40

Expanding formulas

The result:

Page 41: A Language for Mathematical Knowledge Management

41

Three expansion levels

1. No expansion 2. Total expansion 3. Partial – lowest foundational concepts left

unexpanded

Page 42: A Language for Mathematical Knowledge Management

42

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

Page 43: A Language for Mathematical Knowledge Management

43

Quantifier depth data

Max MeanLPT 4 0.66unexpanded DZFC 5 1.31fully expanded DZFC 1235 78.68partially expanded DZFC 552 38.54

alt. LPT 3 0.63alt. unexpanded DZFC 5 1.18alt. fully expanded DZFC 422 36.19alt.partially expanded DZFC 239 22.16

Page 44: A Language for Mathematical Knowledge Management

44

Quantifier depth data

Depth LPT alt. LPT0 178 1781 118 1202 30 353 14 84 1 0

Occurrences

(out of 341 definitions)

Page 45: A Language for Mathematical Knowledge Management

45

My Work

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

Page 46: A Language for Mathematical Knowledge Management

46

Summary

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