formalizing analytic geometries · our formalization of analytic geometry aims at establishing the...

58
Introduction Formalizing Cartesian Geometry Using Isometric Transformations Tarski’s geometry Hilbert’s geometry Conclusions and Further Work Formalizing Analytic Geometries Danijela Petrovi´ c [email protected] Department of Computer Science Faculty of Mathematics University of Belgrade ADG 2012 Danijela Petrovi´ c [email protected] Formalizing Analytic Geometries

Upload: others

Post on 18-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Formalizing Analytic Geometries

Danijela [email protected]

Department of Computer Science

Faculty of Mathematics

University of Belgrade

ADG 2012

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 2: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Outline

1 Introduction

2 Formalizing Cartesian Geometry

3 Using Isometric Transformations

4 Tarski’s geometryAxioms of Betweenness

5 Hilbert’s geometryAxioms of OrderAxioms of Continuity

6 Conclusions and Further Work

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 3: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Outline

1 Introduction

2 Formalizing Cartesian Geometry

3 Using Isometric Transformations

4 Tarski’s geometryAxioms of Betweenness

5 Hilbert’s geometryAxioms of OrderAxioms of Continuity

6 Conclusions and Further Work

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 4: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Many different geometries

Euclidean (synthetic) geometry

Descartes’s coordinate system, bridged the gap betweenalgebra and geometry

Several attempts to formalize different geometries anddifferent approaches to geometry

Using the proof assistants significantly raises the level of rigour

Isabelle/HOL

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 5: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Main applications:

- automated theorem proving in geometry- mathematical education and teaching ofgeometry

Automated theorem proving:algebraic methods vs. theorem provers based on syntheticaxiomatizations

Geometry in education

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 6: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Goals

Formalize Cartesian geometry within a proof assistant

Different definitions of basic notions of analytic geometry allturn out to be equivalent

The standard Cartesian plane geometry represents a model ofseveral geometry axiomatizations

Formally analyze model-theoretic properties of differentaxiomatic systems

Formally analyze axiomatizations and models ofnon-Euclidean geometries and their properties

Formally establish connections of the Cartesian planegeometry with algebraic methods

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 7: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Outline

1 Introduction

2 Formalizing Cartesian Geometry

3 Using Isometric Transformations

4 Tarski’s geometryAxioms of Betweenness

5 Hilbert’s geometryAxioms of OrderAxioms of Continuity

6 Conclusions and Further Work

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 8: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Our formalization of analytic geometry aims at establishingthe connection with synthetic geometries so it followsprimitive notions given in synthetic approaches

objects: points, lines

relations: incidence, betweenness, congruence

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 9: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Points

pairs of real numbers (R2)

easily formalized in Isabelle/HOL by type synonym

pointag = ”real × real”

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 10: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

The Order of Points

Betweenness relation: B(A,B,C)

Some axiomatizations, e.g. Tarski’s, allow the case when B isequal to A or C

BagT (xa, ya) (xb, yb) (xc, yc)←→(∃(k :: real). 0 ≤ k ∧ k ≤ 1 ∧

(xb− xa) = k · (xc− xa) ∧ (yb− ya) = k · (yc− ya))

Hilbert’s axiomatizations does not allow points to be equal

BagH (xa, ya) (xb, yb) (xc, yc)←→(∃(k :: real). 0 < k ∧ k < 1 ∧

(xb− xa) = k · (xc− xa) ∧ (yb− ya) = k · (yc− ya))

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 11: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Congruence

Square distance

d2ag (x1, y1) (x2, y2) = (x2 − x1) · (x2 − x1) + (y2 − y1) · (y2 − y1)

Congruence

A1B1∼=ag A2B2 ←→ d2ag A1 B1 = d2ag A2 B2

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 12: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

typedef

Type definition

Any non-empty subset of an existing type can be turned intoa new type

Example:typedef three = ”{0 :: nat, 1, 2}”

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 13: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Constants declared:- three :: nat set- Rep three :: three −→ nat- Abs three :: nat −→ three

Some features:- Rep three surjective: Rep three x ∈ three- Rep three inverse: Abs three (Rep three x) = x- Abs three inverse:y ∈ three ⇒ Rep three (Abs three y) = y

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 14: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

LinesLine equations

A · x+B · y + C = 0 where A 6= 0 ∨B 6= 0

same line:

- A · x+B · y + C = 0- k ·A · x+ k ·B · y + k · C = 0, for a real k 6= 0

Lines

typedef line coeffsag =

{((A :: real), (B :: real), (C :: real)). A 6= 0 ∨B 6= 0}

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 15: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

