The Naproche System Daniel K uhlwein University of Nijmegen - - PowerPoint PPT Presentation

the naproche system
SMART_READER_LITE
LIVE PREVIEW

The Naproche System Daniel K uhlwein University of Nijmegen - - PowerPoint PPT Presentation

Intro CNL PRS ATPs Future Work The Naproche System Daniel K uhlwein University of Nijmegen daniel.kuehlwein@gmail.com http://www.naproche.net 25th Mai 2011 The Naproche System 1 / 27 Intro CNL PRS ATPs Future Work Outline


slide-1
SLIDE 1

Intro CNL PRS ATPs Future Work

The Naproche System

Daniel K¨ uhlwein

University of Nijmegen daniel.kuehlwein@gmail.com http://www.naproche.net

25th Mai 2011

1 / 27 The Naproche System

slide-2
SLIDE 2

Intro CNL PRS ATPs Future Work

Outline

1

Introduction

2

The Naproche CNL

3

Proof Representation Structures

4

Checking Naproche Texts

5

Future Work

2 / 27 The Naproche System

slide-3
SLIDE 3

Intro CNL PRS ATPs Future Work

The Naproche Project

The Naproche project (Natural language Proof Checking) is a joint project of the University of Bonn and the University of Duisburg-Essen. They study the semi-formal language of mathematics (SFLM) as used in journals and textbooks from the perspectives of linguistics and mathematics. A central goal of Naproche is to develop a controlled natural language (CNL) for mathematical texts and implement a system, the Naproche system, which can check texts written in this CNL for logical correctness using methods from computational linguistics and automatic theorem proving.

3 / 27 The Naproche System

slide-4
SLIDE 4

Intro CNL PRS ATPs Future Work

The Naproche CNL and the Naproche system

The Naproche CNL is a controlled natural language for mathematical texts, i.e. a controlled subset of SFLM. The Naproche system translates Naproche CNL texts first into Proof Representation Structures (PRSs), an adapted version of Discourse Representation Structures. PRSs are further translated into lists of first-order formulas which are used for checking the logical correctness of a Naproche text using automated theorem provers (ATPs).

4 / 27 The Naproche System

slide-5
SLIDE 5

Intro CNL PRS ATPs Future Work

Overview of the (old) Naproche system

5 / 27 The Naproche System

slide-6
SLIDE 6

Intro CNL PRS ATPs Future Work

Outline

1

Introduction

2

The Naproche CNL

3

Proof Representation Structures

4

Checking Naproche Texts

5

Future Work

6 / 27 The Naproche System

slide-7
SLIDE 7

Intro CNL PRS ATPs Future Work

An Example

Example (Euclid’s Elements) Theorem 2. Let b and c be distinct points. Assume a is a point such that a = b and a = c. Then there is a point v such that d(b, c) = d(a, v). Proof. By Theorem 1 there is a point d, such that d(d, a) = d(d, b) = d(a, b). Let M be the line such that b and d are on M. Let α be the circle such that b is the center of α, and c is on α. There is a point u such that u is on α, and u is on M and b is between d and u. Let N be the line L such that d and a are

  • n L. Let β be the circle δ such that d is the center of δ, and u is
  • n δ. There is a point v such that v is on β, and v is on N and a

is between v and d. Then d(b, c) = d(b, u). Hence, d(d, u) = d(d, v). By Lemma A d(b, u) = d(a, v). Then d(b, c) = d(a, v). qed.

7 / 27 The Naproche System

slide-8
SLIDE 8

Intro CNL PRS ATPs Future Work

Features

Input in L

AT

EX. Axioms, theorems, definitions, lemmas, assumptions. Nouns, adjectives, verbs, natural language quantification and negation. Subclauses with such that. Natural language connectors like and, or, i.e., if and iff. Sentences in a proof can start with words like then, hence, therefore etc. Decent formula parser (e.g. d(d, a) = d(d, b) = d(a, b)). Plurals and definite descriptions. Basic induction.

8 / 27 The Naproche System

slide-9
SLIDE 9

Intro CNL PRS ATPs Future Work

Collective vs. distributive readings of plurals

“a and b are foo” could mean either foo(a) ∧ foo(b) or foo(a, b). Usually, words have a preferred reading which is incorporated in the dictionary. The Naproche CNL can handle both collective and distributive readings of plurals:

Example

Let b and c be distinct points. The example is understood as point(b) ∧ point(c) ∧ distinct(b, c).

9 / 27 The Naproche System

slide-10
SLIDE 10

Intro CNL PRS ATPs Future Work

Definite descriptions

A definite descriptions is a definite noun phrase referring to a single object by a restricting property whose extension contains exactly one object. abcdef “Let α be the circle such that b is the center of α” The presupposition of a singular definite description with the restricting property F (“the F”) is that there is a unique object with property F. This presupposition can be divided into two separate presuppositions:

An existential presupposition, claiming that there is at least one F A uniqueness presupposition, claiming that there is at most one F

Upon encountering a definite description, both presuppositions are verified.

10 / 27 The Naproche System

slide-11
SLIDE 11

Intro CNL PRS ATPs Future Work

Induction

The Naproche CNL supports basic induction:

Example (Landau’s Grundlagen der Analysis)

Theorem 2: For all x x′ = x. Proof: By axiom 3, 1′ = 1. Suppose x′ = x. Then by theorem 1, (x′)′ = x′. Thus by induction, for all x x′ = x. Qed. The keywords “by induction ∀x ϕ(x)” trigger an induction verification: If nat(x), ϕ(1) and (nat(n) ∧ ϕ(n)) → ϕ(n + 1) holds, then ∀x nat(x) → ϕ(x).

