• Aucun résultat trouvé

Chapitre I.2 La théorie des matroïdes : une approche combinatoire crypto-

2.1 Des rangs vers la géométrie synthétique

Table I.2.11 – Classe de types pour la structure matroïdale.

2 Deux approches cryptomorphiques

Maintenant que nous avons précisé l’axiomatisation de la géométrie d’incidence projective basée sur les rangs, nous nous intéressons à la preuve de l’équivalence entre ces deux systèmes d’axiomes : d’un côté, nous avons l’approche par la géométrie synthétique qui permet de décrire de manière intuitive des problèmes géométriques, de l’autre nous avons une approche combinatoire utilisant le concept de rang introduit par les matroïdes qui laisse envisager une automatisation plus efficace au détriment de la lisibilité des preuves.

Dans des travaux précédents [MNS09,MNS12], seule l’implication des rangs vers la géométrie projective ≥3D a été étudiée. Cette implication était suffisante pour faire une étude de cas sur la preuve du théorème de Desargues en 3D avec les rangs. Afin d’augmenter les possibilités d’automatisations dans les preuves et permettre une traduction bidirectionnelle entre ces deux approches, nous effectuons la preuve complète de cette équivalence. Avant d’établir cette preuve, nous commençons par définir la bi-interprétation en introduisant les deux dictionnairesI.2.12et

I.2.13qui permettent d’effectuer une traduction des objets et relations d’une théorie vers l’autre. La conception de ces dictionnaires s’inspire de la notion de plat introduite précédemmentI.2.5. Grâce à cette double traduction, nous avons le théorème d’équivalence suivant :

Théorème I.2.1. Les systèmes de la géométrie d’incidence projective avec l’approche en géomé-trie synthétique et ceux basés sur les rangs sont équivalents respectivement en 2D, ≥3D et 3D.

Pour parvenir à cette preuve, nous divisons la démonstration de l’équivalence en fonction de la dimension et de la direction.

2.1 Des rangs vers la géométrie synthétique

Nous commençons par l’implication des rangs vers la géométrie d’incidence projective en 2D, ≥3D et 3D. Les preuves sont très similaires quelle que soit la dimension.

2. Deux approches cryptomorphiques 47

2.1.1 Préliminaires

Pour commencer, nous devons caractériser le concept de droite et d’incidence qui n’existe pas dans le système d’axiomes fondé sur les rangs I.2.12. Nous construisons, en utilisant une définition inductive, une droite à partir de deux points distincts. Un point P est incident à la droite l, si le rang du triplet formé par les deux points engendrant la droite et le point P reste égal à 2. Finalement, deux droites l et m sont égales, si le rang du quadruplet formé par les deux points engendrant chaque droite reste égal à 2.

(* Caractérisation de la géométrie synthétique à partir des rangs *) Definition Point := Point.

Inductive LineInd : Type :=

|Cline : forall (A B : Point)(H : ~ A[==]B), LineInd. Definition Line := LineInd.

Definition Incid (P : point)(l : Line) := rk ((fstP l)(sndP l) P) = 2. Definition line_eq (l m : Line) := rk((fstP l)(sndP l)(fstP m)(sndP m)) = 2.

Table I.2.12 – Caractérisation de la géométrie synthétique à partir de la notion de rang. À partir de maintenant, nous pouvons exprimer les énoncés de la géométrie d’incidence pro-jective classique et les prouver en utilisant les axiomes de rangs.

2.1.2 Sous-Modularité

Nous détaillons quelques techniques de preuves utilisées pour démontrer les cinq axiomes de la géométrie synthétique à la fois en 2D, ≥3D et 3D.

Premièrement, nous prouvons généralement les égalités entre rangs (rk(a) = rk(b)) en deux étapes : en premier rk(a) ≤ rk(b), en second rk(a) ≥ rk(b). Deuxièmement, nous travaillons de manière systématique avec l’axiome de la sous-modularité (A3R2-R3). Déterminer les inter-sections entre deux ensembles finis de points est un problème, nous devons distinguer tous les cas possibles d’égalités entre points. La preuve résultante devient plus complexe avec ces distinc-tions. C’est pourquoi, nous définissons un lemme particulier dérivé de l’axiome(A3R2-R3)qui ne considère pas l’intersection théorique mais une approximation plus faible de cette intersection (notée dans la suite u).

Définition (Intersection théorique). Soient L1 et L2 deux ensembles de points. Par définition L1 ∩ L2 est l’intersection exacte entre les deux ensembles de points considérés. Tous les points qui sont syntaxiquement identiques ou qui sont égaux par construction apparaissent une seule et unique fois dans l’ensemble résultat.

Par exemple, soit L1 = {A, C} et L2 = {B, C} deux ensembles de points. Nous ajoutons l’hypothèse que A = B, alors il est possible de déduire que l’intersection théorique de ces deux ensembles est L1 ∩ L2 = {A, C} = {B, C}.

48 I.2. La théorie des matroïdes : une approche combinatoire cryptomorphique

Définition (Intersection littérale). Soient L1 et L2 deux ensembles de points. Par définition L1 u L2 est l’intersection syntaxique entre les deux ensembles de points considérés. Tous les points qui sont syntaxiquement identiques apparaissent une seule et unique fois dans l’ensemble résultat. En pratique, nous savons que : L1 u L2 ⊆ L1 ∩ L2. En utilisant (A2R2-R3), nous déduisons donc que : rk(L1 u L2) ≤ rk(L1 ∩ L2).

