Step
*
2
2
1
of Lemma
coW-play-invariant
1. [A] : 𝕌'
2. B : A ⟶ Type
3. w : coW(A;a.B[a])
4. w' : coW(A;a.B[a])
5. n : ℕ
6. s : win2strat(coW-game(a.B[a];w;w');n)
7. moves : strat2play(coW-game(a.B[a];w;w');n;s)
8. moves[0] = InitialPos(coW-game(a.B[a];w;w')) ∈ Pos(coW-game(a.B[a];w;w'))
9. ∀i:ℕn + 1
     ((↓Legal1(moves[2 * i];moves[(2 * i) + 1]))
     ∧ (i < n
       
⇒ ((↓Legal2(moves[(2 * i) + 1];moves[2 * (i + 1)]))
          ∧ (moves[2 * (i + 1)] = (s play-truncate(moves;2 * (i + 1))) ∈ Pos(coW-game(a.B[a];w;w'))))))
10. i : ℤ
11. [%4] : 0 < i
12. i ≤ n
13. coW-pos-lens(moves[2 * i];i;i)
14. ↓Legal1(moves[2 * i];moves[(2 * i) + 1])
⊢ coW-pos-lens(moves[(2 * i) + 1];i;i + 1) ∨ coW-pos-lens(moves[(2 * i) + 1];i + 1;i)
BY
{ (RepeatFor 2 (MoveToConcl (-1))
   THEN (GenConclTerm ⌜moves[(2 * i) + 1]⌝⋅ THENA Auto)
   THEN Thin (-1)
   THEN RepUR ``sg-pos coW-game`` -1
   THEN D -1
   THEN (GenConclTerm ⌜moves[2 * i]⌝⋅ THENA Auto)
   THEN Thin (-1)
   THEN RepUR ``sg-pos coW-game`` -1
   THEN D -1
   THEN RepUR ``sg-legal1 coW-game coW-pos-lens`` 0
   THEN Auto) }
1
1. [A] : 𝕌'
2. B : A ⟶ Type
3. w : coW(A;a.B[a])
4. w' : coW(A;a.B[a])
5. n : ℕ
6. s : win2strat(coW-game(a.B[a];w;w');n)
7. moves : strat2play(coW-game(a.B[a];w;w');n;s)
8. moves[0] = InitialPos(coW-game(a.B[a];w;w')) ∈ Pos(coW-game(a.B[a];w;w'))
9. ∀i:ℕn + 1
     ((↓Legal1(moves[2 * i];moves[(2 * i) + 1]))
     ∧ (i < n
       
⇒ ((↓Legal2(moves[(2 * i) + 1];moves[2 * (i + 1)]))
          ∧ (moves[2 * (i + 1)] = (s play-truncate(moves;2 * (i + 1))) ∈ Pos(coW-game(a.B[a];w;w'))))))
10. i : ℤ
11. [%4] : 0 < i
12. i ≤ n
13. v1 : copath(a.B[a];w)
14. v2 : copath(a.B[a];w')
15. v3 : copath(a.B[a];w)
16. v4 : copath(a.B[a];w')
17. copath-length(v3) = i ∈ ℤ
18. copath-length(v4) = i ∈ ℤ
19. ↓((copath-length(v1) = (copath-length(v3) + 1) ∈ ℤ) ∧ copathAgree(a.B[a];w;v3;v1) ∧ (v4 = v2 ∈ copath(a.B[a];w')))
     ∨ ((v3 = v1 ∈ copath(a.B[a];w)) ∧ (copath-length(v2) = (copath-length(v4) + 1) ∈ ℤ) ∧ copathAgree(a.B[a];w';v4;v2))
⊢ ((copath-length(v1) = i ∈ ℤ) ∧ (copath-length(v2) = (i + 1) ∈ ℤ))
∨ ((copath-length(v1) = (i + 1) ∈ ℤ) ∧ (copath-length(v2) = i ∈ ℤ))
Latex:
Latex:
1.  [A]  :  \mBbbU{}'
2.  B  :  A  {}\mrightarrow{}  Type
3.  w  :  coW(A;a.B[a])
4.  w'  :  coW(A;a.B[a])
5.  n  :  \mBbbN{}
6.  s  :  win2strat(coW-game(a.B[a];w;w');n)
7.  moves  :  strat2play(coW-game(a.B[a];w;w');n;s)
8.  moves[0]  =  InitialPos(coW-game(a.B[a];w;w'))
9.  \mforall{}i:\mBbbN{}n  +  1
          ((\mdownarrow{}Legal1(moves[2  *  i];moves[(2  *  i)  +  1]))
          \mwedge{}  (i  <  n
              {}\mRightarrow{}  ((\mdownarrow{}Legal2(moves[(2  *  i)  +  1];moves[2  *  (i  +  1)]))
                    \mwedge{}  (moves[2  *  (i  +  1)]  =  (s  play-truncate(moves;2  *  (i  +  1)))))))
10.  i  :  \mBbbZ{}
11.  [\%4]  :  0  <  i
12.  i  \mleq{}  n
13.  coW-pos-lens(moves[2  *  i];i;i)
14.  \mdownarrow{}Legal1(moves[2  *  i];moves[(2  *  i)  +  1])
\mvdash{}  coW-pos-lens(moves[(2  *  i)  +  1];i;i  +  1)  \mvee{}  coW-pos-lens(moves[(2  *  i)  +  1];i  +  1;i)
By
Latex:
(RepeatFor  2  (MoveToConcl  (-1))
  THEN  (GenConclTerm  \mkleeneopen{}moves[(2  *  i)  +  1]\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  Thin  (-1)
  THEN  RepUR  ``sg-pos  coW-game``  -1
  THEN  D  -1
  THEN  (GenConclTerm  \mkleeneopen{}moves[2  *  i]\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  Thin  (-1)
  THEN  RepUR  ``sg-pos  coW-game``  -1
  THEN  D  -1
  THEN  RepUR  ``sg-legal1  coW-game  coW-pos-lens``  0
  THEN  Auto)
Home
Index