LinesLine equations

Equivalent triplets

l1 ≈ag l2 ←→(∃ A1B1C1A2B2C2.(Rep line coeffs l1 = (A1, B1, C1)) ∧Rep line coeffs l2 = (A2, B2, C2) ∧(∃k. k 6= 0 ∧ A2 = k ·A1 ∧ B2 = k ·B1 ∧ C2 = k · C1))

(x, y) ∈agH l

ag in h (x, y) l←→(∃ A B C. Rep line coeffs l = (A, B, C)∧(A · x+B · y + C = 0))

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 16: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

LinesAffine definition

vecag = ”real × real”

typedef line point vecag = {(p :: pointag, v :: vecag). v 6= (0, 0)}

Equivalent triplets

l1 ≈ag l2 ←→ (∃ p1 v1 p2 v2.Rep line point vec l1 = (p1, v1)∧Rep line point vec l2 = (p2, v2)∧(∃km. v1 = k · v2 ∧ p2 = p1 +m · v1))

Incidence

ag in h p l ←→ (∃ p0 v0.Rep line point vec l = (p0, v0)∧(∃k. p = p0 + k · v0))

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 17: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Isometries

Translation

transpag (v1, v2) (x1, x2) = (v1 + x1, v2 + x2)

Rotation

rotpag α (x, y) = ((cosα) · x− (sinα) · y, (sinα) · x+ (cosα) · y)

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 18: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Isometries

All isometries are invariance properties

BagT A B C ←→BagT (transpag v A) (transpag v B) (transpag v C)

AB ∼=ag CD ←→(transpag v A)(transpag v B) ∼=ag (transpag v C)(transpag v D)

BagT A B C ←→ Bag

T (rotpag α A) (rotpag α B) (rotpag α C)

AB ∼=ag CD ←→(rotpag α A)(rotpag α B) ∼=ag (rotpag α C)(rotpag α D)

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 19: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Isometries

used only to transform points to canonical position

∃v. transpag v P = (0, 0)

∃α. rotpag α P = (0, p)

BagT (0, 0) P1 P2 −→ ∃α p1 p2. rotpag α P1 = (0, p1)

∧rotpag α P2 = (0, p2)

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 20: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Outline

1 Introduction

2 Formalizing Cartesian Geometry

3 Using Isometric Transformations

4 Tarski’s geometryAxioms of Betweenness

5 Hilbert’s geometryAxioms of OrderAxioms of Continuity

6 Conclusions and Further Work

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 21: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Motivation example

BagT A X B

AX

B

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 22: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Motivation example

BagT A X B ∧ BagT A B Y

XA

YB

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 23: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Motivation example

BagT A X B ∧ BagT A B Y −→ BagT X B Y

AX

YB

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 24: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Motivation example

BagT A X B ∧ BagT A B Y −→ BagT X B Y

AX

YB

A = (xA, yA), B = (xB, yB), and X = (xX , yX)

X = B holds trivially

from BagT A X B there is a real number k1, 0 ≤ k1 ≤ 1 suchthat

- (xX − xA) = k1 · (xB − xA)- (yX − yA) = k1 · (yB − yA)

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 25: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Motivation example

AX

YB

from BagT A B Y there is a real number k2, 0 ≤ k2 ≤ 1-(xB − xA) = k2 · (xY − xA) - (yB − yA) = k2 · (yY − yA)

k = (k2 − k2 · k1)/(1− k2 · k1)

if X 6= B, it is shown that- 0 ≤ k ≤ 1- (xB − xX) = k · (xY − xX) (yB − yX) = k · (yY − yX)

and thus BagT X B Y holds

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 26: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Motivation example

A B YX

we can assume: A = (0, 0), B = (0, yB), and X = (0, yX),and that 0 ≤ yX ≤ yB.

yB = 0 holds trivially

Otherwise, xY = 0 and 0 ≤ yB ≤ yY . Hence yX ≤ yB ≤ yY

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 27: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Invariant property

inv P t←→ (∀ A B C. P A B C ←→ P (tA) (tB) (tC))

Used to reduce the statement to any three collinear points to thepositive part of the y-axis

lemma

assumes "∀ yB yC . 0 ≤ yB ∧ yB ≤ yC −→P (0, 0) (0, yB) (0, yC)""∀ v. inv P (transpag v )""∀α. inv P (rotpag α )"

shows "∀ABC. BagT A B C −→ P A B C"

John Harrison, Without loss of generality

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 28: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

Outline

1 Introduction

2 Formalizing Cartesian Geometry

3 Using Isometric Transformations

4 Tarski’s geometryAxioms of Betweenness

