Pour résoudre ces exercices, vous pouvez utiliser les théorèmes suivants (déjà prouvés dans Naturels) :
add_0_l : ∀ n : nat, 0 + n = nadd_0_r : ∀ n : nat, n + 0 = nadd_1_l : ∀ n : nat, 1 + n = S nadd_1_r : ∀ n : nat, n + 1 = S nadd_succ_l : ∀ n m : nat, S n + m = S (n + m)add_succ_r : ∀ n m : nat, n + S m = S (n + m)add_comm : ∀ n m : nat, n + m = m + nadd_assoc : ∀ n m p : nat, n + (m + p) = (n + m) + pmul_0_l : ∀ n : nat, 0 * n = 0mul_0_r : ∀ n : nat, n * 0 = 0mul_1_l : ∀ n : nat, 1 * n = nmul_1_r : ∀ n : nat, n * 1 = nmul_succ_l : ∀ n m : nat, S n * m = n * m + mmul_succ_r : ∀ n m : nat, n * S m = n * m + nmul_comm : ∀ n m : nat, n * m = m * n
ainsi, bien sûr, que les théorèmes prouvés précédemment dans ce sujet.
Check.
n ou de
m (utiliser
la tactique
destruct).
Utiliser
rewrite et les théorèmes précédents.