Par exemple, soient L1= {A, C} et L2 = {B, C} deux ensembles de points. Avec l’hypothèse que A = B, alors l’intersection littérale entre ces deux ensembles de points est L1 u L2 = {C}. À partir de cette intersection littérale, nous pouvons déduire une version plus appropriée de l’axiome(A3R2-R3)en ignorant les cas d’égalités entre points :

Lemme I.2.1 (A3R2-R3-lit). ∀ X Y,

rk(X ∪ Y) + rk(X u Y) ≤ rk(X) + rk(Y).

Cependant, le système Coq ne permet pas de facilement définir la notion d’intersection lit-térale de manière calculatoire. Nous préférons définir une version alternative qui capture le sens du lemmeI.2.1:

Lemme I.2.2 (A3R2-R3-alt). ∀ X Y I,

I ⊆ (X u Y) ⇒ rk(X ∪ Y) + rk(I) ≤ rk(X) + rk(Y).

Cette version fonctionnelle de la sous-modularité est beaucoup utilisée dans chacune des preuves. Contrairement à l’intersection, il n’est pas nécessaire de définir une union théorique et une union littérale puisqu’elles capturent toujours le même ensemble de points indépendamment des égalités entre points.

Troisièmement, la connaissance du rang d’un ensemble de points est bien souvent incomplète. Pour représenter sa dimension, nous devons donc définir un intervalle d’entiers en l’absence d’informations supplémentaires ou de la mise en évidence d’une contradiction. En d’autres termes, le rang d’un ensemble de points n’est pas toujours déterminé, il n’est pas assez contraint par l’énoncé ou par la preuve, le système a besoin de plus d’informations ou d’une contradiction pour continuer. Dans la plupart des cas, la seule méthode possible pour gérer cela est de faire un raisonnement cas par cas pour chacun des rangs possibles de l’ensemble. La démonstration de l’axiome Upper-Dimension est un exemple qui illustre parfaitement ce schéma de preuve. Les trois droites qui sont coupées par une quatrième doivent avoir pour unique contrainte d’être différentes deux à deux. Pour réaliser cette démonstration, il est obligatoire de distinguer si les couples de droites sont coplanaires ou non.

2.1.3 Preuve de la propriété Uniqueness

Pour illustrer les mécanismes précédents de preuves, nous détaillons la démonstration de la propriété Uniqueness en partant des rangs.

Lemme I.2.3 (A3P2-P3). Uniqueness, ∀ A B : P oint, ∀ l m : Line, A ∈ l ∧ B ∈ l ∧ A ∈ m ∧ B ∈ m ⇒ A = B ∨ l = m

2. Deux approches cryptomorphiques 49

Démonstration. Nous commençons la preuve par une distinction de cas sur l’égalité entre les points A et B :

• Si A = B, alors la conclusion est triviale.

• Si A 6= B, nous déplions les définitions de Line et Incid, il s’ensuit que :

Nous avons A <> B Soit P ∈ l, Q ∈ l and P <> Q Soit R ∈ m, S ∈ m and R <> S Incid A l ⇒ rk{P , Q, A} = 2 Incid B l ⇒ rk{P , Q, B} = 2 Incid A m ⇒ rk{R, S, A} = 2 Incid B m ⇒ rk{R, S, B} = 2                    Assumptions l = m ⇒ rk{P , Q, R, S} = 2 Goal

Pour continuer, nous déterminons le rang des deux ensembles suivants en utilisant A3R2-R3-alt : rk{P , Q, A, B} et rk{R, S, A, B}.

rk({P , Q, A} ∪ {P , Q, B}) + rk({P , Q, A} ∩ {P , Q, B}) ≤ rk{P , Q, A} + rk{P , Q, B}

⇒ rk{P , Q, A, B} + rk{P , Q} ≤ rk{P , Q, A} + rk{P , Q, B} ⇒ rk{P , Q, A, B} ≤ 2

De manière analogue, nous calculons que rk{R, S, A, B} ≤ 2. Puis nous établissons que : rk{P , Q, R, S, A, B} ≤ 2.

rk({P , Q, A, B} ∪ {R, S, A, B}) + rk({P , Q, A, B} ∩ {R, S, A, B}) ≤ rk{P , Q, A, B} + rk{R, S, A, B}

⇒ rk{P , Q, R, S, A, B} + rk{A, B} ≤ rk{P , Q, A, B} + rk{R, S, A, B} ⇒ rk{P , Q, R, S, A, B} ≤ 2

En utilisant A2R2-R3, nous prouvons que :

{P , Q, R, S} ⊂ {P , Q, R, S, A, B} ⇒ rk{P , Q, R, S} ≤ rk{P , Q, R, S, A, B}

Donc rk{P , Q, R, S} ≤ 2 et comme l’ensemble {P , Q, R, S} contient au moins deux points distincts, nous concluons que rk{P , Q, R, S} = 2.

2.1.4 Implantation Coq

Au niveau de l’implantation, pour effectuer les déductions sur les ensembles abstraits, nous utilisons la tactique fsetdecide fournie par la librairie Coq [Les11]. Cette tactique implémente une procédure de décision pour les propositions concernant des ensembles finis abstraits. D’autre part, nous utilisons le type setoid pour effectuer des substitutions en indiquant que les ensembles sont identiques. Les setoïdes en Coq permettent de déclarer une nouvelle relation d’équivalence qui peut être utilisée dans certaines tactiques et notamment pendant les réécritures. Quand on peut prouver que deux termes sont équivalents mais pas nécessairement égaux, il est possible de

50 I.2. La théorie des matroïdes : une approche combinatoire cryptomorphique

remplacer l’un des termes par l’autre en utilisant les setoïdes. Nous associons ainsi notre égalité paramétrique qui est une relation d’équivalence pour effectuer des réécritures généralisées dans les différentes parties de la preuve.