Nuprl Lemma : mFOL-abstract-rename

[Dom:Type]. ∀[S:FOStruct(Dom)].
  ∀x,y:ℤ. ∀fmla:mFOL().
    ((¬(x ∈ mFOL-boundvars(fmla)))
     (∀a1:FOAssignment(mFOL-freevars(mFOL-rename(fmla;y;x)),Dom). ∀a2:FOAssignment(mFOL-freevars(fmla),Dom).
          ((a2 FOAssigment-rename(a1;fmla;x;y) ∈ FOAssignment(mFOL-freevars(fmla),Dom))
           (Dom,S,a2 |= mFOL-abstract(fmla) Dom,S,a1 |= mFOL-abstract(mFOL-rename(fmla;y;x)) ∈ ℙ))))


Proof




Definitions occuring in Statement :  FOAssigment-rename: FOAssigment-rename(a;fmla;x;y) mFOL-abstract: mFOL-abstract(fmla) mFOL-rename: mFOL-rename(fmla;old;new) mFOL-boundvars: mFOL-boundvars(fmla) mFOL-freevars: mFOL-freevars(fmla) mFOL: mFOL() FOSatWith: Dom,S,a |= fmla FOStruct: FOStruct(Dom) FOAssignment: FOAssignment(vs,Dom) l_member: (x ∈ l) uall: [x:A]. B[x] prop: all: x:A. B[x] not: ¬A implies:  Q int: universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] all: x:A. B[x] so_lambda: λ2x.t[x] member: t ∈ T implies:  Q prop: uimplies: supposing a so_apply: x[s] not: ¬A mFOL-boundvars: mFOL-boundvars(fmla) mFOL_ind: mFOL_ind mFOatomic: name(vars) nil: [] it: false: False guard: {T} FOAssigment-rename: FOAssigment-rename(a;fmla;x;y) mFOL-rename: mFOL-rename(fmla;old;new) mFOL-abstract: mFOL-abstract(fmla) AbstractFOAtomic: AbstractFOAtomic(n;L) FOSatWith: Dom,S,a |= fmla FOStruct: FOStruct(Dom) top: Top squash: T compose: g bool: 𝔹 unit: Unit btrue: tt uiff: uiff(P;Q) and: P ∧ Q ifthenelse: if then else fi  bfalse: ff exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) bnot: ¬bb assert: b true: True mFOL-freevars: mFOL-freevars(fmla) iff: ⇐⇒ Q rev_implies:  Q update-assignment: a[x := v] FOAssignment: FOAssignment(vs,Dom) subtype_rel: A ⊆B nequal: a ≠ b ∈  decidable: Dec(P) satisfiable_int_formula: satisfiable_int_formula(fmla) mFOconnect: mFOconnect(knd;left;right) FOConnective: FOConnective(knd) let: let cand: c∧ B mFOquant: mFOquant(isall;var;body) FOQuantifier: FOQuantifier(isall) filter: filter(P;l) reduce: reduce(f;k;as) list_ind: list_ind
Lemmas referenced :  mFOL-induction not_wf l_member_wf mFOL-boundvars_wf all_wf FOAssignment_wf mFOL-freevars_wf mFOL-rename_wf equal_wf FOAssigment-rename_wf FOSatWith_wf mFOL-abstract_wf mFOL_wf mFOatomic_wf nil_wf istype-void list_wf istype-atom mFOconnect_wf mFOquant_wf bool_wf istype-int FOStruct_wf istype-universe map-map list-subtype map_wf eq_int_wf eqtt_to_assert assert_of_eq_int eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot neg_assert_of_eq_int deq-member_wf int-deq_wf remove-repeats_wf assert_wf bnot_wf istype-assert bool_cases assert-deq-member iff_transitivity iff_weakening_uiff assert_of_bnot subtype_rel_sets_simple member-remove-repeats equal-wf-base squash_wf true_wf eq_int_eq_true btrue_wf subtype_rel_self iff_weakening_equal int_subtype_base set_subtype_base bfalse_wf assert_elim btrue_neq_bfalse strong-subtype-l_member strong-subtype-self remove-repeats_property decidable__equal_int full-omega-unsat intformnot_wf intformeq_wf itermVar_wf int_formula_prop_not_lemma int_formula_prop_eq_lemma int_term_value_var_lemma int_formula_prop_wf eq_int_eq_false member-union val-union-l-union int-valueall-type ifthenelse_wf eq_atom_wf subtype_rel_FOAssignment union-contains equal_functionality_wrt_subtype_rel2 union-contains2 AbstractFOFormula_wf trivial-mFOL-rename member-insert update-assignment_wf member_filter filter_wf5 intformand_wf int_formula_prop_and_lemma
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt lambdaFormation_alt cut thin instantiate introduction extract_by_obid hypothesis sqequalHypSubstitution isectElimination sqequalRule lambdaEquality_alt functionEquality closedConclusion intEquality hypothesisEquality because_Cache cumulativity independent_isectElimination universeEquality universeIsType independent_functionElimination equalityIstype inhabitedIsType functionIsType applyEquality isect_memberEquality_alt voidElimination equalityTransitivity equalitySymmetry imageElimination setEquality functionExtensionality setElimination rename unionElimination equalityElimination productElimination dependent_pairFormation_alt promote_hyp dependent_functionElimination natural_numberEquality imageMemberEquality baseClosed independent_pairFormation applyLambdaEquality dependent_set_memberEquality_alt productIsType baseApply sqequalBase approximateComputation int_eqEquality inlFormation_alt inrFormation_alt tokenEquality productEquality unionEquality setIsType

Latex:
\mforall{}[Dom:Type].  \mforall{}[S:FOStruct(Dom)].
    \mforall{}x,y:\mBbbZ{}.  \mforall{}fmla:mFOL().
        ((\mneg{}(x  \mmember{}  mFOL-boundvars(fmla)))
        {}\mRightarrow{}  (\mforall{}a1:FOAssignment(mFOL-freevars(mFOL-rename(fmla;y;x)),Dom).
                \mforall{}a2:FOAssignment(mFOL-freevars(fmla),Dom).
                    ((a2  =  FOAssigment-rename(a1;fmla;x;y))
                    {}\mRightarrow{}  (Dom,S,a2  |=  mFOL-abstract(fmla)  =  Dom,S,a1  |=  mFOL-abstract(mFOL-rename(fmla;y;x))))))



Date html generated: 2019_10_16-AM-11_39_24
Last ObjectModification: 2018_12_01-PM-05_07_44

Theory : minimal-first-order-logic


Home Index