### Nuprl Lemma : member-update-alist1

`∀[A,T:Type].`
`  ∀eq:EqDecider(T). ∀x:T. ∀L:(T × A) List. ∀z:A. ∀f:A ⟶ A. ∀y:T.`
`    ((y ∈ map(λp.(fst(p));update-alist(eq;L;x;z;v.f[v]))) `⇐⇒` (y ∈ map(λp.(fst(p));L)) ∨ (y = x ∈ T))`

Proof

Definitions occuring in Statement :  l_member: `(x ∈ l)` update-alist: `update-alist(eq;L;x;z;v.f[v])` map: `map(f;as)` list: `T List` deq: `EqDecider(T)` uall: `∀[x:A]. B[x]` so_apply: `x[s]` pi1: `fst(t)` all: `∀x:A. B[x]` iff: `P `⇐⇒` Q` or: `P ∨ Q` lambda: `λx.A[x]` function: `x:A ⟶ B[x]` product: `x:A × B[x]` universe: `Type` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` member: `t ∈ T` so_lambda: `λ2x.t[x]` pi1: `fst(t)` so_apply: `x[s]` implies: `P `` Q` update-alist: `update-alist(eq;L;x;z;v.f[v])` so_lambda: `so_lambda(x,y,z.t[x; y; z])` top: `Top` so_apply: `x[s1;s2;s3]` prop: `ℙ` deq: `EqDecider(T)` iff: `P `⇐⇒` Q` and: `P ∧ Q` or: `P ∨ Q` rev_implies: `P `` Q` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` eqof: `eqof(d)` uiff: `uiff(P;Q)` uimplies: `b supposing a` ifthenelse: `if b then t else f fi ` bfalse: `ff` not: `¬A` guard: `{T}` false: `False`
Lemmas referenced :  list_induction all_wf iff_wf l_member_wf map_wf update-alist_wf or_wf equal_wf list_wf list_ind_nil_lemma map_nil_lemma map_cons_lemma list_ind_cons_lemma deq_wf bool_wf equal-wf-T-base assert_wf and_wf cons_wf pi1_wf cons_member bnot_wf not_wf eqof_wf uiff_transitivity eqtt_to_assert safe-assert-deq iff_transitivity iff_weakening_uiff eqff_to_assert assert_of_bnot false_wf member_singleton nil_member nil_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation lambdaFormation cut thin introduction extract_by_obid sqequalHypSubstitution isectElimination productEquality cumulativity hypothesisEquality sqequalRule lambdaEquality functionEquality because_Cache productElimination applyEquality functionExtensionality hypothesis independent_functionElimination dependent_functionElimination isect_memberEquality voidElimination voidEquality rename universeEquality setElimination equalityTransitivity equalitySymmetry baseClosed independent_pairFormation inlFormation addLevel hyp_replacement dependent_set_memberEquality applyLambdaEquality levelHypothesis independent_pairEquality orFunctionality promote_hyp unionElimination inrFormation equalityElimination independent_isectElimination impliesFunctionality allFunctionality

Latex:
\mforall{}[A,T:Type].
\mforall{}eq:EqDecider(T).  \mforall{}x:T.  \mforall{}L:(T  \mtimes{}  A)  List.  \mforall{}z:A.  \mforall{}f:A  {}\mrightarrow{}  A.  \mforall{}y:T.
((y  \mmember{}  map(\mlambda{}p.(fst(p));update-alist(eq;L;x;z;v.f[v])))  \mLeftarrow{}{}\mRightarrow{}  (y  \mmember{}  map(\mlambda{}p.(fst(p));L))  \mvee{}  (y  =  x))

Date html generated: 2017_04_14-AM-09_24_59
Last ObjectModification: 2017_02_27-PM-03_59_28

Theory : list_1

Home Index