ForMatUS: Pruebas en Lean de que las partes estrictas son irreflexivas
He añadido a la lista Lógica con Lean el vídeo en el que se comentan 2 pruebas en Lean de que las partes estrictas son irreflexivas usando los estilos aplicativos y declarativos.
A continuación, se muestra el vídeo
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 |
-- ---------------------------------------------------- -- Ej. 1. La parte estricta de una relación R es la -- relación R' definida por -- R' a b := R a b ∧ a ≠ b -- -- Demostrar que la parte estricta de cualquier -- relación es irreflexiva. -- ---------------------------------------------------- import tactic section parameter {A : Type} parameter (R : A → A → Prop) definition R' (a b : A) : Prop := R a b ∧ a ≠ b #reduce irreflexive R -- 1ª demostración example : irreflexive R' := begin intros a h, cases h with h1 h2, apply h2, refl, end -- 2ª demostración example : irreflexive R' := assume a, assume : R' a a, have a ≠ a, from and.right this, have a = a, from rfl, show false, from ‹a ≠ a› ‹a = a› end |