Nuprl Lemma : fset-ac-le-distributive

[T:Type]. ∀[eq:EqDecider(T)]. ∀[a,b,c:{ac:fset(fset(T))| ↑fset-antichain(eq;ac)} ].
  (fset-ac-glb(eq;a;fset-ac-lub(eq;b;c))
  fset-ac-lub(eq;fset-ac-glb(eq;a;b);fset-ac-glb(eq;a;c))
  ∈ {ac:fset(fset(T))| ↑fset-antichain(eq;ac)} )


Proof




Definitions occuring in Statement :  fset-ac-glb: fset-ac-glb(eq;ac1;ac2) fset-ac-lub: fset-ac-lub(eq;ac1;ac2) fset-antichain: fset-antichain(eq;ac) fset: fset(T) deq: EqDecider(T) assert: b uall: [x:A]. B[x] set: {x:A| B[x]}  universe: Type equal: t ∈ T
Definitions unfolded in proof :  true: True f-proper-subset: xs ⊆≠ ys top: Top decidable: Dec(P) fset-ac-lub: fset-ac-lub(eq;ac1;ac2) or: P ∨ Q fset-union: x ⋃ y l-union: as ⋃ bs reduce: reduce(f;k;as) list_ind: list_ind false: False exists: x:A. B[x] not: ¬A rev_uimplies: rev_uimplies(P;Q) uiff: uiff(P;Q) rev_implies:  Q iff: ⇐⇒ Q fset-ac-le: fset-ac-le(eq;ac1;ac2) fset-ac-glb: fset-ac-glb(eq;ac1;ac2) guard: {T} greatest-lower-bound: greatest-lower-bound(T;x,y.R[x; y];a;b;c) so_apply: x[s] so_lambda: λ2x.t[x] squash: T sq_stable: SqStable(P) subtype_rel: A ⊆B implies:  Q cand: c∧ B and: P ∧ Q least-upper-bound: least-upper-bound(T;x,y.R[x; y];a;b;c) all: x:A. B[x] uimplies: supposing a so_apply: x[s1;s2] so_lambda: λ2y.t[x; y] prop: member: t ∈ T uall: [x:A]. B[x]
Lemmas referenced :  true_wf istype-universe fset-union-commutes subtype_rel_self iff_weakening_equal f-subset_transitivity member-fset-filter assert-deq-f-subset fset-extensionality mem_empty_lemma fset-member_witness false_wf implies-member-fset-minimals squash_wf decidable__squash_exists_fset decidable__f-proper-subset member-fset-union assert-f-proper-subset-dec iff_transitivity f-proper-subset_wf istype-assert istype-void member-fset-image-iff member-f-union assert_witness equal-wf-T-base not_wf assert-fset-null member-fset-minimals assert_of_bnot fset-member_wf isect_wf uall_wf fset-union_wf fset-image_wf f-union_wf f-proper-subset-dec_wf fset-minimals_wf f-subset_wf iff_wf all_wf bool_wf deq-f-subset_wf fset-filter_wf fset-null_wf bnot_wf fset-all_wf iff_weakening_uiff deq-fset_wf fset-all-iff fset-ac-le-implies fset-ac-le_transitivity fset-ac-glb-is-glb deq_wf set_wf equal_wf decidable__assert sq_stable_from_decidable fset-ac-lub-is-lub fset-ac-lub_wf fset-ac-glb_wf fset-ac-order fset-ac-le_wf fset-antichain_wf assert_wf fset_wf least-upper-bound-unique
Rules used in proof :  instantiate natural_numberEquality hyp_replacement applyLambdaEquality voidEquality independent_pairEquality productEquality unionElimination Error :isect_memberFormation_alt,  voidElimination Error :functionIsTypeImplies,  Error :isect_memberEquality_alt,  Error :isectIsTypeImplies,  Error :dependent_pairFormation_alt,  Error :productIsType,  Error :functionIsType,  Error :lambdaFormation_alt,  Error :equalityIstype,  Error :universeIsType,  Error :lambdaEquality_alt,  Error :inhabitedIsType,  sqequalBase addLevel functionEquality productElimination cumulativity universeEquality axiomEquality isect_memberEquality equalitySymmetry equalityTransitivity imageElimination baseClosed imageMemberEquality independent_functionElimination because_Cache applyEquality lambdaFormation independent_pairFormation dependent_functionElimination independent_isectElimination rename setElimination lambdaEquality sqequalRule hypothesis hypothesisEquality setEquality thin isectElimination sqequalHypSubstitution extract_by_obid dependent_set_memberEquality cut introduction isect_memberFormation sqequalReflexivity computationStep sqequalTransitivity sqequalSubstitution

Latex:
\mforall{}[T:Type].  \mforall{}[eq:EqDecider(T)].  \mforall{}[a,b,c:\{ac:fset(fset(T))|  \muparrow{}fset-antichain(eq;ac)\}  ].
    (fset-ac-glb(eq;a;fset-ac-lub(eq;b;c))  =  fset-ac-lub(eq;fset-ac-glb(eq;a;b);fset-ac-glb(eq;a;c)))



Date html generated: 2019_06_20-PM-02_13_59
Last ObjectModification: 2019_06_20-PM-02_07_27

Theory : finite!sets


Home Index