Extracting Higher-Order Goals from the Introduction Three - - PowerPoint PPT Presentation

extracting higher order goals from the
SMART_READER_LITE
LIVE PREVIEW

Extracting Higher-Order Goals from the Introduction Three - - PowerPoint PPT Presentation

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Extracting Higher-Order Goals from the Introduction Three Constructs Mizar Mathematical Library Simple Type Theory Idealized Mizar Chad E. Brown, Josef


slide-1
SLIDE 1

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Extracting Higher-Order Goals from the Mizar Mathematical Library

Chad E. Brown, Josef Urban

Czech Technical University in Prague

July 2016

slide-2
SLIDE 2

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Outline

Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

slide-3
SLIDE 3

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Introduction

◮ Extension of Urban’s MPTP translation of Mizar’s

MML from FO to HO

◮ Constructs fitting HO:

◮ Schemes ◮ Global Choice Operator ◮ Fraenkel Terms

◮ Provides problems for HO ATPs ◮ Evaluation of Satallax and LEO-II on some of these

problems.

slide-4
SLIDE 4

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Outline

Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

slide-5
SLIDE 5

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Schemes

∀A.∀P. (∀x, y, z.Pxy ∧ Pxz → y = z) → ∃X.∀x.x ∈ X ↔ ∃y.y ∈ A ∧ Pyx

slide-6
SLIDE 6

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Schemes

∀A.∀P. (∀x, y, z.Pxy ∧ Pxz → y = z) → ∃X.∀x.x ∈ X ↔ ∃y.y ∈ A ∧ Pyx

◮ Problem: Can’t write ∀P in FO

slide-7
SLIDE 7

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Schemes

∀A.∀P. (∀x, y, z.Pxy ∧ Pxz → y = z) → ∃X.∀x.x ∈ X ↔ ∃y.y ∈ A ∧ Pyx

◮ Problem: Can’t write ∀P in FO ◮ For proving schemes, not an issue.

slide-8
SLIDE 8

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Schemes

∀A.∀P. (∀x, y, z.Pxy ∧ Pxz → y = z) → ∃X.∀x.x ∈ X ↔ ∃y.y ∈ A ∧ Pyx

◮ Problem: Can’t write ∀P in FO ◮ For proving schemes, not an issue. ◮ The issue with using schemes.

slide-9
SLIDE 9

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Using Schemes

can be used to prove Proof:

slide-10
SLIDE 10

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Using Schemes

can be used to prove Proof:

◮ Let A and P be given.

slide-11
SLIDE 11

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Using Schemes

can be used to prove Proof:

◮ Let A and P be given. ◮ Instantiate the A and P from Replacement with

A := A P[x, y] := x = y ∧ P[x]

slide-12
SLIDE 12

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

MPTP and Schemes

◮ How does MPTP handle schemes? ◮ Solution staying in FO: Give some FO instances of the

scheme

◮ HO Solution: Simply quantify over P ◮ HO ATP must find the instance as part of the search,

e.g., λxy.x = y ∧ Px

slide-13
SLIDE 13

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

MPTP and Schemes

◮ How does MPTP handle schemes? ◮ Solution staying in FO: Give some FO instances of the

scheme

◮ HO Solution: Simply quantify over P ◮ HO ATP must find the instance as part of the search,

e.g., λxy.x = y ∧ Px

◮ Finding these instantiations is nontrivial.

slide-14
SLIDE 14

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

MPTP and Schemes

◮ How does MPTP handle schemes? ◮ Solution staying in FO: Give some FO instances of the

scheme

◮ HO Solution: Simply quantify over P ◮ HO ATP must find the instance as part of the search,

e.g., λxy.x = y ∧ Px

◮ Finding these instantiations is nontrivial. ◮ Redundancy. These also work:

λxy.x = y ∧ Py λxy.y = x ∧ Px λxy.y = x ∧ Py

slide-15
SLIDE 15

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

MPTP and Schemes

◮ How does MPTP handle schemes? ◮ Solution staying in FO: Give some FO instances of the

scheme

