{ [S,V:Type]. [M:IdLnk  Id  Type]. [l:IdLnk]. [s:S]. [v:V].
  [L:(t:Id  (S  V  (M[l;t] List))) List].
    (tagged-messages(l;s;v;L)  {m:Msg(M)| mlnk(m) = l}  List) }

{ Proof }



Definitions occuring in Statement :  tagged-messages: tagged-messages(l;s;v;L),  mlnk: mlnk(m),  Msg: Msg(M),  IdLnk: IdLnk,  Id: Id,  uall: [x:A]. B[x],  so_apply: x[s1;s2],  member: t  T,  set: {x:A| B[x]} ,  function: x:A  B[x],  product: x:A  B[x],  list: type List,  universe: Type,  equal: s = t
Definitions :  uall: [x:A]. B[x],  so_apply: x[s1;s2],  member: t  T,  Msg: Msg(M),  tagged-messages: tagged-messages(l;s;v;L),  so_lambda: x.t[x],  mlnk: mlnk(m),  pi1: fst(t),  top: Top,  all: x:A. B[x],  subtype: S  T,  so_apply: x[s]
Lemmas :  map_wf,  Msg_wf,  mlnk_wf,  tagged-list-messages_wf,  Id_wf,  IdLnk_wf,  pi1_wf_top

\mforall{}[S,V:Type].  \mforall{}[M:IdLnk  {}\mrightarrow{}  Id  {}\mrightarrow{}  Type].  \mforall{}[l:IdLnk].  \mforall{}[s:S].  \mforall{}[v:V].
\mforall{}[L:(t:Id  \mtimes{}  (S  {}\mrightarrow{}  V  {}\mrightarrow{}  (M[l;t]  List)))  List].
    (tagged-messages(l;s;v;L)  \mmember{}  \{m:Msg(M)|  mlnk(m)  =  l\}    List)


Date html generated: 2011_08_10-AM-07_47_19
Last ObjectModification: 2011_06_18-AM-08_12_43

Home Index