Si R es un anillo y a ∈ R, entonces -(-a) = a
Demostrar que si R es un anillo y a ∈ R, entonces
1 |
-(-a) = a. |
Para ello, completar la siguiente teoría de Lean:
1 2 3 4 5 6 7 |
import algebra.ring variables {R : Type*} [ring R] variable a : R example : -(-a) = a := sorry |
Soluciones con Lean
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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
import algebra.ring variables {R : Type*} [ring R] variable a : R -- 1ª demostración -- =============== example : -(-a) = a := begin calc -(-a) = -(0 - a) : congr_arg (λ x, -x) (zero_sub a).symm ... = a - 0 : neg_sub (0 : R) a ... = a : sub_zero a end -- 2ª demostración -- =============== example : -(-a) = a := begin calc -(-a) = -(0 - a) : by { congr; rw zero_sub} ... = a - 0 : by rw neg_sub ... = a : by rw sub_zero end -- 3ª demostración -- =============== example : -(-a) = a := by simpa only [zero_sub, sub_zero] using (neg_sub (0 : R) a) -- 4ª demostración -- =============== example : -(-a) = a := neg_neg a -- 5ª demostración -- =============== example : -(-a) = a := by simp -- 6ª demostración -- =============== example : -(-a) = a := begin apply neg_eq_of_add_eq_zero_right, rw neg_add_self a, end -- 7ª demostración -- =============== example : -(-a) = a := neg_eq_of_add_eq_zero_right (neg_add_self a) |
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. 12.