2015-02-05 10:15:58 -08:00
|
|
|
import data.nat
|
|
|
|
open algebra
|
|
|
|
|
|
|
|
constant f {A : Type} : A → A → A
|
|
|
|
|
|
|
|
theorem test1 {A : Type} [s : comm_ring A] (a b c : A) (H : a + 0 = 0) : f a a = f 0 0 :=
|
2015-03-27 17:26:06 -07:00
|
|
|
by rewrite [add_zero at H, H]
|
2015-02-05 10:15:58 -08:00
|
|
|
|
|
|
|
theorem test2 {A : Type} [s : comm_ring A] (a b c : A) (H : a + 0 = 0) : f a a = f 0 0 :=
|
2015-03-27 17:26:06 -07:00
|
|
|
by rewrite [add_zero at *, H]
|
2015-02-05 10:15:58 -08:00
|
|
|
|
|
|
|
theorem test3 {A : Type} [s : comm_ring A] (a b c : A) (H : a + 0 = 0 + 0) : f a a = f 0 0 :=
|
2015-03-27 17:26:06 -07:00
|
|
|
by rewrite [add_zero at H, zero_add at H, H]
|