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 :  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: =a y ifthenelse: if then else 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:  Q cand: c∧ B uiff: uiff(P;Q) subtype_rel: A ⊆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: supposing a so_apply: x[s1;s2] so_lambda: λ2y.t[x; y] 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 :  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