Nuprl Lemma : FOL-subst-abstract

The evidence that fmla[x/y] in Dom, S, is the same as the evidence
that fmla is true in Dom, S, a[y := x].⋅

[Dom:Type]. ∀[S:FOStruct+{i:l}(Dom)]. ∀[fmla:mFOL()]. ∀[x,y:ℤ]. ∀[a:FOAssignment(mFOL-freevars(fmla[x/y]),Dom)].
  (Dom,S,a +|= FOL-abstract(fmla[x/y]) Dom,S,a[y := x] +|= FOL-abstract(fmla) ∈ ℙ)


Proof




Definitions occuring in Statement :  FOL-subst: fmla[nw/old] FOL-abstract: FOL-abstract(fmla) mFOL-freevars: mFOL-freevars(fmla) mFOL: mFOL() FOSatWith+: Dom,S,a +|= fmla update-assignment: a[x := v] FOStruct+: FOStruct+{i:l}(Dom) FOAssignment: FOAssignment(vs,Dom) uall: [x:A]. B[x] prop: apply: a int: universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T FOL-subst: fmla[nw/old] all: x:A. B[x] subtype_rel: A ⊆B so_lambda: λ2x.t[x] and: P ∧ Q prop: uimplies: supposing a squash: T true: True so_apply: x[s] implies:  Q uiff: uiff(P;Q) FOAssignment: FOAssignment(vs,Dom) update-assignment: a[x := v] bool: 𝔹 unit: Unit it: btrue: tt iff: ⇐⇒ Q ifthenelse: if then else fi  bfalse: ff exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) guard: {T} bnot: ¬bb assert: b false: False rev_implies:  Q cand: c∧ B nequal: a ≠ b ∈  not: ¬A
Lemmas referenced :  FOL-rename-bound-to-avoid_wf cons_wf nil_wf set_wf mFOL_wf equal_wf list_wf mFOL-freevars_wf length_wf FOL-abstract_wf subtype_rel-equal AbstractFOFormula+_wf l_disjoint_wf mFOL-boundvars_wf l_disjoint_singleton2 FOAssignment_wf mFOL-rename_wf FOL-subst_wf FOStruct+_wf deq-member_wf int-deq_wf bool_wf eqtt_to_assert assert-deq-member eq_int_wf assert_of_eq_int l_member_wf eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot neg_assert_of_eq_int mFOL-freevars-of-rename equal-wf-base int_subtype_base not_wf FOL-abstract-rename squash_wf true_wf FOSatWith+_wf list_subtype_base
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut thin extract_by_obid sqequalHypSubstitution dependent_functionElimination hypothesisEquality isectElimination intEquality hypothesis instantiate applyEquality lambdaEquality cumulativity universeEquality sqequalRule productEquality applyLambdaEquality because_Cache independent_isectElimination imageElimination equalitySymmetry natural_numberEquality imageMemberEquality baseClosed lambdaFormation setElimination rename productElimination equalityTransitivity independent_functionElimination isect_memberEquality axiomEquality functionExtensionality unionElimination equalityElimination dependent_set_memberEquality dependent_pairFormation promote_hyp voidElimination inlFormation independent_pairFormation inrFormation setEquality hyp_replacement

Latex:
\mforall{}[Dom:Type].  \mforall{}[S:FOStruct+\{i:l\}(Dom)].  \mforall{}[fmla:mFOL()].  \mforall{}[x,y:\mBbbZ{}].
\mforall{}[a:FOAssignment(mFOL-freevars(fmla[x/y]),Dom)].
    (Dom,S,a  +|=  FOL-abstract(fmla[x/y])  =  Dom,S,a[y  :=  a  x]  +|=  FOL-abstract(fmla))



Date html generated: 2018_05_21-PM-10_24_39
Last ObjectModification: 2017_07_26-PM-06_38_37

Theory : minimal-first-order-logic


Home Index