{ [Info:Type]. [es:EO+(Info)]. [T:Type]. [X:EClass(T)]. [P:E(X)  ].
  [n:]. [e:E]. [i:Id].
    e  X supposing e is first@ i s.t.  q.||filter(e.P[e];(X)(q))|| = n }

{ Proof }



Definitions occuring in Statement :  es-interface-predecessors: (X)(e) es-E-interface: E(X) in-eclass: e  X eclass: EClass(A[eo; e]) event-ordering+: EO+(Info) es-first-at: e is first@ i s.t.  e.P[e] es-E: E Id: Id length: ||as|| assert: b bool: nat_plus: uimplies: b supposing a uall: [x:A]. B[x] so_apply: x[s] lambda: x.A[x] function: x:A  B[x] int: universe: Type equal: s = t filter: filter(P;l)
Definitions :  pair: <a, b> es-prior-interface: prior(X) es-interface-at: X@i strong-subtype: strong-subtype(A;B) alle-lt: e<e'.P[e] le: A  B ge: i  j  not: A in-eclass: e  X rev_implies: P  Q exists: x:A. B[x] iff: P  Q uiff: uiff(P;Q) implies: P  Q void: Void false: False true: True decide: case b of inl(x) =s[x] | inr(y) =t[y] so_apply: x[s] l_member: (x  l) product: x:A  B[x] and: P  Q assert: b es-loc: loc(e) less_than: a < b es-interface-predecessors: (X)(e) filter: filter(P;l) length: ||as|| limited-type: LimitedType atom: Atom$n prop: int: so_lambda: x.t[x] es-first-at: e is first@ i s.t.  e.P[e] uimplies: b supposing a Id: Id set: {x:A| B[x]}  nat_plus: union: left + right es-E-interface: E(X) bool: subtype: S  T subtype_rel: A r B atom: Atom apply: f a top: Top token: "$token" ifthenelse: if b then t else f fi  record-select: r.x event_ordering: EO es-E: E lambda: x.A[x] so_lambda: x y.t[x; y] eclass: EClass(A[eo; e]) dep-isect: Error :dep-isect,  eq_atom: x =a y eq_atom: eq_atom$n(x;y) record+: record+ all: x:A. B[x] function: x:A  B[x] isect: x:A. B[x] uall: [x:A]. B[x] universe: Type member: t  T equal: s = t event-ordering+: EO+(Info) tactic: Error :tactic,  guard: {T} fpf: a:A fp-B[a] int_nzero: real: nat: Auto: Error :Auto,  CollapseTHEN: Error :CollapseTHEN
Lemmas :  subtype_rel_wf first-at-filter-interface-predecessors1 member_wf eclass_wf es-E-interface_wf Id_wf es-interface-top es-interface-predecessors_wf event-ordering+_inc subtype_rel_self es-E_wf es-loc_wf filter_wf length_wf1 es-first-at_wf nat_plus_wf bool_wf event-ordering+_wf nat_plus_properties assert_witness assert_wf false_wf ifthenelse_wf in-eclass_wf true_wf

\mforall{}[Info:Type].  \mforall{}[es:EO+(Info)].  \mforall{}[T:Type].  \mforall{}[X:EClass(T)].  \mforall{}[P:E(X)  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[n:\mBbbN{}\msupplus{}].  \mforall{}[e:E].  \mforall{}[i:Id].
    \muparrow{}e  \mmember{}\msubb{}  X  supposing  e  is  first@  i  s.t.    q.||filter(\mlambda{}e.P[e];\mleq{}(X)(q))||  =  n


Date html generated: 2011_08_16-PM-05_24_33
Last ObjectModification: 2011_06_20-AM-01_23_11

Home Index