{ [A:Type]. [P:{L:A List| 0 < ||L||}   ].
    (collect_filter()  {s:
                          {L:A List| (0 < ||L||)  (P[L])} 
                          ({L:A List| (0 < ||L||)  (P[L])}  + Top)| 
                         (isl(snd(snd(s))))  (1  (fst(s)))} 
                         bag(  {L:A List| (0 < ||L||)  (P[L])} )) }

{ Proof }



Definitions occuring in Statement :  collect_filter: collect_filter(),  length: ||as||,  isl: isl(x),  assert: b,  bool: ,  nat: ,  uall: [x:A]. B[x],  top: Top,  so_apply: x[s],  pi1: fst(t),  pi2: snd(t),  le: A  B,  not: A,  implies: P  Q,  and: P  Q,  member: t  T,  less_than: a < b,  set: {x:A| B[x]} ,  function: x:A  B[x],  product: x:A  B[x],  union: left + right,  list: type List,  natural_number: $n,  int: ,  universe: Type,  bag: bag(T)
Definitions :  so_lambda: x.t[x],  empty-bag: {},  minus: -n,  add: n + m,  decide: case b of inl(x) => s[x] | inr(y) => t[y],  ifthenelse: if b then t else f fi ,  real: ,  rationals: ,  subtype: S  T,  subtract: n - m,  pair: <a, b>,  nil: [],  prop: ,  cand: A c B,  single-bag: {x},  true: True,  lambda: x.A[x],  fpf: a:A fp-> B[a],  strong-subtype: strong-subtype(A;B),  ge: i  j ,  uimplies: b supposing a,  uiff: uiff(P;Q),  subtype_rel: A r B,  void: Void,  false: False,  all: x:A. B[x],  universe: Type,  uall: [x:A]. B[x],  bool: ,  isect: x:A. B[x],  member: t  T,  equal: s = t,  int: ,  not: A,  union: left + right,  top: Top,  implies: P  Q,  function: x:A  B[x],  isl: isl(x),  pi2: snd(t),  le: A  B,  pi1: fst(t),  bag: bag(T),  nat: ,  set: {x:A| B[x]} ,  list: type List,  and: P  Q,  product: x:A  B[x],  less_than: a < b,  natural_number: $n,  length: ||as||,  assert: b,  so_apply: x[s],  apply: f a,  collect_filter: collect_filter(),  axiom: Ax,  MaAuto: Error :MaAuto,  CollapseTHEN: Error :CollapseTHEN,  D: Error :D,  RepeatFor: Error :RepeatFor,  Try: Error :Try,  Unfold: Error :Unfold,  Auto: Error :Auto,  tactic: Error :tactic
Lemmas :  empty-bag_wf,  nat_wf,  assert_wf,  le_wf,  false_wf,  not_wf,  member_wf,  length_wf1,  single-bag_wf,  top_wf,  bool_wf,  bag_wf,  pi2_wf,  isl_wf,  pi1_wf_top

\mforall{}[A:Type].  \mforall{}[P:\{L:A  List|  0  <  ||L||\}    {}\mrightarrow{}  \mBbbB{}].
    (collect\_filter()  \mmember{}  \{s:\mBbbZ{}
                                              \mtimes{}  \{L:A  List|  (0  <  ||L||)  {}\mRightarrow{}  (\mneg{}\muparrow{}P[L])\} 
                                              \mtimes{}  (\{L:A  List|  (0  <  ||L||)  \mwedge{}  (\muparrow{}P[L])\}    +  Top)| 
                                              (\muparrow{}isl(snd(snd(s))))  {}\mRightarrow{}  (1  \mleq{}  (fst(s)))\}    {}\mrightarrow{}  bag(\mBbbN{}  \mtimes{}  \{L:A  List| 
                                                                                                                                                    (0  <  ||L||)  \mwedge{}  (\muparrow{}P[L])\}  ))


Date html generated: 2011_08_16-AM-11_03_47
Last ObjectModification: 2011_06_18-AM-09_36_55

Home Index