5 Hilbert’s geometryAxioms of OrderAxioms of Continuity

6 Conclusions and Further Work

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 29: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

AB ∼=t BAAB ∼=t CC −→ A = BAB ∼=t CD ∧ AB ∼=t EF −→ CD ∼=t EF

Bt(A,B,A) −→ A = B

Bt(A,P,C) ∧ Bt(B,Q,C) −→ (∃X. (Bt(P,X,B) ∧ Bt(Q,X,A)))

∃ A B C. ¬ Ct(A,B,C)

(∃a. ∀x. ∀y. φ x ∧ ψ y −→ Bt(a, x, y)) −→(∃b. ∀x. ∀y. φ x ∧ ψ y −→ Bt(x, b, y))

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 30: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

AP ∼=t AQ ∧ BP ∼=t BQ ∧ CP ∼=t CQ ∧ P 6= Q −→ Ct(A,B,C)

∃E. Bt(A,B,E) ∧ BE ∼=t CD

AB ∼=t A′B′ ∧ BC ∼=t B

′C ′ ∧ AD ∼=t A′D′ ∧ BD ∼=t B

′D′ ∧Bt(A,B,C) ∧ Bt(A

′, B′, C ′) ∧ A 6= B −→ CD ∼=t C′D′

Bt(A,D, T ) ∧ Bt(B,D,C) ∧ A 6= D −→(∃XY. (Bt(A,B,X) ∧ Bt(A,C, Y ) ∧ Bt(X,T, Y )))

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 31: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

The axiom of Pasch

Bt(A,P,C) ∧ Bt(B,Q,C) −→ (∃X. (Bt(P,X,B) ∧ Bt(Q,X,A)))

A

B

P C

Q

X

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 32: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

Properties used in proof of Pasch axiom

BagT A A B

BagT A B C −→ BagT C B A

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 33: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

Properties used in proof of Pasch axiom

BagT A A B

BagT A B C −→ BagT C B A

BagT A X B

A X B

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 34: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

Properties used in proof of Pasch axiom

BagT A A B

BagT A B C −→ BagT C B A

BagT A X B ∧ BagT A B Y

XA B Y

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 35: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

Properties used in proof of Pasch axiom

BagT A A B

BagT A B C −→ BagT C B A

BagT A X B ∧ BagT A B Y −→ BagT X B Y

A X B Y

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 36: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

Properties used in proof of Pasch axiom

BagT A A B

BagT A B C −→ BagT C B A

BagT A X B ∧ BagT A B Y −→ BagT X B Y

A X B Y

BagT A X B

A X B

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 37: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

Properties used in proof of Pasch axiom

BagT A A B

BagT A B C −→ BagT C B A

BagT A X B ∧ BagT A B Y −→ BagT X B Y

A X B Y

BagT A X B ∧ BagT A B Y

XA B Y

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 38: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

Properties used in proof of Pasch axiom

BagT A A B

BagT A B C −→ BagT C B A

BagT A X B ∧ BagT A B Y −→ BagT X B Y

A X B Y

BagT A X B ∧ BagT A B Y −→ BagT A X Y

BXA Y

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 39: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

∃X. (Bt(P,X,B) ∧ Bt(Q,X,A))

If P = C, then Q is thepoint sought

A

B

C= P

Q

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 40: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

∃X. (Bt(P,X,B) ∧ Bt(Q,X,A))

If P = C, then Q is thepoint sought

A

B

C= P

Q

Bt(A,B,C), B is the pointsought

A P Q CB

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 41: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

use isometric transformations so that:A = (0, 0), P = (0, yP ), C = (0, yC)B = (xB, yB), Q = (xQ, yQ),X = (xX , yX)

from Bt(A,P,C), there is a real numberk3 such that

- 0 ≤ k3 ≤ 1 yP = k3 · yC

from Bt(B,Q,C), there is a real numberk4 such that

- 0 ≤ k4 ≤ 1- xQ − xB = −k4 ∗ xB- yQ − yB = k4 ∗ (yC − yB)

A P C

Q

B

X

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 42: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

The axiom of Pasch

define a real number k1 =k3·(1−k4)

k4+k3−k3·k4and show

- 0 ≤ k1 ≤ 1- xX = k1 · xB- yX − yP = k1 · (yB − yP )

thus Bt(P,X,B) holds

define a real number k2 =k4·(1−k3)

k4+k3−k3·k4and show

- 0 ≤ k2 ≤ 1- xX − xQ = −k2 · xQ- yX − yQ = −k2 · yQ

thus Bt(Q,X,A) holds

A P C

