Título | Autor |
---|---|
∀ a b c ∈ ℝ, a(bc) = b(ac) |
José A. Alonso |
Demostrar con Lean4 que ∀ a b c ∈ ℝ, a * (b * c) = b * (a * c)
Para ello, completar la siguiente teoría de Lean4:
import Mathlib.Tactic
import Mathlib.Data.Real.Basic
example
(a b c : ℝ) : a * (b * c) = b * (a * c) :=
by sorry
Demostración en lenguaje natural
[mathjax] Por la siguiente cadena de igualdades: \begin{align} a(bc) &= (ab)c &&\text{[por la asociativa]} \ &= (ba)c &&\text{[por la conmutativa]} \ &= b(ac) &&\text{[por la asociativa]} \end{align}
Demostraciones con Lean
import Mathlib.Tactic
import Mathlib.Data.Real.Basic
-- 1ª demostración
example
(a b c : ℝ) : a * (b * c) = b * (a * c) :=
calc
a * (b * c)
= (a * b) * c := by rw [←mul_assoc]
_ = (b * a) * c := by rw [mul_comm a b]
_ = b * (a * c) := by rw [mul_assoc]
-- 1ª demostración
example
(a b c : ℝ) : a * (b * c) = b * (a * c) :=
by
rw [←mul_assoc]
rw [mul_comm a b]
rw [mul_assoc]
-- 3ª demostración
example
(a b c : ℝ) : a * (b * c) = b * (a * c) :=
by ring
Demostraciones interactivas
Se puede interactuar con las demostraciones anteriores en Lean 4 Web.
Referencias
- J. Avigad y P. Massot. Mathematics in Lean, p. 6.