Step * of Lemma iseg-es-le-before-is-before

[es:EO]. ∀[e,x:E]. ∀[L:E List].  before(x) ∈ (E List) supposing [x] ≤ ≤loc(e)
BY
(Auto
   THEN (-1)
   THEN (Assert ⌈x ≤loc e ⌉⋅
         THENA ((Assert ⌈(x ∈ ≤loc(e))⌉⋅ THENM GenListD (-1))
                THEN HypSubst' (-1) 0
                THEN GenListD 0
                THEN (OrLeft THENA Auto)
                THEN GenListD 0
                THEN (OrRight THENA Auto)
                THEN GenListD 0)
         )
   THEN (InstLemma `es-le-before-partition` [⌈es⌉;⌈e⌉;⌈x⌉]⋅ THENA Auto)
   THEN (Assert ⌈∃l':E List. (((L [x]) l) (before(x) [x] l') ∈ (E List))⌉⋅
         THENA ((RevHypSubst' (-3) THENA Auto)
                THEN HypSubst' (-1) 0
                THEN (RWO "es-interval-open-interval" THENA Auto)
                THEN AutoSplit
                THEN Try (Complete ((InstConcl [⌈(x, e) [e]⌉]⋅ THEN Auto)))
                THEN UseLoclTri ⌈es⌉⌈x⌉⌈e⌉⋅
                THEN Try (Complete ((Assert ⌈False⌉⋅ THEN Auto)))
                THEN (HypSubst' (-1) THENA Auto)
                THEN (RWO "es-open-interval-nil" THENA Auto)
                THEN Try (Complete (((Decide ⌈↑first(e)⌉⋅ THENA Auto)
                                     THEN Try (Complete ((OrLeft THEN Auto)))
                                     THEN Try (Complete ((OrRight THEN Auto))))))
                THEN Reduce 0
                THEN InstConcl [⌈[]⌉]⋅
                THEN Auto)
         )
   THEN (-1)
   THEN (RWO "append_assoc<(-1) THENA Auto)
   THEN (InstLemma `es-le-before-no_repeats` [⌈es⌉;⌈e⌉]⋅ THENA Auto)
   THEN (HypSubst' (-6) (-1) THENA Auto)
   THEN FLemma `list-decomp-no_repeats` [-2]
   THEN Auto) }


Latex:


\mforall{}[es:EO].  \mforall{}[e,x:E].  \mforall{}[L:E  List].    L  =  before(x)  supposing  L  @  [x]  \mleq{}  \mleq{}loc(e)


By

(Auto
  THEN  D  (-1)
  THEN  (Assert  \mkleeneopen{}x  \mleq{}loc  e  \mkleeneclose{}\mcdot{}
              THENA  ((Assert  \mkleeneopen{}(x  \mmember{}  \mleq{}loc(e))\mkleeneclose{}\mcdot{}  THENM  GenListD  (-1))
                            THEN  HypSubst'  (-1)  0
                            THEN  GenListD  0
                            THEN  (OrLeft  THENA  Auto)
                            THEN  GenListD  0
                            THEN  (OrRight  THENA  Auto)
                            THEN  GenListD  0)
              )
  THEN  (InstLemma  `es-le-before-partition`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}e\mkleeneclose{};\mkleeneopen{}x\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (Assert  \mkleeneopen{}\mexists{}l':E  List.  (((L  @  [x])  @  l)  =  (before(x)  @  [x]  @  l'))\mkleeneclose{}\mcdot{}
              THENA  ((RevHypSubst'  (-3)  0  THENA  Auto)
                            THEN  HypSubst'  (-1)  0
                            THEN  (RWO  "es-interval-open-interval"  0  THENA  Auto)
                            THEN  AutoSplit
                            THEN  Try  (Complete  ((InstConcl  [\mkleeneopen{}(x,  e)  @  [e]\mkleeneclose{}]\mcdot{}  THEN  Auto)))
                            THEN  UseLoclTri  \mkleeneopen{}es\mkleeneclose{}\mkleeneopen{}x\mkleeneclose{}\mkleeneopen{}e\mkleeneclose{}\mcdot{}
                            THEN  Try  (Complete  ((Assert  \mkleeneopen{}False\mkleeneclose{}\mcdot{}  THEN  Auto)))
                            THEN  (HypSubst'  (-1)  0  THENA  Auto)
                            THEN  (RWO  "es-open-interval-nil"  0  THENA  Auto)
                            THEN  Try  (Complete  (((Decide  \mkleeneopen{}\muparrow{}first(e)\mkleeneclose{}\mcdot{}  THENA  Auto)
                                                                      THEN  Try  (Complete  ((OrLeft  THEN  Auto)))
                                                                      THEN  Try  (Complete  ((OrRight  THEN  Auto))))))
                            THEN  Reduce  0
                            THEN  InstConcl  [\mkleeneopen{}[]\mkleeneclose{}]\mcdot{}
                            THEN  Auto)
              )
  THEN  D  (-1)
  THEN  (RWO  "append\_assoc<"  (-1)  THENA  Auto)
  THEN  (InstLemma  `es-le-before-no\_repeats`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}e\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (HypSubst'  (-6)  (-1)  THENA  Auto)
  THEN  FLemma  `list-decomp-no\_repeats`  [-2]
  THEN  Auto)




Home Index