Q

B

X

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 43: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

Axiom (Schema) of Continuity

(∃a. ∀x. ∀y. φ x ∧ ψ y −→ Bt(a, x, y)) −→(∃b. ∀x. ∀y. φ x ∧ ψ y −→ Bt(x, b, y))

A x yB

Isabelle/HOL does not restrict predicate φ and ψ to be FOLpredicates

One of the sets is empty, the statement trivially hold

The sets have a point in common, that point is the pointsought

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 44: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

Axiom (Schema) of Continuity

A = (0, 0)

P QB

Isometry transformations are applied so that all points fromboth sets lie on the positive part of the y-axis.

lemma

assumes

"P = {x. x ≥ 0 ∧ φ(0, x)}" "Q = {y. y ≥ 0 ∧ ψ(0, y)}""¬(∃b. b ∈ P ∧ b ∈ Q)" "∃x0. x0 ∈ P" "∃y0. y0 ∈ Q""∀x ∈ P. ∀y ∈ Q. BagT (0, 0) (0, x) (0, y)"shows

"∃b. ∀x ∈ P. ∀y ∈ Q. BagT (0, x) (0, b) (0, y)"

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 45: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of Betweenness

Axiom (Schema) of Continuity

A = (0, 0)

P QB

Completeness of reals

(∃x. x ∈ P ) ∧ (∃y. ∀x ∈ P. x < y) −→∃S. (∀y. (∃x ∈ P. y < x)↔ y < S)

P satisfies the supremum property

∀x ∈ P. ∀y ∈ Q. x < y

there is b such that:∀x ∈ P. x ≤ b and ∀y ∈ Q. b ≤ y

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 46: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

Outline

1 Introduction

2 Formalizing Cartesian Geometry

3 Using Isometric Transformations

4 Tarski’s geometryAxioms of Betweenness

5 Hilbert’s geometryAxioms of OrderAxioms of Continuity

6 Conclusions and Further Work

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 47: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

A 6= B −→ ∃! l. A ∈h l ∧ B ∈h l

∃AB. A 6= B ∧ A ∈h l ∧ B ∈h l

∃ABC. ¬ Ch(A,B,C)

Bh(A,B,C) −→ A 6= B ∧ A 6= C ∧ B 6= C ∧Ch(A,B,C) ∧ Bh(C,B,A)

A 6= C −→ ∃B. Bh(A,C,B)

A ∈h l ∧ B ∈h l ∧ C ∈h l ∧ A 6= B ∧ B 6= C ∧ A 6= C −→(Bh(A,B,C) ∧ ¬Bh(B,C,A) ∧ ¬Bh(C,A,B)) ∨(¬Bh(A,B,C) ∧ Bh(B,C,A) ∧ ¬Bh(C,A,B)) ∨(¬Bh(A,B,C) ∧ ¬Bh(B,C,A) ∧ Bh(C,A,B))

A 6= B ∧ B 6= C ∧ C 6= A ∧ Bh(A,P,B)∧P ∈h l ∧ ¬C ∈h l ∧ ¬A ∈h l ∧ ¬B ∈h lh −→∃Q. (Bh(A,Q,C) ∧ Q ∈h l) ∨ (Bh(B,Q,C) ∧ Q ∈h l)

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 48: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

A 6= B ∧ A ∈h l ∧ B ∈h l ∧ A′ ∈h l

′ −→∃B′ C ′. B′ ∈h l

′ ∧ C ′ ∈h l′ ∧ Bh(C

′, A′, B′)∧AB ∼=h A

′B′ ∧ AB ∼=h A′C ′

AB ∼=h A′B′ ∧ AB ∼=h A

′′B′′ −→ A′B′ ∼=h A′′B′′

Bh(A,B,C) ∧ Bh(A′, B′, C ′) ∧ AB ∼=h A

′B′ ∧ BC ∼=h B′C ′ −→

AC ∼=h A′C ′

¬P ∈h l −→ ∃! l′. P ∈h l′ ∧ ¬(∃ P1. P1 ∈h l ∧ P1 ∈h l

′)

Let A1 be any point upon a straight line between the arbitrarilychosen points A and B. Choose the points A2, A3, A4, . . . so that A1

lies between A and A2, A2 between A1 and A3, A3 between A2 andA4 etc. Moreover, let the segments AA1, A1A2, A2A3, A3A4, . . . beequal to one another. Then, among this series of points, therealways exists a point An such that B lies between A and An.

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 49: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

Axiom of Pasch

