{ [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