Nuprl Lemma : identity-record+-update

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


Proof




Definitions occuring in Statement :  record-update: r[x := v] record-select: r.x record+: record+ record: record(x.T[x]) uall: [x:A]. B[x] so_apply: x[s] function: x:A ⟶ B[x] atom: Atom universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] record+: record+ so_lambda: λ2x.t[x] member: t ∈ T 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  sq_type: SQType(T) guard: {T} record-update: r[x := v] bfalse: ff exists: x:A. B[x] subtype_rel: A ⊆B or: P ∨ Q bnot: ¬bb assert: b false: False squash: T label: ...$L... t top: Top true: True iff: ⇐⇒ Q rev_implies:  Q record-select: r.x nequal: a ≠ b ∈  not: ¬A prop: istype: istype(T)
Lemmas referenced :  identity-record-update eq_atom_wf eqtt_to_assert assert_of_eq_atom subtype_base_sq atom_subtype_base eqff_to_assert bool_cases_sqequal bool_subtype_base assert-bnot neg_assert_of_eq_atom equal_wf istype-universe top_wf istype-void iff_weakening_equal record+_wf istype-atom record_wf bool_wf eq_atom-reflexive subtype_rel-equal subtype_rel_wf squash_wf true_wf record-update_wf record-select_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt dependentIntersection_memberEquality cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin sqequalRule lambdaEquality_alt applyEquality hypothesisEquality inhabitedIsType dependentIntersectionElimination equalityTransitivity hypothesis equalitySymmetry functionExtensionality_alt lambdaFormation_alt unionElimination equalityElimination productElimination independent_isectElimination instantiate because_Cache dependent_functionElimination independent_functionElimination dependent_pairFormation_alt equalityIsType4 baseApply closedConclusion baseClosed promote_hyp voidElimination imageElimination universeIsType isect_memberEquality_alt natural_numberEquality imageMemberEquality equalityIsType1 functionIsType universeEquality cumulativity atomEquality

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]].  \mforall{}[x:Atom].
    (r[x  :=  r.x]  =  r)



Date html generated: 2019_10_15-AM-11_29_14
Last ObjectModification: 2018_10_16-PM-02_35_29

Theory : general


Home Index