Nuprl Lemma : cal-filter-decomp
ā[T:Type]. ā[eq:EqDecider(T)]. ā[P:fset(T) ā¶ š¹]. ā[s:Point(constrained-antichain-lattice(T;eq;P))]. ā[Q:{x:fset(T)|
āP[x]} ā¶ š¹].
(s = cal-filter(s;x.Q[x]) āØ cal-filter(s;x.Ā¬bQ[x]) ā Point(constrained-antichain-lattice(T;eq;P)))
Proof
Definitions occuring in Statement :
cal-filter: cal-filter(s;x.P[x])
,
constrained-antichain-lattice: constrained-antichain-lattice(T;eq;P)
,
lattice-join: a āØ b
,
lattice-point: Point(l)
,
fset: fset(T)
,
deq: EqDecider(T)
,
bnot: Ā¬bb
,
assert: āb
,
bool: š¹
,
uall: ā[x:A]. B[x]
,
so_apply: x[s]
,
set: {x:A| B[x]}
,
function: x:A ā¶ B[x]
,
universe: Type
,
equal: s = t ā T
Definitions unfolded in proof :
lattice-join: a āØ b
,
and: P ā§ Q
,
guard: {T}
,
prop: ā
,
so_apply: x[s]
,
all: āx:A. B[x]
,
so_lambda: Ī»2x.t[x]
,
btrue: tt
,
bfalse: ff
,
eq_atom: x =a y
,
ifthenelse: if b then t else f fi
,
record-update: r[x := v]
,
mk-bounded-lattice: mk-bounded-lattice(T;m;j;z;o)
,
mk-bounded-distributive-lattice: mk-bounded-distributive-lattice,
constrained-antichain-lattice: constrained-antichain-lattice(T;eq;P)
,
record-select: r.x
,
lattice-point: Point(l)
,
top: Top
,
member: t ā T
,
uall: ā[x:A]. B[x]
,
implies: P
ā Q
,
cand: A cā§ B
,
uiff: uiff(P;Q)
,
subtype_rel: A ār B
,
cal-filter: cal-filter(s;x.P[x])
,
least-upper-bound: least-upper-bound(T;x,y.R[x; y];a;b;c)
,
uimplies: b supposing a
,
so_apply: x[s1;s2]
,
so_lambda: Ī»2x y.t[x; y]
,
fset-ac-le: fset-ac-le(eq;ac1;ac2)
,
iff: P
āā Q
,
rev_implies: P
ā Q
,
bool: š¹
,
unit: Unit
,
it: ā
,
exists: āx:A. B[x]
,
or: P āØ Q
,
sq_type: SQType(T)
,
bnot: Ā¬bb
,
assert: āb
,
false: False
,
rev_uimplies: rev_uimplies(P;Q)
Lemmas referenced :
deq_wf,
set_wf,
bool_wf,
fset-all_wf,
fset-antichain_wf,
rec_select_update_lemma,
fset-constrained-ac-lub-is-lub,
bnot_wf,
assert_wf,
fset_wf,
cal-filter_wf,
cal-point,
equal_functionality_wrt_subtype_rel2,
fset-all-iff,
fset-member_wf,
deq-fset_wf,
fset-filter-subset2,
fset-ac-le_weakening_f-subset,
fset-constrained-ac-lub_wf,
fset-ac-order-constrained,
fset-ac-le_wf,
least-upper-bound-unique,
fset-ac-order,
fset-subtype2,
subtype_rel_sets,
fset-subtype,
strong-subtype-deq-subtype,
strong-subtype-set2,
fset-null_wf,
fset-filter_wf,
deq-f-subset_wf,
istype-assert,
iff_weakening_uiff,
eqtt_to_assert,
member-fset-filter,
eqff_to_assert,
bool_cases_sqequal,
subtype_base_sq,
bool_subtype_base,
assert-bnot,
assert_of_bnot,
assert_witness
Rules used in proof :
universeEquality,
axiomEquality,
functionEquality,
productEquality,
productElimination,
dependent_set_memberEquality,
dependent_functionElimination,
setEquality,
rename,
setElimination,
lambdaFormation,
lambdaEquality,
applyEquality,
functionExtensionality,
hypothesisEquality,
cumulativity,
because_Cache,
hypothesis,
voidEquality,
voidElimination,
isect_memberEquality,
thin,
isectElimination,
sqequalHypSubstitution,
extract_by_obid,
introduction,
cut,
sqequalRule,
isect_memberFormation,
sqequalReflexivity,
computationStep,
sqequalTransitivity,
sqequalSubstitution,
independent_functionElimination,
equalitySymmetry,
equalityTransitivity,
independent_pairFormation,
independent_isectElimination,
lambdaEquality_alt,
universeIsType,
inhabitedIsType,
setIsType,
isectEquality,
isect_memberFormation_alt,
lambdaFormation_alt,
unionElimination,
equalityElimination,
dependent_pairFormation_alt,
equalityIstype,
promote_hyp,
instantiate,
isect_memberEquality_alt,
isectIsTypeImplies
Latex:
\mforall{}[T:Type]. \mforall{}[eq:EqDecider(T)]. \mforall{}[P:fset(T) {}\mrightarrow{} \mBbbB{}]. \mforall{}[s:Point(constrained-antichain-lattice(T;eq;P))].
\mforall{}[Q:\{x:fset(T)| \muparrow{}P[x]\} {}\mrightarrow{} \mBbbB{}].
(s = cal-filter(s;x.Q[x]) \mvee{} cal-filter(s;x.\mneg{}\msubb{}Q[x]))
Date html generated:
2020_05_20-AM-08_48_09
Last ObjectModification:
2020_02_04-PM-02_33_32
Theory : lattices
Home
Index