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