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