Step * 1 of Lemma nth_tl-es-open-interval


1. es EO
2. e1 E
3. e2 E
4. loc(e1) loc(e2) ∈ Id
5. : ℤ
6. 0 < ||(e1, e2)||@i
⊢ nth_tl(0 1;(e1, e2)) ((e1, e2)[0], e2) ∈ (E List)
BY
(RecUnfold `nth_tl` 0
   THEN Reduce 0
   THEN Thin (-2)
   THEN (Assert ⌈(e1 <loc e2)⌉⋅
         THENA (UseLoclTri ⌈es⌉⌈e1⌉⌈e2⌉⋅
                THEN (InstLemma `es-open-interval-nil` [⌈es⌉;⌈e1⌉;⌈e2⌉]⋅
                THENM (HypSubst' (-1) (-3) THEN Reduce (-3) THEN Auto)
                )
                THEN Auto
                THEN (Decide ↑first(e2) THENA Auto)
                THEN Try (Complete ((OrLeft THEN Auto)))
                THEN (OrRight THENA Auto)
                THEN Auto
                THEN Try (Complete ((HypSubst' (-2) THEN Auto)))
                THEN Auto
                THEN (Assert (pred(e2) <loc e2) BY
                            Auto)
                THEN Auto)
         )
   THEN (InstLemma `es-pred-exists-between` [⌈es⌉;⌈e1⌉;⌈e2⌉]⋅ THENA Auto)
   THEN ExRepD) }

1
1. es EO
2. e1 E
3. e2 E
4. loc(e1) loc(e2) ∈ Id
5. 0 < ||(e1, e2)||@i
6. (e1 <loc e2)
7. {e:E| ¬↑first(e)} 
8. e1 pred(e) ∈ E
⊢ tl((e1, e2)) ((e1, e2)[0], e2) ∈ (E List)


Latex:



1.  es  :  EO
2.  e1  :  E
3.  e2  :  E
4.  loc(e1)  =  loc(e2)
5.  n  :  \mBbbZ{}
6.  0  <  ||(e1,  e2)||@i
\mvdash{}  nth\_tl(0  +  1;(e1,  e2))  =  ((e1,  e2)[0],  e2)


By

(RecUnfold  `nth\_tl`  0
  THEN  Reduce  0
  THEN  Thin  (-2)
  THEN  (Assert  \mkleeneopen{}(e1  <loc  e2)\mkleeneclose{}\mcdot{}
              THENA  (UseLoclTri  \mkleeneopen{}es\mkleeneclose{}\mkleeneopen{}e1\mkleeneclose{}\mkleeneopen{}e2\mkleeneclose{}\mcdot{}
                            THEN  (InstLemma  `es-open-interval-nil`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}e1\mkleeneclose{};\mkleeneopen{}e2\mkleeneclose{}]\mcdot{}
                            THENM  (HypSubst'  (-1)  (-3)  THEN  Reduce  (-3)  THEN  Auto)
                            )
                            THEN  Auto
                            THEN  (Decide  \muparrow{}first(e2)  THENA  Auto)
                            THEN  Try  (Complete  ((OrLeft  THEN  Auto)))
                            THEN  (OrRight  THENA  Auto)
                            THEN  Auto
                            THEN  Try  (Complete  ((HypSubst'  (-2)  0  THEN  Auto)))
                            THEN  Auto
                            THEN  (Assert  (pred(e2)  <loc  e2)  BY
                                                    Auto)
                            THEN  Auto)
              )
  THEN  (InstLemma  `es-pred-exists-between`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}e1\mkleeneclose{};\mkleeneopen{}e2\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  ExRepD)




Home Index