Step
*
1
of Lemma
es-interface-history-pred
1. Info : Type
2. es : EO+(Info)
3. A : Type
4. X : EClass(A List)
5. e : E
6. ¬↑first(e)
⊢ (concat(mapfilter(λe.X(e);λe.e ∈b X;before(e))) @ concat(mapfilter(λe.X(e);λe.e ∈b X;[e])))
= if e ∈b X then es-interface-history(es;X;pred(e)) @ X(e) else es-interface-history(es;X;pred(e)) fi 
∈ (A List)
BY
{ Subst' es-interface-history(es;X;pred(e)) ~ concat(mapfilter(λe.X(e);λe.e ∈b X;before(e))) 0 }
1
.....equality..... 
1. Info : Type
2. es : EO+(Info)
3. A : Type
4. X : EClass(A List)
5. e : E
6. ¬↑first(e)
⊢ es-interface-history(es;X;pred(e)) ~ concat(mapfilter(λe.X(e);λe.e ∈b X;before(e)))
2
1. Info : Type
2. es : EO+(Info)
3. A : Type
4. X : EClass(A List)
5. e : E
6. ¬↑first(e)
⊢ (concat(mapfilter(λe.X(e);λe.e ∈b X;before(e))) @ concat(mapfilter(λe.X(e);λe.e ∈b X;[e])))
= if e ∈b X
  then concat(mapfilter(λe.X(e);λe.e ∈b X;before(e))) @ X(e)
  else concat(mapfilter(λe.X(e);λe.e ∈b X;before(e)))
  fi 
∈ (A List)
Latex:
Latex:
1.  Info  :  Type
2.  es  :  EO+(Info)
3.  A  :  Type
4.  X  :  EClass(A  List)
5.  e  :  E
6.  \mneg{}\muparrow{}first(e)
\mvdash{}  (concat(mapfilter(\mlambda{}e.X(e);\mlambda{}e.e  \mmember{}\msubb{}  X;before(e)))  @  concat(mapfilter(\mlambda{}e.X(e);\mlambda{}e.e  \mmember{}\msubb{}  X;[e])))
=  if  e  \mmember{}\msubb{}  X
    then  es-interface-history(es;X;pred(e))  @  X(e)
    else  es-interface-history(es;X;pred(e))
    fi 
By
Latex:
Subst'  es-interface-history(es;X;pred(e))  \msim{}  concat(mapfilter(\mlambda{}e.X(e);\mlambda{}e.e  \mmember{}\msubb{}  X;before(e)))  0
Home
Index