Si c = da+b y b = ad, entonces c = 2ad
Demostrar con Lean4 que si a, b, c y d son números reales tales que
1 2 |
c = d * a + b b = a * d |
entonces
1 |
c = 2 * a * d |
Para ello, completar la siguiente teoría de Lean4:
1 2 3 4 5 6 7 8 9 10 |
import Mathlib.Data.Real.Basic import Mathlib.Tactic variable (a b c d : ℝ) example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := sorry |
Demostración en lenguaje natural
Por la siguiente cadena de igualdades
\begin{align}
c &= da + b &&\text{[por la primera hipótesis]} \\
&= da + ad &&\text{[por la segunda hipótesis]} \\
&= ad + ad &&\text{[por la conmutativa]} \\
&= 2(ad) &&\text{[por la def. de doble]} \\
&= 2ad &&\text{[por la asociativa]}
\end{align}
Demostraciones con Lean
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
import Mathlib.Data.Real.Basic import Mathlib.Tactic variable (a b c d : ℝ) -- 1ª demostración example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := calc c = d * a + b := by rw [h1] _ = d * a + a * d := by rw [h2] _ = a * d + a * d := by rw [mul_comm d a] _ = 2 * (a * d) := by rw [← two_mul (a * d)] _ = 2 * a * d := by rw [mul_assoc] -- 2ª demostración example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := by rw [h2] at h1 clear h2 rw [mul_comm d a] at h1 rw [← two_mul (a*d)] at h1 rw [← mul_assoc 2 a d] at h1 exact h1 -- 3ª demostración example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := by rw [h1, h2, mul_comm d a, ← two_mul (a * d), mul_assoc] -- 4ª demostración example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := by rw [h1] rw [h2] ring -- 5ª demostración example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := by rw [h1, h2] ring -- 6ª demostración example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := by rw [h1, h2] ; ring -- 7ª demostración example (h1 : c = d * a + b) (h2 : b = a * d) : c = 2 * a * d := by linarith |
Demostraciones interactivas
Se puede interactuar con las demostraciones anteriores en Lean 4 Web.
Referencias
- J. Avigad y P. Massot. Mathematics in Lean, p. 8.