{ 
[Info:Type]. 
[es:EO+(Info)]. 
[A:Type]. 
[X:EClass(A List)]. 
[e:E].
    es-interface-history(es;X;e)
    = if e 
 X
      then es-interface-history(es;X;pred(e)) @ X(e)
      else es-interface-history(es;X;pred(e))
      fi  
    supposing 
first(e) }
{ Proof }
Definitions occuring in Statement : 
es-interface-history: es-interface-history(es;X;e), 
eclass-val: X(e), 
in-eclass: e 
 X, 
eclass: EClass(A[eo; e]), 
event-ordering+: EO+(Info), 
es-pred: pred(e), 
es-first: first(e), 
es-E: E, 
append: as @ bs, 
assert:
b, 
ifthenelse: if b then t else f fi , 
uimplies: b supposing a, 
uall:
[x:A]. B[x], 
not:
A, 
list: type List, 
universe: Type, 
equal: s = t
Definitions : 
uall:
[x:A]. B[x], 
uimplies: b supposing a, 
assert:
b, 
es-interface-history: es-interface-history(es;X;e), 
ifthenelse: if b then t else f fi , 
member: t 
 T, 
es-le-before:
loc(e), 
top: Top, 
prop:
, 
so_lambda: 
x y.t[x; y], 
all:
x:A. B[x], 
subtype: S 
 T, 
btrue: tt, 
true: True, 
es-before: before(e), 
ycomb: Y, 
implies: P 
 Q, 
bfalse: ff, 
concat: concat(ll), 
mapfilter: mapfilter(f;P;L), 
map: map(f;as), 
filter: filter(P;l), 
reduce: reduce(f;k;as), 
squash:
T, 
so_apply: x[s1;s2], 
sq_type: SQType(T), 
guard: {T}, 
not:
A, 
false: False, 
bool:
, 
unit: Unit, 
iff: P 

 Q, 
and: P 
 Q, 
it:
Lemmas : 
mapfilter-append, 
es-before_wf, 
top_wf, 
in-eclass_wf, 
es-interface-top, 
l_member_wf, 
concat_append, 
mapfilter_wf, 
es-E_wf, 
eclass-val_wf, 
event-ordering+_inc, 
event-ordering+_wf, 
subtype_base_sq, 
bool_wf, 
bool_subtype_base, 
assert_wf, 
not_wf, 
es-first_wf, 
eclass_wf, 
assert_elim, 
bnot_wf, 
iff_weakening_uiff, 
eqtt_to_assert, 
uiff_transitivity, 
eqff_to_assert, 
assert_of_bnot, 
append_wf, 
squash_wf, 
true_wf, 
concat_wf, 
append_nil_sq, 
subtype_rel_list
\mforall{}[Info:Type].  \mforall{}[es:EO+(Info)].  \mforall{}[A:Type].  \mforall{}[X:EClass(A  List)].  \mforall{}[e:E].
    es-interface-history(es;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   
    supposing  \mneg{}\muparrow{}first(e)
Date html generated:
2011_08_16-PM-04_32_25
Last ObjectModification:
2011_06_20-AM-00_54_06
Home
Index