Simon Kramer Logique élémentaire EPFL Simon Kramer Logique élémentaire EPFL Preuve formelle Étude de cas 3◦ Formalisation dans Lesp_vect_réels « Théorème de Pythagore »1 11 et 18 mai 2004 Preuve « mathématique » Montrons que deux vecteurs !u et !v sont orthogonaux si et seulement si &!u + !v &2 = &!u&2 + &!v &2 . – Considérons le développement suivant &!u + !v &2 = (!u + !v ) · (!u + !v ) = !u · (!u + !v ) + !v · (!u + !v ) = !u · !u + !u · !v + !v · !u + !v · !v = &!u&2 + &!v &2 + 2!u · !v – L’égalité &!u + !v &2 = &!u&2 + &!v &2 est donc respectée à la seule condition que 2!u · !v = 0 ⇔ !u · !v = 0 ⇔ !u, !v orthogonaux. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 1 preuve « mathématique » tirée du cours Algèbre linéaire, EPFL, 2003 et fournie par Philippe Suter 1 ∀(x ∈ R)∀(y ∈ R)(x + y ∈ R) ∀(x ∈ R)∀(y ∈ R)∀(z ∈ R)(x + (y + z) = (x + y) + z) ∀(x ∈ R)∀(y ∈ R)(x + y = y + x) ∀(x ∈ R)(x + 0 = x) ∀(x ∈ R)∃(−x ∈ R)(x + (−x) = 0) ∀(x ∈ R)∀(y ∈ R)(x·y ∈ R) ∀(x ∈ R)∀(y ∈ R)∀(z ∈ R)(x·(y·z) = (x·y)·z) ∀(x ∈ R)∀(y ∈ R)(x·y = y·x) ∀(x ∈ R)(x·1 = x) ∀(x ∈ R \ {0})∃(x−1 ∈ R \ {0})(x·x−1 = 1) ∀(x ∈ R)∀(y ∈ R)∀(z ∈ R)(x·(y + z) = x·y + x·z) ∀(n ∈ N)∀(!x ∈ Rn )∀(!y ∈ Rn )(!x + !y ∈ Rn ) ∀(n ∈ N)∀(!u ∈ Rn )∀(!v ∈ Rn )(!u · !v = !v · !u ) ∀(n ∈ N)∀(!u ∈ Rn )∀(!v ∈ Rn )∀(w ! ∈ Rn )(!u · (!v + w) ! = !u · !v + !u · w !) n n ∀(n ∈ N)∀(!u ∈ R )∀(!v ∈ R )(!u, !v sont orth. ⇔ !u · !v = 0) ∀(n ∈ N)∀(!u ∈ Rn )(&!u&2 = !u · !u) ∀(x ∈ R)∀(y ∈ R)∀(z ∈ R \ {0})(x = y ⇔ z·x = z·y)) ∀(x ∈ R)∀(y ∈ R)∀(z ∈ R)(x = y ⇔ z + x = z + y)) ∀(x ∈ R)(x·0 = 0) ∀(x ∈ R)(2·x = x + x) n ∈ N ∧ !u ∈ Rn ∧ !v ∈ Rn !u, !v sont orth. ⇔ !u · !v = 0 !u, !v sont orth. ⇔ 2·(!u · !v ) = 2·0 !u, !v sont orth. ⇔ 2·(!u · !v ) = 0 !u, !v sont orth. ⇔ (&!u&2 + &!v &2 ) + 2·(!u · !v ) = (&!u&2 + &!v &2 ) + 0 !u, !v sont orth. ⇔ (&!u&2 + &!v &2 ) + 2·(!u · !v ) = &!u&2 + &!v &2 !u, !v sont orth. ⇔ (&!u&2 + &!v &2 ) + (!u · !v + !u · !v ) = &!u&2 + &!v &2 !u, !v sont orth. ⇔ (!u · !u + !v · !v ) + (!u · !v + !u · !v ) = &!u&2 + &!v &2 !u, !v sont orth. ⇔ (!u · !u + !v · !v ) + (!u · !v + !v · !u) = &!u&2 + &!v &2 !u, !v sont orth. ⇔ (!u · !u + !u · !v ) + (!v · !u + !v · !v ) = &!u&2 + &!v &2 !u, !v sont orth. ⇔ !u · (!u + !v ) + !v · (!u + !v ) = &!u&2 + &!v &2 !u, !v sont orth. ⇔ (!u + !v ) · (!u + !v ) = &!u&2 + &!v &2 !u, !v sont orth. ⇔ &!u + !v &2 = &!u&2 + &!v &2 (n ∈ N ∧ !u ∈ Rn ∧ !v ∈ Rn ) ⇒ (!u, !v sont orth. ⇔ &!u + !v &2 = &!u&2 + &!v &2 ) ∀(n ∈ N)∀(!u ∈ Rn )∀(!v ∈ Rn )(!u, !v sont orth. ⇔ &!u + !v &2 = &!u&2 + &!v &2 )) 2 ax 1 ax 2 ax 3 ax 4 ax 5 ax 6 ax 7 ax 8 ax 9 ax 10 ax 11 ax 12 ax 13 ax 14 ax déf ax déf lem 1 lem 2 lem 3 lem 4 hyp 21, 15 17 19 18 4 20 21, 16 21, 13 2, 3 21, 14 21, 14 21, 16 21, 22 23 Simon Kramer Logique élémentaire EPFL Simon Kramer Logique élémentaire Lemme (1) Commentaires – pour fixer les idées, la preuve porte sur des vecteurs réels – Rn désigne l’espace vectoriel de nombres réels et de dimension n – −x et x−1 sont considérés comme des symboles2 (variables individuelles) et non pas comme des termes – &!u&2 représente un abus de notation pour un (seul) symbole fonctionnel – l’axiome 1 dit que les nombres réels sont clos sous l’opération d’addition – l’axiome 2 dit que l’addition de nombres réels est associative – l’axiome 3 dit que l’addition de nombres réels est commutative – l’axiome 4 dit que 0 désigne un élément neutre à gauche pour l’opération d’addition – l’axiome 5 dit que pour tout nombre réel il existe un nombre inverse pour l’opération d’addition – les axiomes 1–5 disent que l’ensemble des nombres réels forme un groupe commutatif pour l’opération d’addition – l’axiome 6 dit que les nombres réels sont clos sous l’opération de multiplication – l’axiome 7 dit que la multiplication de nombres réels est associative – l’axiome 8 dit que la multiplication de nombres réels est commutative – l’axiome 9 dit que 1 désigne un élément neutre à gauche pour l’opération de multiplication – l’axiome 10 dit que pour tout nombre réel différent de zéro il existe un nombre inverse pour l’opération de multiplication – les axiomes 6–10 disent que l’ensemble des nombres réels sans le nombre zéro forme un groupe commutatif pour l’opération de multiplication – l’axiome 11 dit que la multiplication de nombres réels est distributive par rapport à l’addition de nombres réels – les axiomes 1–4, 6–10 et 11 disent que l’ensemble des nombres réels forme un corps pour l’opération d’addition et de multiplication – l’axiome 12 dit que l’ensemble des vecteurs réels est clos sous l’opération d’addition – l’axiome 13 dit que le produit scalaire est commutatif – l’axiome 14 dit que le produit scalaire est distributif par rapport à l’addition vectorielle – le lemme 2 se montre de façon analogue au lemme 1 – le lemme 3 dit que la constante individuelle 0 désigne un anihilateur à gauche pour l’opération de multiplication – le lemme 4 se montre par induction3 2 3 16.1 16.2 16.3 16.4 16.5 16.6 16.7 16.8 16.9 16.10 16.11 16.12 16.13 16.14 16.15 16.16 16.17 17 x∈R y∈R z ∈ R \ {0} x=y z·x = z·x z·x = z·y hyp hyp hyp hyp théor 16.4, 16.5 z·x = z·y ∃(z −1 ∈ R \ {0})(z·z −1 = 1) z −1 ∈ R \ {0} ∧ z·z −1 = 1 x = x·1 x = x·(z·z −1 ) x = (x·z)·z −1 x = (z·x)·z −1 x = (z·y)·z −1 x = (y·z)·z −1 x = y·(z·z −1 ) x = y·1 x=y x=y x = y ⇔ z·x = z·y z ∈ R \ {0} ⇒ x = y ⇔ z·x = z·y ∀(z ∈ R \ {0})(x = y ⇔ z·x = z·y) y ∈ R ⇒ ∀(z ∈ R \ {0})(x = y ⇔ z·x = z·y) ∀(y ∈ R)∀(z ∈ R \ {0})(x = y ⇔ z·x = z·y) x ∈ R ⇒ ∀(y ∈ R)∀(z ∈ R \ {0})(x = y ⇔ z·x = z·y) ∀(x ∈ R)∀(y ∈ R)∀(z ∈ R \ {0})(x = y ⇔ z·x = z·y) au même titre qu’une variable primée x! sujet pas abordé dans ce cours 3 EPFL 4 hyp 16.3, 10 hyp 9 16.9 7 8 16.7 8 7 16.9 9 Simon Kramer Logique élémentaire EPFL Lemme (3) 18.1 18.2 18.3 18.4 18.5 18.6 18.7 19 x∈R 0+0=0 x·0 = x·(0 + 0) x·0 = x·0 + x·0 x·0 + 0 = x·0 x·0 + 0 = x·0 + x·0 0 = x·0 x·0 = 0 ∀(x ∈ R)(x·0 = 0) 5 hyp 4 18.2 11 4 18.3, 18.4 18.5, lem 2 18.6