formalizing projective geometry in coq
play

Formalizing projective geometry in Coq Nicolas Magaud Julien - PowerPoint PPT Presentation

Formalizing projective geometry in Coq Nicolas Magaud Julien Narboux Pascal Schreck Universit e de Strasbourg, France GDR LTP, 21 Octobre 2009, Universit e Paris XII Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP


  1. Formalizing projective geometry in Coq Nicolas Magaud Julien Narboux Pascal Schreck Universit´ e de Strasbourg, France GDR LTP, 21 Octobre 2009, Universit´ e Paris XII Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 1 / 23

  2. Outline Objectives 1 Formal proofs in geometry 2 Projective geometry 3 A case study : Desargues’ theorem 4 Formalization in Coq 5 Future work and conclusion 6 Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 2 / 23

  3. Geometric contraint solving and automated deduction in geometry Proofs of theorems in geometry are needed for solving geometric 1 contraint systems. Most methods in automated deduction in geometry (Wu’s method, 2 the area method) can only deal with geometric statements expressed as a ruler and compass construction . We need a system to prove both mathematical theorems and programs! Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 3 / 23

  4. Related work Geometry Hilbert’s Grundlagen [DDS00, MF03] Tarski’s geometry [Nar07] High-school geometry [Gui05] Hessenberg’s theorem [BH08] Convex-hulls algorithm [MF05] [PB01] Image segmentation algorithm [Duf07] Degenerated cases Using Three-Valued Logic to Specify and Verify , Brandt and Schneider [BS05] Using matroids Incidence constraints, a combinatorial approach, Schreck-Michelucci[MS06] Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 4 / 23

  5. Why projective geometry ? Non degeneracy conditions A simple framework Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 5 / 23

  6. Axiom system (2D) Line-Existence ∀ A B : Point , ( ∃ l : Line , A ∈ l ∧ B ∈ l ) Point-Existence ∀ l m : Line , ( ∃ A : Point , A ∈ l ∧ A ∈ m ) Axiom Uniqueness ∀ A B : Point , ∀ l m : Line , A ∈ l ⇒ B ∈ l ⇒ A ∈ m ⇒ B ∈ m ⇒ A = B ∨ l = m Axiom Four Points ∃ A : Point , ∃ B : Point , ∃ C : Point , ∃ D : Point , distinct 4 A B C D ∧ ( ∀ l : Line , ( A ∈ l ∧ B ∈ l ⇒ C / ∈ l ∧ D / ∈ l ) ∧ ( A ∈ l ∧ C ∈ l ⇒ B / ∈ l ∧ D / ∈ l ) ∧ ( A ∈ l ∧ D ∈ l ⇒ B / ∈ l ∧ C / ∈ l ) ∧ ( B ∈ l ∧ C ∈ l ⇒ A / ∈ l ∧ D / ∈ l ) ∧ ( B ∈ l ∧ D ∈ l ⇒ A / ∈ l ∧ C / ∈ l ) ∧ ( C ∈ l ∧ D ∈ l ⇒ A ∈ l ∧ B ∈ l )) Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 6 / 23

  7. b b b Axiom system ( ≥ 3 D ) Line-Existence ∀ A B : Point , ∃ l : Line , A ∈ l ∧ B ∈ l ∀ A B C D : Point , ∀ l AB l CD l AC l BD : Line , A � = B ∧ A � = C ∧ A � = D ∧ B � = C ∧ B � = D ∧ C � = D ∧ A ∈ l AB ∧ B ∈ l AB ∧ C ∈ l CD ∧ D ∈ l CD ∧ Pasch A ∈ l AC ∧ C ∈ l AC ∧ B ∈ l BD ∧ D ∈ l BD ∧ ( ∃ I : Point , I ∈ l AB ∧ I ∈ l CD ) ⇒ ( ∃ J : Point , J ∈ l AC ∧ J ∈ l BD ) b J B b C b I A D Uniqueness ∀ A B : Point , ∀ l m : Line , A ∈ l ∧ B ∈ l ∧ A ∈ m ∧ B ∈ m ⇒ A = B ∨ l = m Three-Points ∀ l : Line , ∃ A B C : Point , A � = B ∧ B � = C ∧ A � = C ∧ A ∈ l ∧ B ∈ l ∧ C ∈ l Lower-Dimension ∃ l m : Line , ∀ p : Point , p �∈ l ∨ p �∈ m Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 7 / 23

  8. b b b Duality Proving some theorems by duality: 3 points on a line ⇒ 3 lines through a point P A b C B ⇒ 1 point outside l 1 and l 2 ⇒ 1 line not through P 1 and P 2 b P1 b P b P2 ⇒ The solution: a functor from Projective Plane Geometry to itself Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 8 / 23

  9. � � � Implementation in Coq ! Module types (boxes) and Functors (arrows) forth ProjectivePlane ′ A 1 A 2 A ′ duality ProjectivePlane A 1 A 2 A 3 3 back Duality as a functor Module swap (M’: ProjectivePlane’) <: ProjectivePlane’. Definition Point := M’.Line. Definition Line := M’.Point. Definition Incid := fun (x:Point) (y:Line) => M’.Incid y x. [...] Definition a1_exist := M’.a2_exist. Definition a2_exist := M’.a1_exist. [...] Application Lemma outsider : forall l1 l2: Line, { P:Point | ~Incid P l1/\~Incid P l2}. Proof. [...] Qed. Lemma dual_example : forall P1 P2 : Point,{l : Line | ~ Incid P1 l /\ ~ Incid P2 l}. Proof. apply ProjectivePlaneFacts_m.outsider. Qed. Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 9 / 23

  10. b b b b b b Models Finite Models PG ( dim , b ) where given a point on a line, b is the number of other lines through the point. Fano’s plane ( = PG (2 , 2) the smallest projective plane) C b E D b G A F B PG(2,5) (31 points and as many lines, thus 923 521 cases) Infinite Model: Homogeneous Coordinates Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 10 / 23

  11. b b b b b b b b b Desargues’ theorem let E be a 3D or higher projective space, if the 3 lines joining the corres- ponding vertices of triangles ABC and A ′ B ′ C ′ all meet in a point O , then the 3 intersections of pairs of corresponding sides α , β and γ lie on a line. γ b O A’ A α C’ B’ C B β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 11 / 23

  12. b b b b b b b b b b b b b b b b b b b b Why 3D ? Desargue’s theorem is false in some 2D models. Moulton’s plane O γ A B C α A’ β C’ β B’ Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 12 / 23

  13. b b b b b b Hessenberg’s theorem If Pappus holds then Desargues holds as well. Pappus C B A b R b Q b P C’ B’ A’ Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 13 / 23

  14. b b b b b b b b b The proof Outline of the proof: γ We prove the 3D version of Desargues’ theorem. b O A’ A We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  15. b b b b b b b b b b The proof P Outline of the proof: γ We prove the 3D version of Desargues’ theorem. b O A’ A We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  16. b b b b b b b b b b b The proof P Outline of the proof: γ We prove the 3D version b o of Desargues’ theorem. b O a A’ A We lift the 2D statement b c α b b C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  17. b b b b b b b b b b b The proof P Outline of the proof: γ We prove the 3D version b o of Desargues’ theorem. b O a A’ A We lift the 2D statement b c b b α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  18. b b b b b b b b b b b The proof P Outline of the proof: γ We prove the 3D version b o of Desargues’ theorem. b O a A’ A b b b c We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  19. b b b b b b b b b b b The proof P Outline of the proof: γ We prove the 3D version b o of Desargues’ theorem. a b O b b A’ A b c We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  20. b b b b b b b b b b b The proof P Outline of the proof: γ We prove the 3D version b o a of Desargues’ theorem. b O b b A’ b c A We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  21. b b b b b b b b b b b The proof P Outline of the proof: γ We prove the 3D version b o a of Desargues’ theorem. b O b b b c A’ A We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  22. b b b b b b b b b b b The proof P Outline of the proof: γ b o We prove the 3D version a of Desargues’ theorem. b O b b b c A’ A We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

  23. b b b b b b b b b b b The proof P Outline of the proof: γ b o We prove the 3D version a of Desargues’ theorem. b O b b b c A’ A We lift the 2D statement α C’ B’ to a 3D version of C Desargues’ theorem which projects into the B 2D statement. β Magaud Schreck Narboux (UdS) Formalizing projective geometry GDR LTP 14 / 23

Recommend


More recommend