Skip to main content

Si bc = ef, entonces ((ab)c)d = ((ae)f)d

Demostrar con Lean4 que si \(bc = ef\), entonces \(((ab)c)d = ((ae)f)d\).

Para ello, completar la siguiente teoría de Lean4:

import Mathlib.Data.Real.Basic
import Mathlib.Tactic

example
  (a b c d e f : )
  (h : b * c = e * f)
  : ((a * b) * c) * d = ((a * e) * f) * d :=
by sorry

Demostración en lenguaje natural

Por la siguiente cadena de igualdades \begin{align} ((ab)c)d &= (a(bc))d &&\text{[por la asociativa]} \newline &= (a(ef))d &&\text{[por la hipótesis]} \newline &= ((ae)f)d &&\text{[por la asociativa]} \end{align}

Demostraciones con Lean

import Mathlib.Data.Real.Basic
import Mathlib.Tactic

-- 1ª demostración
example
  (a b c d e f : )
  (h : b * c = e * f)
  : ((a * b) * c) * d = ((a * e) * f) * d :=
calc
  ((a * b) * c) * d
    = (a * (b * c)) * d := by rw [mul_assoc a]
  _ = (a * (e * f)) * d := by rw [h]
  _ = ((a * e) * f) * d := by rw [mul_assoc a]

-- 2ª demostración
example
  (a b c d e f : )
  (h : b * c = e * f)
  : ((a * b) * c) * d = ((a * e) * f) * d :=
by
  rw [mul_assoc a]
  rw [h]
  rw [mul_assoc a]

-- 3ª demostración
example
  (a b c d e f : )
  (h : b * c = e * f)
  : ((a * b) * c) * d = ((a * e) * f) * d :=
by
  rw [mul_assoc a, h, mul_assoc a]

Demostraciones interactivas

Se puede interactuar con las demostraciones anteriores en Lean 4 Web.

Referencias