Step
*
1
of Lemma
nim-sum_wf
1. x : ℕ
2. ∀x:ℕx. ∀[y:ℕ]. (nim-sum(x;y) ∈ ℕ)
3. y : ℕ
4. ¬(x = 0 ∈ ℤ)
5. ¬(y = 0 ∈ ℤ)
6. x = (((x ÷ 2) * 2) + (x rem 2)) ∈ ℤ
7. (0 ≤ (x rem 2)) ∧ x rem 2 < 2
8. y = (((y ÷ 2) * 2) + (y rem 2)) ∈ ℤ
9. (0 ≤ (y rem 2)) ∧ y rem 2 < 2
⊢ eval rx = x rem 2 in
eval qx = x ÷ 2 in
eval ry = y rem 2 in
eval qy = y ÷ 2 in
eval s = nim-sum(qx;qy) in
eval d = if rx=ry then 0 else 1 in
(2 * s) + d ∈ ℕ
BY
{ ((InstHyp [⌜x ÷ 2⌝;⌜y ÷ 2⌝] 2⋅ THENA Auto) THEN Repeat ((CallByValueReduce 0⋅ THENA Auto)) THEN Auto) }
Latex:
Latex:
1. x : \mBbbN{}
2. \mforall{}x:\mBbbN{}x. \mforall{}[y:\mBbbN{}]. (nim-sum(x;y) \mmember{} \mBbbN{})
3. y : \mBbbN{}
4. \mneg{}(x = 0)
5. \mneg{}(y = 0)
6. x = (((x \mdiv{} 2) * 2) + (x rem 2))
7. (0 \mleq{} (x rem 2)) \mwedge{} x rem 2 < 2
8. y = (((y \mdiv{} 2) * 2) + (y rem 2))
9. (0 \mleq{} (y rem 2)) \mwedge{} y rem 2 < 2
\mvdash{} eval rx = x rem 2 in
eval qx = x \mdiv{} 2 in
eval ry = y rem 2 in
eval qy = y \mdiv{} 2 in
eval s = nim-sum(qx;qy) in
eval d = if rx=ry then 0 else 1 in
(2 * s) + d \mmember{} \mBbbN{}
By
Latex:
((InstHyp [\mkleeneopen{}x \mdiv{} 2\mkleeneclose{};\mkleeneopen{}y \mdiv{} 2\mkleeneclose{}] 2\mcdot{} THENA Auto)
THEN Repeat ((CallByValueReduce 0\mcdot{} THENA Auto))
THEN Auto)
Home
Index