◮ HO Solution: Simply quantify over P ◮ HO ATP must find the instance as part of the search,

e.g., λxy.x = y ∧ Px

◮ Finding these instantiations is nontrivial. ◮ Redundancy. These also work:

λxy.x = y ∧ Py λxy.y = x ∧ Px λxy.y = x ∧ Py

◮ Many other instantiations of roughly this size don’t

work.

slide-16
SLIDE 16

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type. Examples of Mizar types:

◮ set

slide-17
SLIDE 17

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type. Examples of Mizar types:

◮ set

slide-18
SLIDE 18

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type. Examples of Mizar types:

◮ set ◮ Element of X whenever X has type set

slide-19
SLIDE 19

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type. Examples of Mizar types:

◮ set ◮ Element of X whenever X has type set

slide-20
SLIDE 20

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type.

◮ All Mizar types are nonempty.

slide-21
SLIDE 21

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type.

◮ All Mizar types are nonempty. ◮ Element of X means ∈ X if X is nonempty, and means

= ∅ if X is empty.

slide-22
SLIDE 22

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type.

◮ All Mizar types are nonempty. ◮ Element of X means ∈ X if X is nonempty, and means

= ∅ if X is empty.

◮ If X is empty the Element of X is ∅ when X is empty.

slide-23
SLIDE 23

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice

the A where A is a Mizar type.

◮ All Mizar types are nonempty. ◮ Element of X means ∈ X if X is nonempty, and means

= ∅ if X is empty.

◮ If X is empty the Element of X is ∅ when X is empty.

slide-24
SLIDE 24

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice and MPTP

◮ MPTP in FO?

slide-25
SLIDE 25

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice and MPTP

◮ MPTP in FO? ◮ Deanonymize:

◮ Suppose A is a Mizar type depending on x, y.

slide-26
SLIDE 26

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice and MPTP

◮ MPTP in FO? ◮ Deanonymize:

◮ Suppose A is a Mizar type depending on x, y. ◮ Translate the A as h(x, y) where

∀x, y.φA(h(x, y), x, y) where φA is the FO translation of A.

slide-27
SLIDE 27

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice and MPTP

◮ MPTP in FO? ◮ Deanonymize:

◮ Suppose A is a Mizar type depending on x, y. ◮ Translate the A as h(x, y) where

∀x, y.φA(h(x, y), x, y) where φA is the FO translation of A.

◮ MPTP in HO? ◮ Translate the A as ΦA (ε(λu.ΦA u x y) x y)

where ε is a choice operator and ΦA is the HO translation of A.

slide-28
SLIDE 28

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice Example

slide-29
SLIDE 29

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice Example

FO MPTP translation. Let x ˆ ∈Y be translation of x Element of Y .

◮ ∀x.F(x) = G(x) ◮ ∀x.h(x)ˆ

∈F(x)

◮ ∀x.k(x)ˆ

∈G(x) Conjecture: ∀x.h(x) = k(x)

slide-30
SLIDE 30

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice Example

FO MPTP translation. Let x ˆ ∈Y be translation of x Element of Y .

◮ ∀x.F(x) = G(x) ◮ ∀x.h(x)ˆ

∈F(x)

◮ ∀x.k(x)ˆ

∈G(x) Conjecture: ∀x.h(x) = k(x) Not actually a theorem!

slide-31
SLIDE 31

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice Example

FO MPTP translation. Let x ˆ ∈Y be translation of x Element of Y .

◮ ∀x.F(x) = G(x) ◮ ∀x.h(x)ˆ

∈F(x)

◮ ∀x.k(x)ˆ

∈G(x) Conjecture: ∀x.h(x) = k(x) Not actually a theorem! HO MPTP translation. Axioms:

◮ ∀qx.qx → q(εq) (Choice) ◮ ∀x.Fx = Gx

Conjecture: ∀x.ε(λu.uˆ ∈(Fx)) = ε(λu.uˆ ∈(Gx)) Easy theorem.

slide-32
SLIDE 32

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Terms

{t where x is A : P} where

