Nuprl Lemma : mk-distributive-lattice_wf

[T:Type]. ∀[m,j:T ⟶ T ⟶ T].
  mk-distributive-lattice(T; m; j) ∈ DistributiveLattice 
  supposing (∀[a,b:T].  (m[a;b] m[b;a] ∈ T))
  ∧ (∀[a,b:T].  (j[a;b] j[b;a] ∈ T))
  ∧ (∀[a,b,c:T].  (m[a;m[b;c]] m[m[a;b];c] ∈ T))
  ∧ (∀[a,b,c:T].  (j[a;j[b;c]] j[j[a;b];c] ∈ T))
  ∧ (∀[a,b:T].  (j[a;m[a;b]] a ∈ T))
  ∧ (∀[a,b:T].  (m[a;j[a;b]] a ∈ T))
  ∧ (∀[a,b,c:T].  (m[a;j[b;c]] j[m[a;b];m[a;c]] ∈ T))


Proof




Definitions occuring in Statement :  mk-distributive-lattice: mk-distributive-lattice(T; m; j) distributive-lattice: DistributiveLattice uimplies: supposing a uall: [x:A]. B[x] so_apply: x[s1;s2] and: P ∧ Q member: t ∈ T function: x:A ⟶ B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a and: P ∧ Q mk-distributive-lattice: mk-distributive-lattice(T; m; j) distributive-lattice: DistributiveLattice cand: c∧ B subtype_rel: A ⊆B mk-lattice: mk-lattice(T;m;j) lattice-axioms: lattice-axioms(l) lattice-join: a ∨ b lattice-meet: a ∧ b lattice-point: Point(l) all: x:A. B[x] top: Top eq_atom: =a y ifthenelse: if then else fi  bfalse: ff btrue: tt so_apply: x[s1;s2] record-select: r.x record-update: r[x := v] so_lambda: λ2x.t[x] so_apply: x[s] prop:
Lemmas referenced :  mk-lattice_wf rec_select_update_lemma subtype_rel_self lattice-point_wf and_wf lattice-axioms_wf uall_wf equal_wf lattice-meet_wf lattice-join_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalHypSubstitution productElimination thin dependent_set_memberEquality lemma_by_obid isectElimination because_Cache hypothesisEquality independent_isectElimination hypothesis independent_pairFormation applyEquality sqequalRule dependent_functionElimination isect_memberEquality voidElimination voidEquality axiomEquality lambdaEquality equalityTransitivity equalitySymmetry productEquality cumulativity functionEquality universeEquality

Latex:
\mforall{}[T:Type].  \mforall{}[m,j:T  {}\mrightarrow{}  T  {}\mrightarrow{}  T].
    mk-distributive-lattice(T;  m;  j)  \mmember{}  DistributiveLattice 
    supposing  (\mforall{}[a,b:T].    (m[a;b]  =  m[b;a]))
    \mwedge{}  (\mforall{}[a,b:T].    (j[a;b]  =  j[b;a]))
    \mwedge{}  (\mforall{}[a,b,c:T].    (m[a;m[b;c]]  =  m[m[a;b];c]))
    \mwedge{}  (\mforall{}[a,b,c:T].    (j[a;j[b;c]]  =  j[j[a;b];c]))
    \mwedge{}  (\mforall{}[a,b:T].    (j[a;m[a;b]]  =  a))
    \mwedge{}  (\mforall{}[a,b:T].    (m[a;j[a;b]]  =  a))
    \mwedge{}  (\mforall{}[a,b,c:T].    (m[a;j[b;c]]  =  j[m[a;b];m[a;c]]))



Date html generated: 2016_05_18-AM-11_21_19
Last ObjectModification: 2015_12_28-PM-02_03_53

Theory : lattices


Home Index