Step
*
1
of Lemma
nim-sum-assoc
1. x : ℕ
2. ∀x:ℕx. ∀[y,z:ℕ].  (nim-sum(x;nim-sum(y;z)) = nim-sum(nim-sum(x;y);z) ∈ ℤ)
3. y : ℕ
4. z : ℕ
5. ¬(x = 0 ∈ ℤ)
⊢ nim-sum(x;nim-sum(y;z)) = nim-sum(nim-sum(x;y);z) ∈ ℤ
BY
{ ((InstLemma `div_rem_sum` [⌜x⌝;⌜2⌝]⋅ THENA Auto)
   THEN (InstLemma `rem_bounds_1` [⌜x⌝;⌜2⌝]⋅ THENA Auto)
   THEN (InstHyp [⌜x ÷ 2⌝] 2⋅ THENA Auto)
   THEN (RWO "nim-sum-rec" 0⋅ THEN Auto)
   THEN (RWO "nim-sum-div2 nim-sum-rem2" 0 THENA Auto)
   THEN EqCD
   THEN Auto) }
1
.....subterm..... T:t
2:n
1. x : ℕ
2. ∀x:ℕx. ∀[y,z:ℕ].  (nim-sum(x;nim-sum(y;z)) = nim-sum(nim-sum(x;y);z) ∈ ℤ)
3. y : ℕ
4. z : ℕ
5. ¬(x = 0 ∈ ℤ)
6. x = (((x ÷ 2) * 2) + (x rem 2)) ∈ ℤ
7. 0 ≤ (x rem 2)
8. x rem 2 < 2
9. ∀[y,z:ℕ].  (nim-sum(x ÷ 2;nim-sum(y;z)) = nim-sum(nim-sum(x ÷ 2;y);z) ∈ ℤ)
⊢ if x rem 2=if y rem 2=z rem 2 then 0 else 1 then 0 else 1
= if if x rem 2=y rem 2 then 0 else 1=z rem 2 then 0 else 1
∈ ℤ
Latex:
Latex:
1.  x  :  \mBbbN{}
2.  \mforall{}x:\mBbbN{}x.  \mforall{}[y,z:\mBbbN{}].    (nim-sum(x;nim-sum(y;z))  =  nim-sum(nim-sum(x;y);z))
3.  y  :  \mBbbN{}
4.  z  :  \mBbbN{}
5.  \mneg{}(x  =  0)
\mvdash{}  nim-sum(x;nim-sum(y;z))  =  nim-sum(nim-sum(x;y);z)
By
Latex:
((InstLemma  `div\_rem\_sum`  [\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}2\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (InstLemma  `rem\_bounds\_1`  [\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}2\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (InstHyp  [\mkleeneopen{}x  \mdiv{}  2\mkleeneclose{}]  2\mcdot{}  THENA  Auto)
  THEN  (RWO  "nim-sum-rec"  0\mcdot{}  THEN  Auto)
  THEN  (RWO  "nim-sum-div2  nim-sum-rem2"  0  THENA  Auto)
  THEN  EqCD
  THEN  Auto)
Home
Index