2014-01-20 07:26:34 +00:00
|
|
|
|
Set: pp::colors
|
|
|
|
|
Set: pp::unicode
|
|
|
|
|
Defined: double
|
2014-02-02 02:27:14 +00:00
|
|
|
|
¬ 0 = 1
|
2014-01-20 07:26:34 +00:00
|
|
|
|
⊤
|
|
|
|
|
9
|
2014-02-02 02:27:14 +00:00
|
|
|
|
0 = 1
|
|
|
|
|
3 ≤ 2 + 2 + (2 + 2) + 1
|
2014-01-20 23:38:00 +00:00
|
|
|
|
3 ≤ 2 * 2 + (2 * 2 + (2 * 2 + (2 * 2 + 1)))
|
2014-01-20 07:26:34 +00:00
|
|
|
|
Assumed: a
|
|
|
|
|
Assumed: b
|
|
|
|
|
Assumed: c
|
|
|
|
|
Assumed: d
|
2014-01-20 23:38:00 +00:00
|
|
|
|
a * c + (a * d + (b * c + b * d))
|
2014-01-20 07:26:34 +00:00
|
|
|
|
trans (Nat::distributel a b (c + d))
|
|
|
|
|
(trans (congr (congr2 Nat::add (Nat::distributer a c d)) (Nat::distributer b c d))
|
2014-01-20 23:38:00 +00:00
|
|
|
|
(Nat::add_assoc (a * c) (a * d) (b * c + b * d)))
|
2014-01-20 07:26:34 +00:00
|
|
|
|
Proved: congr2_congr1
|
|
|
|
|
Proved: congr2_congr2
|
|
|
|
|
Proved: congr1_congr2
|
|
|
|
|
⊤
|
|
|
|
|
trans (congr (congr2 eq
|
2014-02-10 00:15:44 +00:00
|
|
|
|
(congr1 (congr2 Nat::add (trans (congr2 (ite (a > 0) b) (Nat::add_zeror b)) (if_a_a (a > 0) b)))
|
|
|
|
|
10))
|
|
|
|
|
(congr1 (congr2 Nat::add (if_a_a (a > 0) b)) 10))
|
2014-01-20 07:26:34 +00:00
|
|
|
|
(eq_id (b + 10))
|
2014-01-23 05:44:24 +00:00
|
|
|
|
trans (congr (congr2 (λ x : ℕ, eq ((λ x : ℕ, x + 10) x))
|
|
|
|
|
(trans (congr2 (ite (a > 0) b) (Nat::add_zeror b)) (if_a_a (a > 0) b)))
|
|
|
|
|
(congr2 (λ x : ℕ, x + 10) (if_a_a (a > 0) b)))
|
|
|
|
|
(eq_id (b + 10))
|
2014-01-20 23:38:00 +00:00
|
|
|
|
a * a + (a * b + (b * a + b * b))
|
2014-01-29 20:01:01 +00:00
|
|
|
|
⊤ → ⊥ refl (⊤ → ⊥) false
|
|
|
|
|
⊤ → ⊤ refl (⊤ → ⊤) false
|
2014-01-31 23:55:12 +00:00
|
|
|
|
⊥ → ⊤ imp_congr (refl ⊥) (λ C::1 : ⊥, eqt_intro C::1) false
|
2014-02-02 02:27:14 +00:00
|
|
|
|
⊤ ↔ ⊥ refl (⊤ ↔ ⊥) false
|