Nuprl Lemma : collect_filter-wf2

∀[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||,  list: T List,  nat: ℕ,  assert: ↑b,  isl: isl(x),  bool: 𝔹,  less_than: a < b,  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,  set: {x:A| B[x]} ,  function: x:A ─→ B[x],  product: x:A × B[x],  union: left + right,  natural_number: $n,  int: ℤ,  universe: Type,  bag: bag(T)
Lemmas :  single-bag_wf,  nat_wf,  less_than_wf,  length_wf,  assert_wf,  subtract_wf,  decidable__le,  false_wf,  not-le-2,  condition-implies-le,  minus-one-mul,  zero-add,  minus-add,  minus-minus,  add-associates,  add-swap,  add-commutes,  add_functionality_wrt_le,  le-add-cancel,  le_wf,  empty-bag_wf,  not_wf,  top_wf,  isl_wf,  list_wf,  bool_wf
\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\000C[L])\}  ))



Date html generated: 2015_07_17-AM-08_59_19
Last ObjectModification: 2015_01_27-PM-01_02_44

Home Index