--- Título: ∀ a b c ∈ ℝ, (cb)a = b(ac) Autor: José A. Alonso --- Demostrar con Lean4 que los números reales tienen la siguiente propiedad
(c * b) * a = b * (a * c)
Para ello, completar la siguiente teoría de Lean:
import Mathlib.Tactic
import Mathlib.Data.Real.Basic

example (a b c : ℝ) : (c * b) * a = b * (a * c) :=
by sorry
Demostración en lenguaje natural [mathjax] Por la siguiente cadena de igualdades: \begin{align} (cb)a &= (bc)a &&\text{[por la conmutativa]} \\ &= b(ca) &&\text{[por la asociativa]} \\ &= b(ac) &&\text{[por la conmutativa]} \end{align} Demostraciones con Lean4
import Mathlib.Tactic
import Mathlib.Data.Real.Basic

-- 1ª demostración
example
  (a b c : ℝ)
  : (c * b) * a = b * (a * c) :=
calc
  (c * b) * a
    = (b * c) * a := by rw [mul_comm c b]
  _ = b * (c * a) := by rw [mul_assoc]
  _ = b * (a * c) := by rw [mul_comm c a]

-- 2ª demostración
example
  (a b c : ℝ)
  : (c * b) * a = b * (a * c) :=
by
  rw [mul_comm c b]
  rw [mul_assoc]
  rw [mul_comm c a]

-- 3ª demostración
example
  (a b c : ℝ)
  : (c * b) * a = b * (a * c) :=
by ring
Demostraciones interactivas Se puede interactuar con las demostraciones anteriores en Lean 4 Web. Referencias