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: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T top: Top lattice-point: Point(l) record-select: r.x constrained-antichain-lattice: constrained-antichain-lattice(T;eq;P) mk-bounded-distributive-lattice: mk-bounded-distributive-lattice mk-bounded-lattice: mk-bounded-lattice(T;m;j;z;o) record-update: r[x := v] ifthenelse: if then else fi  eq_atom: =a y bfalse: ff btrue: tt so_lambda: λ2x.t[x] all: x:A. B[x] so_apply: x[s] prop: guard: {T} and: P ∧ Q lattice-join: a ∨ b so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] uimplies: supposing a least-upper-bound: least-upper-bound(T;x,y.R[x; y];a;b;c) cal-filter: cal-filter(s;x.P[x]) subtype_rel: A ⊆B uiff: uiff(P;Q) cand: c∧ B implies:  Q fset-ac-le: fset-ac-le(eq;ac1;ac2) iff: ⇐⇒ Q rev_implies:  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 :  cal-point cal-filter_wf fset_wf assert_wf bnot_wf fset-constrained-ac-lub-is-lub rec_select_update_lemma fset-antichain_wf fset-all_wf bool_wf set_wf deq_wf fset-ac-order least-upper-bound-unique fset-ac-le_wf fset-ac-order-constrained fset-constrained-ac-lub_wf fset-ac-le_weakening_f-subset fset-filter-subset2 deq-fset_wf fset-member_wf fset-all-iff equal_functionality_wrt_subtype_rel2 fset-subtype2 fset-subtype subtype_rel_sets strong-subtype-deq-subtype strong-subtype-set2 fset-null_wf fset-filter_wf deq-f-subset_wf all_wf iff_wf f-subset_wf iff_weakening_uiff uall_wf isect_wf eqtt_to_assert member-fset-filter eqff_to_assert equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot assert_of_bnot assert_witness
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation sqequalRule cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin isect_memberEquality voidElimination voidEquality hypothesis because_Cache cumulativity hypothesisEquality functionExtensionality applyEquality lambdaEquality lambdaFormation setElimination rename setEquality dependent_functionElimination dependent_set_memberEquality productElimination productEquality functionEquality axiomEquality universeEquality independent_isectElimination independent_pairFormation equalityTransitivity equalitySymmetry independent_functionElimination unionElimination equalityElimination dependent_pairFormation promote_hyp instantiate

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: 2018_05_22-PM-09_54_47
Last ObjectModification: 2018_05_20-PM-10_12_00

Theory : lattices


Home Index