Step
*
1
1
1
of Lemma
coW-equiv-iff3
1. [A] : 𝕌'
2. B : A ⟶ Type
3. w : coW(A;a.B[a])
4. w' : coW(A;a.B[a])
5. e : coW-equiv(a.B[a];w;w')
6. p : ℕ ⟶ copath(a.B[a];w')
7. [%2] : ∀n:ℕ. ((∀i:ℕn. (copath-length(p i) = i ∈ ℤ)) 
⇒ (∀i:ℕn - 1. copathAgree(a.B[a];w';p i;p (i + 1))))
8. n : ℕ
9. x : q:copath(a.B[a];w) × ((∀i:ℕn + 1. (copath-length(p i) = i ∈ ℤ))
                            
⇒ ((copath-length(q) = n ∈ ℤ) ∧ coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p n))))
⊢ ∃y:q:copath(a.B[a];w) × ((∀i:ℕ(n + 1) + 1. (copath-length(p i) = i ∈ ℤ))
                          
⇒ ((copath-length(q) = (n + 1) ∈ ℤ)
                             ∧ coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p (n + 1)))))
   copathAgree(a.B[a];w;fst(x);fst(y))
BY
{ ((Subst' (n + 1) + 1 ~ n + 2 0 THENA Auto)
   THEN D -1
   THEN Reduce 0
   THEN (Decide ⌜∀i:ℕn + 2. (copath-length(p i) = i ∈ ℤ)⌝⋅ THENA Auto)) }
1
1. [A] : 𝕌'
2. B : A ⟶ Type
3. w : coW(A;a.B[a])
4. w' : coW(A;a.B[a])
5. e : coW-equiv(a.B[a];w;w')
6. p : ℕ ⟶ copath(a.B[a];w')
7. [%2] : ∀n:ℕ. ((∀i:ℕn. (copath-length(p i) = i ∈ ℤ)) 
⇒ (∀i:ℕn - 1. copathAgree(a.B[a];w';p i;p (i + 1))))
8. n : ℕ
9. q : copath(a.B[a];w)
10. x1 : (∀i:ℕn + 1. (copath-length(p i) = i ∈ ℤ))
⇒ ((copath-length(q) = n ∈ ℤ) ∧ coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p n)))
11. ∀i:ℕn + 2. (copath-length(p i) = i ∈ ℤ)
⊢ ∃y:q:copath(a.B[a];w) × ((∀i:ℕn + 2. (copath-length(p i) = i ∈ ℤ))
                          
⇒ ((copath-length(q) = (n + 1) ∈ ℤ)
                             ∧ coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p (n + 1)))))
   copathAgree(a.B[a];w;q;fst(y))
2
1. [A] : 𝕌'
2. B : A ⟶ Type
3. w : coW(A;a.B[a])
4. w' : coW(A;a.B[a])
5. e : coW-equiv(a.B[a];w;w')
6. p : ℕ ⟶ copath(a.B[a];w')
7. [%2] : ∀n:ℕ. ((∀i:ℕn. (copath-length(p i) = i ∈ ℤ)) 
⇒ (∀i:ℕn - 1. copathAgree(a.B[a];w';p i;p (i + 1))))
8. n : ℕ
9. q : copath(a.B[a];w)
10. x1 : (∀i:ℕn + 1. (copath-length(p i) = i ∈ ℤ))
⇒ ((copath-length(q) = n ∈ ℤ) ∧ coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p n)))
11. ¬(∀i:ℕn + 2. (copath-length(p i) = i ∈ ℤ))
⊢ ∃y:q:copath(a.B[a];w) × ((∀i:ℕn + 2. (copath-length(p i) = i ∈ ℤ))
                          
⇒ ((copath-length(q) = (n + 1) ∈ ℤ)
                             ∧ coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p (n + 1)))))
   copathAgree(a.B[a];w;q;fst(y))
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.  e  :  coW-equiv(a.B[a];w;w')
6.  p  :  \mBbbN{}  {}\mrightarrow{}  copath(a.B[a];w')
7.  [\%2]  :  \mforall{}n:\mBbbN{}
                        ((\mforall{}i:\mBbbN{}n.  (copath-length(p  i)  =  i))  {}\mRightarrow{}  (\mforall{}i:\mBbbN{}n  -  1.  copathAgree(a.B[a];w';p  i;p  (i  +  1))))
8.  n  :  \mBbbN{}
9.  x  :  q:copath(a.B[a];w)  \mtimes{}  ((\mforall{}i:\mBbbN{}n  +  1.  (copath-length(p  i)  =  i))
                                                        {}\mRightarrow{}  ((copath-length(q)  =  n)
                                                              \mwedge{}  coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p  n))))
\mvdash{}  \mexists{}y:q:copath(a.B[a];w)  \mtimes{}  ((\mforall{}i:\mBbbN{}(n  +  1)  +  1.  (copath-length(p  i)  =  i))
                                                    {}\mRightarrow{}  ((copath-length(q)  =  (n  +  1))
                                                          \mwedge{}  coW-equiv(a.B[a];copath-at(w;q);copath-at(w';p  (n  +  1)))))
      copathAgree(a.B[a];w;fst(x);fst(y))
By
Latex:
((Subst'  (n  +  1)  +  1  \msim{}  n  +  2  0  THENA  Auto)
  THEN  D  -1
  THEN  Reduce  0
  THEN  (Decide  \mkleeneopen{}\mforall{}i:\mBbbN{}n  +  2.  (copath-length(p  i)  =  i)\mkleeneclose{}\mcdot{}  THENA  Auto))
Home
Index