Step * of Lemma copath-last_wf

āˆ€[A:š•Œ']. āˆ€[B:A āŸ¶ Type]. āˆ€[w:coW(A;a.B[a])]. āˆ€[p:copath(a.B[a];w)].
  copath-last(w;p) āˆˆ w':coW(A;a.B[a]) Ć— coW-dom(a.B[a];w') supposing 0 < copath-length(p)
BY
(Auto
   THEN (Assert āˆ€n:ā„•. āˆ€w:coW(A;a.B[a]). āˆ€p:copath(a.B[a];w).
                  (0 < copath-length(p)
                  ā‡’ (copath-length(p) ā‰¤ n)
                  ā‡’ (copath-last(w;p) āˆˆ w':coW(A;a.B[a]) Ć— coW-dom(a.B[a];w'))) BY
               ((InductionOnNat THEN Auto)
                THEN Unfold `copath-last` 0
                THEN AutoSplit
                THEN BackThruSomeHyp
                THEN RWO "length-copath-tl" 0
                THEN Auto))
   THEN InstHyp [āŒœcopath-length(p)āŒ;āŒœwāŒ;āŒœpāŒ(-1)ā‹…
   THEN Auto) }


Latex:


Latex:
\mforall{}[A:\mBbbU{}'].  \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[w:coW(A;a.B[a])].  \mforall{}[p:copath(a.B[a];w)].
    copath-last(w;p)  \mmember{}  w':coW(A;a.B[a])  \mtimes{}  coW-dom(a.B[a];w')  supposing  0  <  copath-length(p)


By


Latex:
(Auto
  THEN  (Assert  \mforall{}n:\mBbbN{}.  \mforall{}w:coW(A;a.B[a]).  \mforall{}p:copath(a.B[a];w).
                                (0  <  copath-length(p)
                                {}\mRightarrow{}  (copath-length(p)  \mleq{}  n)
                                {}\mRightarrow{}  (copath-last(w;p)  \mmember{}  w':coW(A;a.B[a])  \mtimes{}  coW-dom(a.B[a];w')))  BY
                          ((InductionOnNat  THEN  Auto)
                            THEN  Unfold  `copath-last`  0
                            THEN  AutoSplit
                            THEN  BackThruSomeHyp
                            THEN  RWO  "length-copath-tl"  0
                            THEN  Auto))
  THEN  InstHyp  [\mkleeneopen{}copath-length(p)\mkleeneclose{};\mkleeneopen{}w\mkleeneclose{};\mkleeneopen{}p\mkleeneclose{}]  (-1)\mcdot{}
  THEN  Auto)




Home Index