### Nuprl Lemma : trivial-record-update

`∀[r,z:Top].  (r[z := r.z] ~ λx.if x =a z then r x else r x fi )`

Proof

Definitions occuring in Statement :  record-update: `r[x := v]` record-select: `r.x` ifthenelse: `if b then t else f fi ` eq_atom: `x =a y` uall: `∀[x:A]. B[x]` top: `Top` apply: `f a` lambda: `λx.A[x]` sqequal: `s ~ t`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` record-select: `r.x` record-update: `r[x := v]` eq_atom: `x =a y` ifthenelse: `if b then t else f fi ` btrue: `tt` bfalse: `ff` it: `⋅` so_lambda: `so_lambda(x,y,z,w.t[x; y; z; w])` so_apply: `x[s1;s2;s3;s4]` so_lambda: `λ2x.t[x]` top: `Top` so_apply: `x[s]` uimplies: `b supposing a` strict4: `strict4(F)` and: `P ∧ Q` all: `∀x:A. B[x]` implies: `P `` Q` has-value: `(a)↓` prop: `ℙ` guard: `{T}` or: `P ∨ Q` squash: `↓T`
Lemmas referenced :  lifting-strict-atom_eq top_wf equal_wf has-value_wf_base base_wf is-exception_wf atom_eq_sq_normalize
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalRule extract_by_obid sqequalHypSubstitution isectElimination thin baseClosed isect_memberEquality voidElimination voidEquality independent_isectElimination independent_pairFormation lambdaFormation callbyvalueDecide hypothesis hypothesisEquality equalityTransitivity equalitySymmetry unionEquality unionElimination sqleReflexivity dependent_functionElimination independent_functionElimination baseApply closedConclusion decideExceptionCases inrFormation because_Cache imageMemberEquality imageElimination exceptionSqequal inlFormation instantiate rename sqequalAxiom

Latex:
\mforall{}[r,z:Top].    (r[z  :=  r.z]  \msim{}  \mlambda{}x.if  x  =a  z  then  r  x  else  r  x  fi  )

Date html generated: 2018_05_21-PM-08_40_04
Last ObjectModification: 2017_07_26-PM-06_04_09

Theory : general

Home Index