Step
*
2
1
1
of Lemma
coW-game-step-isom
.....aux..... 
1. A : 𝕌'
2. B : A ⟶ Type
3. w : coW(A;a.B[a])
4. w' : coW(A;a.B[a])
5. t : coW-dom(a.B[a];w)
6. b : coW-dom(a.B[a];w')
7. λp.let u,v = p 
      in <copath-cons(t;u), copath-cons(b;v)> ∈ Pos(sg-normalize(coW-game(a.B[a];coW-item(w;t);coW-item(w';b))))
   ⟶ Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()), copath-cons(b;())>)
8. Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()), copath-cons(b;())>) ⊆r {p:copath(a.B[a];w) × copath(a.B[a];w')| 
                                                 let p1,p2 = p 
                                                 in (0 < copath-length(p1) ∧ (copath-hd(p1) = t ∈ coW-dom(a.B[a];w)))
                                                    ∧ 0 < copath-length(p2)
                                                    ∧ (copath-hd(p2) = b ∈ coW-dom(a.B[a];w'))} 
9. p : Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()), copath-cons(b;())>)
⊢ let u,v = p 
  in <copath-tl(u), copath-tl(v)>
  ∈ {p:Pos(coW-game(a.B[a];coW-item(w;t);coW-item(w';b)))| 
     sg-reachable(coW-game(a.B[a];coW-item(w;t);coW-item(w';b));InitialPos(coW-game(a.B[a];coW-item(w;t);...));p)} 
BY
{ ((Assert p ∈ {p:copath(a.B[a];w) × copath(a.B[a];w')| 
                let p1,p2 = p 
                in (0 < copath-length(p1) ∧ (copath-hd(p1) = t ∈ coW-dom(a.B[a];w)))
                   ∧ 0 < copath-length(p2)
                   ∧ (copath-hd(p2) = b ∈ coW-dom(a.B[a];w'))}  BY
          Auto)
   THEN (RWO "sg-pos-change-init" (-2) THENA Auto)
   THEN (D -2 THENA Auto)) }
1
1. A : 𝕌'
2. B : A ⟶ Type
3. w : coW(A;a.B[a])
4. w' : coW(A;a.B[a])
5. t : coW-dom(a.B[a];w)
6. b : coW-dom(a.B[a];w')
7. λp.let u,v = p 
      in <copath-cons(t;u), copath-cons(b;v)> ∈ Pos(sg-normalize(coW-game(a.B[a];coW-item(w;t);coW-item(w';b))))
   ⟶ Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()), copath-cons(b;())>)
8. Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()), copath-cons(b;())>) ⊆r {p:copath(a.B[a];w) × copath(a.B[a];w')| 
                                                 let p1,p2 = p 
                                                 in (0 < copath-length(p1) ∧ (copath-hd(p1) = t ∈ coW-dom(a.B[a];w)))
                                                    ∧ 0 < copath-length(p2)
                                                    ∧ (copath-hd(p2) = b ∈ coW-dom(a.B[a];w'))} 
9. p : Pos(coW-game(a.B[a];w;w'))
10. sg-reachable(coW-game(a.B[a];w;w');<copath-cons(t;()), copath-cons(b;())>p)
11. p ∈ {p:copath(a.B[a];w) × copath(a.B[a];w')| 
         let p1,p2 = p 
         in (0 < copath-length(p1) ∧ (copath-hd(p1) = t ∈ coW-dom(a.B[a];w)))
            ∧ 0 < copath-length(p2)
            ∧ (copath-hd(p2) = b ∈ coW-dom(a.B[a];w'))} 
⊢ let u,v = p 
  in <copath-tl(u), copath-tl(v)>
  ∈ {p:Pos(coW-game(a.B[a];coW-item(w;t);coW-item(w';b)))| 
     sg-reachable(coW-game(a.B[a];coW-item(w;t);coW-item(w';b));InitialPos(coW-game(a.B[a];coW-item(w;t);...));p)} 
Latex:
Latex:
.....aux..... 
1.  A  :  \mBbbU{}'
2.  B  :  A  {}\mrightarrow{}  Type
3.  w  :  coW(A;a.B[a])
4.  w'  :  coW(A;a.B[a])
5.  t  :  coW-dom(a.B[a];w)
6.  b  :  coW-dom(a.B[a];w')
7.  \mlambda{}p.let  u,v  =  p 
            in  <copath-cons(t;u),  copath-cons(b;v)>
      \mmember{}  Pos(sg-normalize(coW-game(a.B[a];coW-item(w;t);coW-item(w';b))))
      {}\mrightarrow{}  Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()),  copath-cons(b;())>)
8.  Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()),  copath-cons(b;())>)  \msubseteq{}r  \{p:copath(a.B[a];w)  \mtimes{}  copath\000C(a.B[a];w')| 
                                                                                                  let  p1,p2  =  p 
                                                                                                  in  (0  <  copath-length(p1)  \mwedge{}  (copath-hd(p1)  =  t))
                                                                                                        \mwedge{}  0  <  copath-length(p2)
                                                                                                        \mwedge{}  (copath-hd(p2)  =  b)\} 
9.  p  :  Pos(coW-game(a.B[a];w;w')@<copath-cons(t;()),  copath-cons(b;())>)
\mvdash{}  let  u,v  =  p 
    in  <copath-tl(u),  copath-tl(v)>
    \mmember{}  \{p:Pos(coW-game(a.B[a];coW-item(w;t);coW-item(w';b)))| 
          sg-reachable(coW-game(a.B[a];coW-item(w;t);coW-item(w';b));InitialPos(...);p)\} 
By
Latex:
((Assert  p  \mmember{}  \{p:copath(a.B[a];w)  \mtimes{}  copath(a.B[a];w')| 
                            let  p1,p2  =  p 
                            in  (0  <  copath-length(p1)  \mwedge{}  (copath-hd(p1)  =  t))
                                  \mwedge{}  0  <  copath-length(p2)
                                  \mwedge{}  (copath-hd(p2)  =  b)\}    BY
                Auto)
  THEN  (RWO  "sg-pos-change-init"  (-2)  THENA  Auto)
  THEN  (D  -2  THENA  Auto))
Home
Index