A 6= B ∧ B 6= C ∧ C 6= A ∧ Bh(A,P,B)∧P ∈h l ∧ ¬C ∈h l ∧ ¬A ∈h l ∧ ¬B ∈h l −→∃Q. (Bh(A,Q,C) ∧ Q ∈h l) ∨ (Bh(B,Q,C) ∧ Q ∈h l)

A

B

P

C

Q

The statement holds trivially if A, B and C are collinear

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 50: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

A = (0, 0), B = (xB, 0), P = (xP , 0),C = (xC , yC) andRep line coeffs l = (lA, lB, lC)

Bh(A,P,B) −→ lA · yB 6= 0

k1 =−lClA·yB

k2 =lA·yB+lClA·yB

0 < k1 < 1, Q = (xQ, yQ) is determed by- xQ = k1 · xC yQ = k1 · yC- Bh(A,Q,C)

0 < k2 < 1, Q = (xQ, yQ) is determed by- xQ = k2 · (xC − xB) + xB- yQ = k2 · yC- Bt(B,Q,C)

A

B

P

C

Q

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 51: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

Axiom of Archimedes

Let A1 be any point upon a straight line between the arbitrarilychosen points A and B. Choose the points A2, A3, A4, . . . so thatA1 lies between A and A2, A2 between A1 and A3, A3 betweenA2 and A4 etc. Moreover, let the segmentsAA1, A1A2, A2A3, A3A4, . . . be equal to one another. Then,among this series of points, there always exists a point An suchthat B lies between A and An.

A A1

B

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 52: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

Axiom of Archimedes

Let A1 be any point upon a straight line between the arbitrarilychosen points A and B. Choose the points A2, A3, A4, . . . so thatA1 lies between A and A2, A2 between A1 and A3, A3 betweenA2 and A4 etc. Moreover, let the segmentsAA1, A1A2, A2A3, A3A4, . . . be equal to one another. Then,among this series of points, there always exists a point An suchthat B lies between A and An.

B

A A1 A2 A3 A4 A5

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 53: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

Axiom of Archimedes

Let A1 be any point upon a straight line between the arbitrarilychosen points A and B. Choose the points A2, A3, A4, . . . so thatA1 lies between A and A2, A2 between A1 and A3, A3 betweenA2 and A4 etc. Moreover, let the segmentsAA1, A1A2, A2A3, A3A4, . . . be equal to one another. Then,among this series of points, there always exists a point An suchthat B lies between A and An.

A1 A2 A3 A5

B

A A4

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 54: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

Axiom of Archimedes

definition

congruentl l −→ length l ≥ 3 ∧∀i. 0 ≤ i ∧ i+ 2 < length l −→(l ! i)(l ! (i+ 1)) ∼=h (l ! (i+ 1))(l ! (i+ 2)) ∧Bh((l ! i), (l ! (i+ 1)), (l ! (i+ 2)))

Axiom of Archimedes

Bh(A,A1, B) −→(∃l. congruentl(A # A1 # l) ∧ (∃i. Bh(A,B, (l ! i))))

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 55: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Axioms of OrderAxioms of Continuity

Axiom of Archimedes

d2ag A A′ > d2ag A B and d2ag A A′ = t · d2ag A A1

t · d2ag A A1 > d2ag A B (applying Archimedes’ rule for realnumbers)

inductively proved that there exists a list l such that:

- congruentl l,- longer then t,- first two elements are A and A1

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 56: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Outline

1 Introduction

2 Formalizing Cartesian Geometry

3 Using Isometric Transformations

4 Tarski’s geometryAxioms of Betweenness

5 Hilbert’s geometryAxioms of OrderAxioms of Continuity

6 Conclusions and Further Work

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 57: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Conclusions

Developed a formalization of Cartesian plane geometry withinIsabelle/HOL

Formally shown that the Cartesian plane satisfies all Tarski’saxioms and most of the Hilbert’s axioms

Proof that analytic geometry models geometric axioms arerather complex

Applying isometry transformations

Our formalization of the analytic geometry relies on theaxioms of real numbers and properties of reals are usedthroughout our proofs

Danijela Petrovic [email protected] Formalizing Analytic Geometries

Page 58: Formalizing Analytic Geometries · Our formalization of analytic geometry aims at establishing the connection with synthetic geometries so it follows primitive notions given in synthetic

IntroductionFormalizing Cartesian GeometryUsing Isometric Transformations

Tarski’s geometryHilbert’s geometry

Conclusions and Further Work

Further Work

Formalizing analytic models of non-Euclidean geometries

Connect our formal developments to the implementation ofalgebraic methods for automated deduction in geometry

Danijela Petrovic [email protected] Formalizing Analytic Geometries