11 / 27 The Naproche System

slide-12
SLIDE 12

Intro CNL PRS ATPs Future Work

Outline

1

Introduction

2

The Naproche CNL

3

Proof Representation Structures

4

Checking Naproche Texts

5

Future Work

12 / 27 The Naproche System

slide-13
SLIDE 13

Intro CNL PRS ATPs Future Work

Quantifiers in natural language

How should we translate natural language quantifiers?

Example

Every farmer is bald. → ∀x farmer(x) → bald(x) A farmer is bald. → ∃x farmer(x) ∧ bald(x) So “every” denotes universal quantification and “a” denotes existential quantification.

Example

Every farmer who owns a donkey beats it. → ∀x (farmer(x) ∧ ∃y (donkey(y)) ∧ owns(x, y)) → beats(x, y) The “right” translation is ∀x, y(farmer(x) ∧ donkey(y) ∧ owns(x, y)) → beats(x, y) The simple approach doesn’t work here.

13 / 27 The Naproche System

slide-14
SLIDE 14

Intro CNL PRS ATPs Future Work

DRT, DRS and PRS

Discourse Representation Theory is a way to solve the problem of anaphora resolution. Non-anaphoric noun phrases introduce discourse referents which are used for the binding of anaphoric expressions. In DRT, discourse representation structures (DRS) are used to disambiguate anaphora. DRSs can easily be translated into first order logic. Proof Representation Structures (PRS) are an extension of DRSs for mathematical texts. PRSs are the linguistic format used in the Naproche System.

14 / 27 The Naproche System

slide-15
SLIDE 15

Intro CNL PRS ATPs Future Work

Constituents of PRSs

A PRS has five constituents, which we display as “boxes”:

i d1, . . . , dm m1, . . . , mn c1 . . . cl r1, . . . , rk

i is the identifier of the PRS. d1, . . . , dm are discourse referents. m1, . . . , mn are mathematical referents. c1, . . . , cl are PRS conditions. r1, . . . , rk are textual references.

15 / 27 The Naproche System

slide-16
SLIDE 16

Intro CNL PRS ATPs Future Work

A PRS Example

Show example on www.naproche.net.

16 / 27 The Naproche System

slide-17
SLIDE 17

Intro CNL PRS ATPs Future Work

Outline

1

Introduction

2

The Naproche CNL

3

Proof Representation Structures

4

Checking Naproche Texts

5

Future Work

17 / 27 The Naproche System

slide-18
SLIDE 18

Intro CNL PRS ATPs Future Work

Overview of the (old) Naproche system

18 / 27 The Naproche System

slide-19
SLIDE 19

Intro CNL PRS ATPs Future Work

The checking algorithm: Basics

The checking algorithm keeps a list of first-order formulas considered to be true, called premises, which gets continuously updated during the checking process. The conditions of a PRS are checked sequentially. Each condition is checked under the currently active premises. According to the kind of condition, the Naproche system creates

  • bligations in the TPTP format which have to be checked by an

ATP.

19 / 27 The Naproche System

slide-20
SLIDE 20

Intro CNL PRS ATPs Future Work

An Example

Show example on www.naproche.net.

20 / 27 The Naproche System

slide-21
SLIDE 21

Intro CNL PRS ATPs Future Work

Problems and possible solutions

Often, ATPs are unable to verify a proof obligation. This might mean that that particular proof step was wrong, or that the ATP was simply too weak to prove it. The Naproche system has several mechanisms to simplify the ATP proof tasks: Conjunction splitting and existential elimination. Skolemization. Premise Selection.

21 / 27 The Naproche System

slide-22
SLIDE 22

Intro CNL PRS ATPs Future Work

Conjunction splitting and existential elimination

Two simple ways of simplifying proof tasks are conjunction splitting and existential elimination: If the conjecture is a conjunction ϕ ∧ ψ we split the proof obligation in two obligation c1 : ϕ and c2 : ψ. If the conjecture is of the form ∃x ϕ(x) ∧ x = a we can simplify it to ϕ(a). (Example: x is a point.)

22 / 27 The Naproche System

slide-23
SLIDE 23

Intro CNL PRS ATPs Future Work

Skolemization

Another method to simplify proof tasks is by simplifying the premises: Assumptions can lead to long premises of the form ∀x ϕ → ∃y ψ1(y) ∧ ψ2(y)... ∧ ψn(y) By skolemizing the existential variables, we can split this formula into n formulas: ∀x ϕ → ψ1(skolem(x)), ∀x ϕ → ψ2(skolem(x))...

23 / 27 The Naproche System

slide-24
SLIDE 24

Intro CNL PRS ATPs Future Work

Premise Selection

The number of premises determines the search space of the ATP. Each unnecessary premise increases the difficulty of finding a proof. We used the text structure to predict the usefulness of premises, namely:

Explicit References Textual Adjacency Logical Relevance

This ’heuristic’ approach to premise relevance ties with or

  • utperforms the APRILS relevance order which is based on a latent

semantic analysis.

24 / 27 The Naproche System

slide-25
SLIDE 25

Intro CNL PRS ATPs Future Work

Outline

1

Introduction

2

The Naproche CNL

3

Proof Representation Structures

4

Checking Naproche Texts

5

Future Work

25 / 27 The Naproche System

slide-26
SLIDE 26

Intro CNL PRS ATPs Future Work

Future Work

Dynamic formula parsing. Better UI (e.g. saving and loading of unfinished proofs).

26 / 27 The Naproche System

slide-27
SLIDE 27

Intro CNL PRS ATPs Future Work

Thanks for listening

Try out the web interface to Naproche: http://www.naproche.net

27 / 27 The Naproche System