Step * 2 1 of Lemma WfdSpread-induction


1. [Pos] Type
2. eq EqDecider(Pos)
3. ∀a,b:Pos.  Dec(a b ∈ Pos)
4. [Mv] Pos ⟶ Type
5. [P] WfdSpread(Pos;a.Mv[a]) ⟶ ℙ
6. ∀a:Pos. ∀f:Mv[a] ⟶ WfdSpread(Pos;a.Mv[a]).  ((∀m:Mv[a]. P[f m])  P[mkW(a;f)])
7. WfdSpread(Pos;a.Mv[a])@i
8. : ℕ@i
9. : ℕn ⟶ MoveChoice(Pos;a.Mv[a])@i
10. ∀t:MoveChoice(Pos;a.Mv[a]). case W_sel(w;n 1;s++t) of inl(w) => P[w] inr(z) => True
11. WfdSpread(Pos;a.Mv[a]) ≡ a:Pos × (Mv[a] ⟶ WfdSpread(Pos;a.Mv[a]))
12. Pos@i
13. Mv[a] ⟶ WfdSpread(Pos;a.Mv[a])@i
14. W_sel(w;n;s) (inl mkW(a;f)) ∈ (WfdSpread(Pos;a.Mv[a])?)
⊢ P[mkW(a;f)]
BY
TACTIC:(BackThruSomeHyp
          THEN Auto
          THEN (InstHyp [⌜λb.if eq then inl else inr ⋅  fi ⌝(-6)⋅ THENA Auto)
          THEN (Subst ⌜W_sel(w;n 1;s++λb.if eq then inl else inr ⋅  fi )
                       (inl (f m))
                       ∈ (WfdSpread(Pos;a.Mv[a])?)⌝ (-1)⋅
          THENM (Reduce (-1) THEN Trivial)
          )
          THEN Auto
          THEN Thin (-1)) }

1
1. Pos Type
2. eq EqDecider(Pos)
3. ∀a,b:Pos.  Dec(a b ∈ Pos)
4. Mv Pos ⟶ Type
5. WfdSpread(Pos;a.Mv[a]) ⟶ ℙ
6. ∀a:Pos. ∀f:Mv[a] ⟶ WfdSpread(Pos;a.Mv[a]).  ((∀m:Mv[a]. P[f m])  P[mkW(a;f)])
7. WfdSpread(Pos;a.Mv[a])@i
8. : ℕ@i
9. : ℕn ⟶ MoveChoice(Pos;a.Mv[a])@i
10. ∀t:MoveChoice(Pos;a.Mv[a]). case W_sel(w;n 1;s++t) of inl(w) => P[w] inr(z) => True
11. WfdSpread(Pos;a.Mv[a]) ≡ a:Pos × (Mv[a] ⟶ WfdSpread(Pos;a.Mv[a]))
12. Pos@i
13. Mv[a] ⟶ WfdSpread(Pos;a.Mv[a])@i
14. W_sel(w;n;s) (inl mkW(a;f)) ∈ (WfdSpread(Pos;a.Mv[a])?)
15. Mv[a]@i
⊢ W_sel(w;n 1;s++λb.if eq then inl else inr ⋅  fi (inl (f m)) ∈ (WfdSpread(Pos;a.Mv[a])?)


Latex:


Latex:

1.  [Pos]  :  Type
2.  eq  :  EqDecider(Pos)
3.  \mforall{}a,b:Pos.    Dec(a  =  b)
4.  [Mv]  :  Pos  {}\mrightarrow{}  Type
5.  [P]  :  WfdSpread(Pos;a.Mv[a])  {}\mrightarrow{}  \mBbbP{}
6.  \mforall{}a:Pos.  \mforall{}f:Mv[a]  {}\mrightarrow{}  WfdSpread(Pos;a.Mv[a]).    ((\mforall{}m:Mv[a].  P[f  m])  {}\mRightarrow{}  P[mkW(a;f)])
7.  w  :  WfdSpread(Pos;a.Mv[a])@i
8.  n  :  \mBbbN{}@i
9.  s  :  \mBbbN{}n  {}\mrightarrow{}  MoveChoice(Pos;a.Mv[a])@i
10.  \mforall{}t:MoveChoice(Pos;a.Mv[a]).  case  W\_sel(w;n  +  1;s++t)  of  inl(w)  =>  P[w]  |  inr(z)  =>  True
11.  WfdSpread(Pos;a.Mv[a])  \mequiv{}  a:Pos  \mtimes{}  (Mv[a]  {}\mrightarrow{}  WfdSpread(Pos;a.Mv[a]))
12.  a  :  Pos@i
13.  f  :  Mv[a]  {}\mrightarrow{}  WfdSpread(Pos;a.Mv[a])@i
14.  W\_sel(w;n;s)  =  (inl  mkW(a;f))
\mvdash{}  P[mkW(a;f)]


By


Latex:
TACTIC:(BackThruSomeHyp
                THEN  Auto
                THEN  (InstHyp  [\mkleeneopen{}\mlambda{}b.if  eq  b  a  then  inl  m  else  inr  \mcdot{}    fi  \mkleeneclose{}]  (-6)\mcdot{}  THENA  Auto)
                THEN  (Subst  \mkleeneopen{}W\_sel(w;n  +  1;s++\mlambda{}b.if  eq  b  a  then  inl  m  else  inr  \mcdot{}    fi  )  =  (inl  (f  m))\mkleeneclose{}  (-1)\mcdot{}
                THENM  (Reduce  (-1)  THEN  Trivial)
                )
                THEN  Auto
                THEN  Thin  (-1))




Home Index