Step
*
1
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. 0 ≤ n
10. coW-pos-lens(moves[0];0;0)
11. ↓Legal1(InitialPos(coW-game(a.B[a];w;w'));moves[1])
⊢ coW-pos-lens(moves[1];0;1) ∨ coW-pos-lens(moves[1];1;0)
BY
{ ((MoveToConcl (-1) THEN (GenConclTerm ⌜moves[1]⌝⋅ THENA Auto))
   THEN Thin (-1)
   THEN RepUR ``sg-pos coW-game`` -1
   THEN D -1
   THEN RepUR ``sg-init sg-legal1 coW-game coW-pos-lens`` 0
   THEN (Assert copath-length(()) = 0 ∈ ℤ BY
               (Computation THEN Auto))
   THEN HypSubst' (-1) 0
   THEN Reduce 0
   THEN (D 0 THENA Auto)
   THEN ((Decide ⌜copath-length(v1) = 0 ∈ ℤ⌝⋅ THENA Auto) THENL [OrLeft; OrRight])
   THEN Auto
   THEN SplitOrHyps
   THEN Auto) }
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.  0  \mleq{}  n
10.  coW-pos-lens(moves[0];0;0)
11.  \mdownarrow{}Legal1(InitialPos(coW-game(a.B[a];w;w'));moves[1])
\mvdash{}  coW-pos-lens(moves[1];0;1)  \mvee{}  coW-pos-lens(moves[1];1;0)
By
Latex:
((MoveToConcl  (-1)  THEN  (GenConclTerm  \mkleeneopen{}moves[1]\mkleeneclose{}\mcdot{}  THENA  Auto))
  THEN  Thin  (-1)
  THEN  RepUR  ``sg-pos  coW-game``  -1
  THEN  D  -1
  THEN  RepUR  ``sg-init  sg-legal1  coW-game  coW-pos-lens``  0
  THEN  (Assert  copath-length(())  =  0  BY
                          (Computation  THEN  Auto))
  THEN  HypSubst'  (-1)  0
  THEN  Reduce  0
  THEN  (D  0  THENA  Auto)
  THEN  ((Decide  \mkleeneopen{}copath-length(v1)  =  0\mkleeneclose{}\mcdot{}  THENA  Auto)  THENL  [OrLeft;  OrRight])
  THEN  Auto
  THEN  SplitOrHyps
  THEN  Auto)
Home
Index