Step
*
2
of Lemma
es-closed-open-interval-decomp
1. es : EO
2. e1 : E
3. e2 : E
4. (e1 <loc e2)
5. (e1 ∈ before(e2))
6. l : E List
7. before(e2) = (before(e1) @ [e1] @ l) ∈ (E List)
8. ↑null(filter(λev.e1 ≤loc ev;before(e1)))
⊢ (filter(λev.e1 ≤loc ev;before(e1)) @ [e1 / filter(λev.e1 ≤loc ev;l)])
= [e1 / filter(λev.e1 <loc ev;before(e2))]
∈ (E List)
BY
{ ((RWO "assert_of_null" (-1) THENA Auto)
   THEN HypSubst' (-1) 0
   THEN Auto
   THEN Reduce 0
   THEN MemCD
   THEN Auto
   THEN HypSubst' (-2) 0
   THEN RepeatFor 2 ((RWO "filter_append" 0 THENA Auto))
   THEN Reduce 0
   THEN (Subst ⌈e1 <loc e1 ~ ff⌉ 0⋅ THENA Auto)
   THEN Reduce 0
   THEN Assert ⌈↑null(filter(λev.e1 <loc ev;before(e1)))⌉⋅) }
1
.....assertion..... 
1. es : EO
2. e1 : E
3. e2 : E
4. (e1 <loc e2)
5. (e1 ∈ before(e2))
6. l : E List
7. before(e2) = (before(e1) @ [e1] @ l) ∈ (E List)
8. filter(λev.e1 ≤loc ev;before(e1)) = [] ∈ (E List)
⊢ ↑null(filter(λev.e1 <loc ev;before(e1)))
2
1. es : EO
2. e1 : E
3. e2 : E
4. (e1 <loc e2)
5. (e1 ∈ before(e2))
6. l : E List
7. before(e2) = (before(e1) @ [e1] @ l) ∈ (E List)
8. filter(λev.e1 ≤loc ev;before(e1)) = [] ∈ (E List)
9. ↑null(filter(λev.e1 <loc ev;before(e1)))
⊢ filter(λev.e1 ≤loc ev;l) = (filter(λev.e1 <loc ev;before(e1)) @ filter(λev.e1 <loc ev;l)) ∈ (E List)
Latex:
1.  es  :  EO
2.  e1  :  E
3.  e2  :  E
4.  (e1  <loc  e2)
5.  (e1  \mmember{}  before(e2))
6.  l  :  E  List
7.  before(e2)  =  (before(e1)  @  [e1]  @  l)
8.  \muparrow{}null(filter(\mlambda{}ev.e1  \mleq{}loc  ev;before(e1)))
\mvdash{}  (filter(\mlambda{}ev.e1  \mleq{}loc  ev;before(e1))  @  [e1  /  filter(\mlambda{}ev.e1  \mleq{}loc  ev;l)])
=  [e1  /  filter(\mlambda{}ev.e1  <loc  ev;before(e2))]
By
((RWO  "assert\_of\_null"  (-1)  THENA  Auto)
  THEN  HypSubst'  (-1)  0
  THEN  Auto
  THEN  Reduce  0
  THEN  MemCD
  THEN  Auto
  THEN  HypSubst'  (-2)  0
  THEN  RepeatFor  2  ((RWO  "filter\_append"  0  THENA  Auto))
  THEN  Reduce  0
  THEN  (Subst  \mkleeneopen{}e1  <loc  e1  \msim{}  ff\mkleeneclose{}  0\mcdot{}  THENA  Auto)
  THEN  Reduce  0
  THEN  Assert  \mkleeneopen{}\muparrow{}null(filter(\mlambda{}ev.e1  <loc  ev;before(e1)))\mkleeneclose{}\mcdot{})
Home
Index