Step * 2 1 of Lemma W-type-induction


1. [A] Type
2. eq EqDecider(A)
3. ∀x,y:A.  Dec(x y ∈ A)
4. [B] A ⟶ Type
5. [P] W-type(A; a.B[a]) ⟶ ℙ
6. ∀a:A. ∀f:B[a] ⟶ W-type(A; a.B[a]).  ((∀b:B[a]. P[f b])  P[W-sup(a;f)])
7. W-type(A; a.B[a])@i
8. {s:(a:A ⟶ (B[a]?)) List| ¬↑isr(Wselect(w;s))} @i
9. ∀t:a:A ⟶ (B[a]?). case Wselect(w;s [t]) of inl(w) => P[w] inr(z) => True
⊢ case Wselect(w;s) of inl(w) => P[w] inr(z) => True
BY
(MoveToConcl (-1)⋅
   THEN -1
   THEN (Assert ¬↑isr(Wselect(w;s)) BY
               (Unhide THEN Auto))
   THEN MoveToConcl (-1)⋅
   THEN Thin (-1)
   THEN MoveToConcl (-2)
   THEN ListInd (-1)
   THEN TACTIC:(Reduce THEN Auto THEN WD (-3)))⋅ }

1
1. [A] Type
2. eq EqDecider(A)
3. ∀x,y:A.  Dec(x y ∈ A)
4. [B] A ⟶ Type
5. [P] W-type(A; a.B[a]) ⟶ ℙ
6. ∀a:A. ∀f:B[a] ⟶ W-type(A; a.B[a]).  ((∀b:B[a]. P[f b])  P[W-sup(a;f)])
7. A
8. w1 B[a] ⟶ W-type(A; a.B[a])
9. ¬↑isr(Wselect(<a, w1>;[]))
10. ∀t:a:A ⟶ (B[a]?). case Wselect(<a, w1>;[t]) of inl(w) => P[w] inr(z) => True
⊢ P[<a, w1>]

2
1. [A] Type
2. eq EqDecider(A)
3. ∀x,y:A.  Dec(x y ∈ A)
4. [B] A ⟶ Type
5. [P] W-type(A; a.B[a]) ⟶ ℙ
6. ∀a:A. ∀f:B[a] ⟶ W-type(A; a.B[a]).  ((∀b:B[a]. P[f b])  P[W-sup(a;f)])
7. a:A ⟶ (B[a]?)@i
8. (a:A ⟶ (B[a]?)) List@i
9. ∀w:W-type(A; a.B[a])
     ((¬↑isr(Wselect(w;v)))
      (∀t:a:A ⟶ (B[a]?). case Wselect(w;v [t]) of inl(w) => P[w] inr(z) => True)
      case Wselect(w;v) of inl(w) => P[w] inr(z) => True)
10. A
11. w1 B[a] ⟶ W-type(A; a.B[a])
12. ¬↑isr(Wselect(<a, w1>;[u v]))
13. ∀t:a:A ⟶ (B[a]?). case Wselect(<a, w1>;[u (v [t])]) of inl(w) => P[w] inr(z) => True
⊢ case Wselect(<a, w1>;[u v]) of inl(w) => P[w] inr(z) => True


Latex:


Latex:

1.  [A]  :  Type
2.  eq  :  EqDecider(A)
3.  \mforall{}x,y:A.    Dec(x  =  y)
4.  [B]  :  A  {}\mrightarrow{}  Type
5.  [P]  :  W-type(A;  a.B[a])  {}\mrightarrow{}  \mBbbP{}
6.  \mforall{}a:A.  \mforall{}f:B[a]  {}\mrightarrow{}  W-type(A;  a.B[a]).    ((\mforall{}b:B[a].  P[f  b])  {}\mRightarrow{}  P[W-sup(a;f)])
7.  w  :  W-type(A;  a.B[a])@i
8.  s  :  \{s:(a:A  {}\mrightarrow{}  (B[a]?))  List|  \mneg{}\muparrow{}isr(Wselect(w;s))\}  @i
9.  \mforall{}t:a:A  {}\mrightarrow{}  (B[a]?).  case  Wselect(w;s  @  [t])  of  inl(w)  =>  P[w]  |  inr(z)  =>  True
\mvdash{}  case  Wselect(w;s)  of  inl(w)  =>  P[w]  |  inr(z)  =>  True


By


Latex:
(MoveToConcl  (-1)\mcdot{}
  THEN  D  -1
  THEN  (Assert  \mneg{}\muparrow{}isr(Wselect(w;s))  BY
                          (Unhide  THEN  Auto))
  THEN  MoveToConcl  (-1)\mcdot{}
  THEN  Thin  (-1)
  THEN  MoveToConcl  (-2)
  THEN  ListInd  (-1)
  THEN  TACTIC:(Reduce  0  THEN  Auto  THEN  WD  (-3)))\mcdot{}




Home Index