Nuprl Lemma : record+_record

[T:Atom ⟶ 𝕌']. ∀[B:record(x.T[x]) ⟶ 𝕌']. ∀[z:Atom]. ∀[r:record(x.T[x])
                                                           z:B[self]].
  (r ∈ record(x.if =a then B[r] else T[x] fi ))


Proof




Definitions occuring in Statement :  record+: record+ record: record(x.T[x]) ifthenelse: if then else fi  eq_atom: =a y uall: [x:A]. B[x] so_apply: x[s] member: t ∈ T function: x:A ⟶ B[x] atom: Atom universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] record+: record+ member: t ∈ T record: record(x.T[x]) so_lambda: λ2x.t[x] so_apply: x[s] all: x:A. B[x] implies:  Q bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) and: P ∧ Q uimplies: supposing a ifthenelse: if then else fi  subtype_rel: A ⊆B guard: {T} bfalse: ff exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) bnot: ¬bb assert: b false: False nequal: a ≠ b ∈  not: ¬A
Lemmas referenced :  record+_wf istype-atom record_wf istype-universe eq_atom_wf eqtt_to_assert assert_of_eq_atom subtype_rel-equal top_wf eqff_to_assert atom_subtype_base bool_subtype_base bool_cases_sqequal subtype_base_sq bool_wf assert-bnot neg_assert_of_eq_atom
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt sqequalHypSubstitution dependentIntersectionElimination universeIsType cut introduction extract_by_obid isectElimination thin because_Cache sqequalRule lambdaEquality_alt applyEquality hypothesisEquality hypothesis functionIsType instantiate universeEquality equalityTransitivity equalitySymmetry functionExtensionality_alt inhabitedIsType lambdaFormation_alt unionElimination equalityElimination productElimination independent_isectElimination cumulativity equalityIsType1 dependent_functionElimination independent_functionElimination dependent_pairFormation_alt equalityIsType4 baseApply closedConclusion baseClosed promote_hyp voidElimination

Latex:
\mforall{}[T:Atom  {}\mrightarrow{}  \mBbbU{}'].  \mforall{}[B:record(x.T[x])  {}\mrightarrow{}  \mBbbU{}'].  \mforall{}[z:Atom].  \mforall{}[r:record(x.T[x])
                                                                                                                      z:B[self]].
    (r  \mmember{}  record(x.if  x  =a  z  then  B[r]  else  T[x]  fi  ))



Date html generated: 2019_10_15-AM-11_28_25
Last ObjectModification: 2018_10_16-PM-02_35_53

Theory : general


Home Index