Si R es un retículo tal que (∀ x y z ∈ R, x ⊓ (y ⊔ z) = (x ⊓ y) ⊔ (x ⊓ z))), entonces (∀ a b c ∈ R, (a ⊔ b) ⊓ c = (a ⊓ c) ⊔ (b ⊓ c))
Demostrar que si R es un retículo tal que
1 |
(∀ x y z ∈ R, x ⊓ (y ⊔ z) = (x ⊓ y) ⊔ (x ⊓ z))), |
entonces
1 |
(∀ a b c ∈ R, (a ⊔ b) ⊓ c = (a ⊓ c) ⊔ (b ⊓ c)) |
Para ello, completar la siguiente teoría de Lean:
1 2 3 4 5 6 7 |
import order.lattice variables {R : Type*} [lattice R] example (h : ∀ x y z : R, x ⊓ (y ⊔ z) = (x ⊓ y) ⊔ (x ⊓ z)) : ∀ a b c : R, (a ⊔ b) ⊓ c = (a ⊓ c) ⊔ (b ⊓ c) := sorry |
Soluciones con Lean
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
import order.lattice variables {R : Type*} [lattice R] example (h : ∀ x y z : R, x ⊓ (y ⊔ z) = (x ⊓ y) ⊔ (x ⊓ z)) : ∀ a b c : R, (a ⊔ b) ⊓ c = (a ⊓ c) ⊔ (b ⊓ c) := begin intros a b c, calc (a ⊔ b) ⊓ c = c ⊓ (a ⊔ b) : by rw inf_comm ... = (c ⊓ a) ⊔ (c ⊓ b) : by rw h ... = (a ⊓ c) ⊔ (c ⊓ b) : by rw [@inf_comm _ _ c a] ... = (a ⊓ c) ⊔ (b ⊓ c) : by rw [@inf_comm _ _ c b] end |
Se puede interactuar con la prueba anterior en esta sesión con Lean.
Referencias
- J. Avigad, K. Buzzard, R.Y. Lewis y P. Massot. Mathematics in Lean, p. 23.