◮ t is a Mizar term, ◮ A is a “setlike” Mizar type and ◮ P is a Mizar proposition.

slide-33
SLIDE 33

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Terms

{t where x is A : P} where

◮ t is a Mizar term, ◮ A is a “setlike” Mizar type and ◮ P is a Mizar proposition.

{t where x1 is A1, . . . , xn is An : P}

slide-34
SLIDE 34

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

slide-35
SLIDE 35

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

FO MPTP version, deanonymize:

◮ h(Y ) such that

∀z.z ∈ h(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ P(x)

slide-36
SLIDE 36

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

FO MPTP version, deanonymize:

◮ h(Y ) such that

∀z.z ∈ h(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ P(x)

◮ k(Y ) such that

∀z.z ∈ k(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ Q(x)

slide-37
SLIDE 37

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

FO MPTP version, deanonymize:

◮ h(Y ) such that

∀z.z ∈ h(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ P(x)

◮ k(Y ) such that

∀z.z ∈ k(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ Q(x)

◮ Assume ∀x.P(x) ↔ Q(x).

slide-38
SLIDE 38

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

FO MPTP version, deanonymize:

◮ h(Y ) such that

∀z.z ∈ h(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ P(x)

◮ k(Y ) such that

∀z.z ∈ k(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ Q(x)

◮ Assume ∀x.P(x) ↔ Q(x). ◮ Prove ∀Y .h(Y ) = k(Y )

slide-39
SLIDE 39

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

FO MPTP version, deanonymize:

◮ h(Y ) such that

∀z.z ∈ h(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ P(x)

◮ k(Y ) such that

∀z.z ∈ k(Y ) ↔ ∃x.x ˆ ∈Y ∧ z = {x} ∧ Q(x)

◮ Assume ∀x.P(x) ↔ Q(x). ◮ Prove ∀Y .h(Y ) = k(Y ) ◮ Set extensionality and information about ˆ

∈ is also given, which is enough to make the FO problem provable.

slide-40
SLIDE 40

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

slide-41
SLIDE 41

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

HO MPTP version, use a declared constant replSep1

◮ replSep1 : (ιo)(ιι)(ιo)ι.

slide-42
SLIDE 42

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

HO MPTP version, use a declared constant replSep1

◮ replSep1 : (ιo)(ιι)(ιo)ι. ◮ Assume ∀x.Px ↔ Qx.

slide-43
SLIDE 43

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

HO MPTP version, use a declared constant replSep1

◮ replSep1 : (ιo)(ιι)(ιo)ι. ◮ Assume ∀x.Px ↔ Qx. ◮ Conjecture:

replSep1 (λx.x ˆ ∈Y ) (λx.{x}) (λx.Px) = replSep1 (λx.x ˆ ∈Y ) (λx.{x}) (λx.Qx)

slide-44
SLIDE 44

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Example

HO MPTP version, use a declared constant replSep1

◮ replSep1 : (ιo)(ιι)(ιo)ι. ◮ Assume ∀x.Px ↔ Qx. ◮ Conjecture:

replSep1 (λx.x ˆ ∈Y ) (λx.{x}) (λx.Px) = replSep1 (λx.x ˆ ∈Y ) (λx.{x}) (λx.Qx)

◮ Easy HO theorem (using extensionality rules).

slide-45
SLIDE 45

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Outline

Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

slide-46
SLIDE 46

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Simple Type Theory

Simple types:

◮ ι - individuals (Mizar sets/objects) ◮ o - propositions ◮ αβ - functions from α to β

slide-47
SLIDE 47

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Simple Type Theory

Simple types:

◮ ι - individuals (Mizar sets/objects) ◮ o - propositions ◮ αβ - functions from α to β

Simply typed terms:

◮ Typed variables: x : α ◮ Typed constants: c : α ◮ Application: st : β where s : αβ and t : α ◮ Abstraction: λx.t : αβ where x : α and t : β ◮ Implication: s → t : o where s, t : o ◮ Quantification: ∀x.t : o where x : α and t : o

slide-48
SLIDE 48

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Simple Type Theory

Simple types:

◮ ι - individuals (Mizar sets/objects) ◮ o - propositions ◮ αβ - functions from α to β

Simply typed terms:

◮ Typed variables: x : α ◮ Typed constants: c : α ◮ Application: st : β where s : αβ and t : α ◮ Abstraction: λx.t : αβ where x : α and t : β ◮ Implication: s → t : o where s, t : o ◮ Quantification: ∀x.t : o where x : α and t : o

Proofs: Usual rules, including extensionality

slide-49
SLIDE 49

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Outline

Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

slide-50
SLIDE 50

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Variables and Constants

Inherit variables and constants from STT.

◮ x : ι object variables, c : ι object constants

slide-51
SLIDE 51

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Variables and Constants

Inherit variables and constants from STT.

◮ x : ι object variables, c : ι object constants ◮ F : ι . . . ι n

ι function variables of arity n

◮ f : ι . . . ι n

ι function constants of arity n

slide-52
SLIDE 52

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Variables and Constants

Inherit variables and constants from STT.

◮ x : ι object variables, c : ι object constants ◮ F : ι . . . ι n

ι function variables of arity n

◮ f : ι . . . ι n

ι function constants of arity n

◮ P : ι . . . ι n

  • predicate variables of arity n

◮ p : ι . . . ι n

  • predicate constants of arity n
slide-53
SLIDE 53

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Variables and Constants

Inherit variables and constants from STT.

◮ x : ι object variables, c : ι object constants ◮ F : ι . . . ι n

ι function variables of arity n

◮ f : ι . . . ι n

ι function constants of arity n

◮ P : ι . . . ι n

  • predicate variables of arity n

◮ p : ι . . . ι n

  • predicate constants of arity n

◮ Predicate constants also play the role of Mizar modes or

attributes.

slide-54
SLIDE 54

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-types, M-terms and M-propositions

Mutually recursive definitions of

◮ M-types A, B, . . . ◮ M-terms S, T, . . . ◮ M-propositions Φ, Ψ, . . .

slide-55
SLIDE 55

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-types, M-terms and M-propositions

Mutually recursive definitions of

◮ M-types A, B, . . . ◮ M-terms S, T, . . . ◮ M-propositions Φ, Ψ, . . .

M-types:

◮ set ◮ p(·, T1, . . . , Tn) where p n + 1-ary predicate constant (p

mode)

◮ q A and non q A where q is a unary predicate constant

(q attribute)

slide-56
SLIDE 56

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-types, M-terms and M-propositions

Mutually recursive definitions of

◮ M-types A, B, . . . ◮ M-terms S, T, . . . ◮ M-propositions Φ, Ψ, . . .

M-terms:

◮ object variables and object constants ◮ F(T1, . . . , Tn) ◮ f (T1, . . . , Tn)

slide-57
SLIDE 57

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-types, M-terms and M-propositions

Mutually recursive definitions of

◮ M-types A, B, . . . ◮ M-terms S, T, . . . ◮ M-propositions Φ, Ψ, . . .

M-terms:

◮ object variables and object constants ◮ F(T1, . . . , Tn) ◮ f (T1, . . . , Tn) ◮ (the A) (global choice)

slide-58
SLIDE 58

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-types, M-terms and M-propositions

Mutually recursive definitions of

◮ M-types A, B, . . . ◮ M-terms S, T, . . . ◮ M-propositions Φ, Ψ, . . .

M-terms:

◮ object variables and object constants ◮ F(T1, . . . , Tn) ◮ f (T1, . . . , Tn) ◮ (the A) (global choice) ◮ {T where x1 is A1, . . . xn is An : Φ} (Fraenkel terms)

slide-59
SLIDE 59

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-types, M-terms and M-propositions

Mutually recursive definitions of

◮ M-types A, B, . . . ◮ M-terms S, T, . . . ◮ M-propositions Φ, Ψ, . . .

M-propositions

◮ P[T1, . . . , Tn] ◮ p[T1, . . . , Tn] ◮ (S = T) and (S in T) ◮ (not Φ) ◮ (Φ & Ψ), (Φ or Ψ), (Φ implies Ψ) and (Φ iff Ψ) ◮ (for x being A holds Φ) ◮ (ex x being A st Φ)

slide-60
SLIDE 60

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-statements

A prefix Γ is a list of variable declarations:

◮ x : A ◮ F(A1, . . . , An) : B ◮ P[A1, . . . , An]

An M-statement is a prefix and an M-proposition.

slide-61
SLIDE 61

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-statements

A prefix Γ is a list of variable declarations:

◮ x : A ◮ F(A1, . . . , An) : B ◮ P[A1, . . . , An]

An M-statement is a prefix and an M-proposition. Example:

slide-62
SLIDE 62

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-statements

A prefix Γ is a list of variable declarations:

◮ x : A ◮ F(A1, . . . , An) : B ◮ P[A1, . . . , An]

An M-statement is a prefix and an M-proposition. Example:

◮ Γ is the prefix

A : set, P[set]

slide-63
SLIDE 63

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-statements

A prefix Γ is a list of variable declarations:

◮ x : A ◮ F(A1, . . . , An) : B ◮ P[A1, . . . , An]

An M-statement is a prefix and an M-proposition. Example:

◮ Γ is the prefix

A : set, P[set]

◮ Φ is the M-proposition

ex X being set st for x being set holds x in X iff x in A & P(x)

slide-64
SLIDE 64

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

M-statements

A prefix Γ is a list of variable declarations:

◮ x : A ◮ F(A1, . . . , An) : B ◮ P[A1, . . . , An]

An M-statement is a prefix and an M-proposition. Example:

◮ Γ is the prefix

A : set, P[set]

◮ Φ is the M-proposition

ex X being set st for x being set holds x in X iff x in A & P(x)

◮ The M-statement is (Γ, Φ)

slide-65
SLIDE 65

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Outline

Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

slide-66
SLIDE 66

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι ◮ M-propositions Φ translate to terms Φ of type o

slide-67
SLIDE 67

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι

(choice, Fraenkels)

◮ M-propositions Φ translate to terms Φ of type o

slide-68
SLIDE 68

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι

(choice, Fraenkels)

◮ M-propositions Φ translate to terms Φ of type o ◮ M-statements (Γ, Φ) also translate to terms (Γ, Φ) of

type o (schemes)

slide-69
SLIDE 69

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι

(choice, Fraenkels)

◮ M-propositions Φ translate to terms Φ of type o ◮ M-statements (Γ, Φ) also translate to terms (Γ, Φ) of

type o (schemes)

◮ the A = εA

slide-70
SLIDE 70

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι

(choice, Fraenkels)

◮ M-propositions Φ translate to terms Φ of type o ◮ M-statements (Γ, Φ) also translate to terms (Γ, Φ) of

type o (schemes)

◮ the A = εA ◮ {T where x is A : Φ} =

replSep1 A (λx.T) (λx.Φ)

slide-71
SLIDE 71

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι

(choice, Fraenkels)

◮ M-propositions Φ translate to terms Φ of type o ◮ M-statements (Γ, Φ) also translate to terms (Γ, Φ) of

type o (schemes)

◮ the A = εA ◮ {T where x is A : Φ} =

replSep1 A (λx.T) (λx.Φ)

◮ (·, Φ) = Φ. ◮ ((x : A, Γ), Φ) = ∀x.A x → (Γ, Φ).

slide-72
SLIDE 72

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι

(choice, Fraenkels)

◮ M-propositions Φ translate to terms Φ of type o ◮ M-statements (Γ, Φ) also translate to terms (Γ, Φ) of

type o (schemes)

◮ the A = εA ◮ {T where x is A : Φ} =

replSep1 A (λx.T) (λx.Φ)

◮ (·, Φ) = Φ. ◮ ((x : A, Γ), Φ) = ∀x.A x → (Γ, Φ). ◮ ((F(A1, . . . , An) : B, Γ), Φ) = ∀F.(∀x1.A1 x1 →

. . . → ∀xn.An xn → B (Fx1 · · · xn)) → (Γ, Φ).

slide-73
SLIDE 73

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation

◮ M-types A translate to terms A of type ιo ◮ M-terms T translate to terms T of type ι

(choice, Fraenkels)

◮ M-propositions Φ translate to terms Φ of type o ◮ M-statements (Γ, Φ) also translate to terms (Γ, Φ) of

type o (schemes)

◮ the A = εA ◮ {T where x is A : Φ} =

replSep1 A (λx.T) (λx.Φ)

◮ (·, Φ) = Φ. ◮ ((x : A, Γ), Φ) = ∀x.A x → (Γ, Φ). ◮ ((F(A1, . . . , An) : B, Γ), Φ) = ∀F.(∀x1.A1 x1 →

. . . → ∀xn.An xn → B (Fx1 · · · xn)) → (Γ, Φ).

◮ ((P[A1, . . . , An], Γ), Φ) = ∀P.(Γ, Φ).

slide-74
SLIDE 74

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation (General Fraenkel Case)

{T where x1 is A1, . . . xn is An : Φ} = replSepn A1 (λx1.A2) · · · (λx1 · · · xn−1.An) (λx1 · · · xn.T) (λx1 · · · xn.Φ)

slide-75
SLIDE 75

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation (General Fraenkel Case)

{T where x1 is A1, . . . xn is An : Φ} = replSepn A1 (λx1.A2) · · · (λx1 · · · xn−1.An) (λx1 · · · xn.T) (λx1 · · · xn.Φ)

◮ replSepn : (ιo) · · · (ι · · · ιo)(ι · · · ιι)(ι · · · ιo)

slide-76
SLIDE 76

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation (General Fraenkel Case)

{T where x1 is A1, . . . xn is An : Φ} = replSepn A1 (λx1.A2) · · · (λx1 · · · xn−1.An) (λx1 · · · xn.T) (λx1 · · · xn.Φ)

◮ replSepn : (ιo) · · · (ι · · · ιo)(ι · · · ιι)(ι · · · ιo) ◮ Axioms for replSepn:

slide-77
SLIDE 77

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation (General Fraenkel Case)

{T where x1 is A1, . . . xn is An : Φ} = replSepn A1 (λx1.A2) · · · (λx1 · · · xn−1.An) (λx1 · · · xn.T) (λx1 · · · xn.Φ)

◮ replSepn : (ιo) · · · (ι · · · ιo)(ι · · · ιι)(ι · · · ιo) ◮ Axioms for replSepn: ◮ replSepEn: If z ∈ replSepnA1 · · · AnFP, then there

exist x1, . . . , xn such that A1x1, . . ., Anx1 · · · xn, z = Fx1 · · · xn and Px1 · · · xn.

slide-78
SLIDE 78

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Translation (General Fraenkel Case)

{T where x1 is A1, . . . xn is An : Φ} = replSepn A1 (λx1.A2) · · · (λx1 · · · xn−1.An) (λx1 · · · xn.T) (λx1 · · · xn.Φ)

◮ replSepn : (ιo) · · · (ι · · · ιo)(ι · · · ιι)(ι · · · ιo) ◮ Axioms for replSepn: ◮ replSepEn: If z ∈ replSepnA1 · · · AnFP, then there

exist x1, . . . , xn such that A1x1, . . ., Anx1 · · · xn, z = Fx1 · · · xn and Px1 · · · xn.

◮ replSepIn: If A1 is “setlike”, A1x1, . . ., Anx1 · · · xn−1

is “setlike”, Anx1 · · · xn and Px1 · · · xn, then Fx1 · · · xn ∈ replSepnA1 · · · AnFP.

slide-79
SLIDE 79

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Outline

Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

slide-80
SLIDE 80

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Problems Sets

◮ Top level justifications (by)

slide-81
SLIDE 81

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Problems Sets

◮ Top level justifications (by)

◮ involving global choice: 47

slide-82
SLIDE 82

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Problems Sets

◮ Top level justifications (by)

◮ involving global choice: 47 ◮ involving Fraenkels: 245

slide-83
SLIDE 83

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Problems Sets

◮ Top level justifications (by)

◮ involving global choice: 47 ◮ involving Fraenkels: 245

◮ Scheme justifications (from): 10192

slide-84
SLIDE 84

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Problems Sets

◮ Top level justifications (by)

◮ involving global choice: 47 ◮ involving Fraenkels: 245

◮ Scheme justifications (from): 10192 ◮ Scheme Proofs: 610

slide-85
SLIDE 85

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Global Choice Justification Problems

Ran Satallax and LEO-II for 5 minutes with default settings.

◮ 47 total ◮ Satallax: 24 (51%) ◮ LEO-II: 28 (60%) ◮ Either: 30 (64%)

slide-86
SLIDE 86

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Justification Problems

Ran Satallax and LEO-II for 5 minutes with default settings.

◮ 245 total ◮ Satallax: 126 (52%) ◮ LEO-II: 88 (36%) ◮ Either: 165 (67%)

slide-87
SLIDE 87

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Justification Problems

Ran Satallax and LEO-II for 5 minutes with default settings.

◮ 245 total ◮ Satallax: 126 (52%) ◮ LEO-II: 88 (36%) ◮ Either: 165 (67%)

Idea: Use E to indicate which FO axioms it needs to do the FO version. “Prune” the HO version.

slide-88
SLIDE 88

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Fraenkel Justification Problems

Ran Satallax and LEO-II for 5 minutes with default settings.

◮ 245 total ◮ Satallax: 126 (52%) ◮ LEO-II: 88 (36%) ◮ Either: 165 (67%)

Idea: Use E to indicate which FO axioms it needs to do the FO version. “Prune” the HO version.

◮ 245 total ◮ Satallax: 159 (65%) ◮ LEO-II: 155 (63%) ◮ Either: 192 (78%)

slide-89
SLIDE 89

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Scheme Justification Problems

Ran Satallax and LEO-II for 5 minutes with default settings.

◮ 10192 total ◮ Satallax: 5608 (55%) ◮ LEO-II: 1524 (15%) ◮ Either: 6072 (60%)

slide-90
SLIDE 90

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Full Schemes

Ran Satallax and LEO-II for 5 minutes with default settings.

◮ 610 total ◮ Satallax: 31 (5%) ◮ LEO-II: 67 (11%) ◮ Either: 81 (13%)

slide-91
SLIDE 91

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Outline

Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

slide-92
SLIDE 92

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Conclusion

◮ Some Mizar constructs translate in a “higher-order”

way.

◮ The translation gives higher-order problem sets

slide-93
SLIDE 93

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Conclusion

◮ Some Mizar constructs translate in a “higher-order”

way.

◮ The translation gives higher-order problem sets ◮ ...which are challenging for HO ATPs.

slide-94
SLIDE 94

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Conclusion

◮ Some Mizar constructs translate in a “higher-order”

way.

◮ The translation gives higher-order problem sets ◮ ...which are challenging for HO ATPs. ◮ Future Work: ◮ Should theorem provers always prove “Mizar-obvious”

problems?

slide-95
SLIDE 95

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Conclusion

◮ Some Mizar constructs translate in a “higher-order”

way.

◮ The translation gives higher-order problem sets ◮ ...which are challenging for HO ATPs. ◮ Future Work: ◮ Should theorem provers always prove “Mizar-obvious”

problems?

◮ Should Mizar’s type system be preserved by the

translation and used by theorem provers?

slide-96
SLIDE 96

Extracting Higher-Order Goals from the Mizar Mathematical Library Brown, Urban Introduction Three Constructs Simple Type Theory Idealized Mizar Translation Results Conclusion

Conclusion

◮ Some Mizar constructs translate in a “higher-order”

way.

◮ The translation gives higher-order problem sets ◮ ...which are challenging for HO ATPs. ◮ Future Work: ◮ Should theorem provers always prove “Mizar-obvious”

problems?

◮ Should Mizar’s type system be preserved by the

translation and used by theorem provers?

◮ Translating proofs back to Mizar