Nuprl Lemma : mFOL-proveable-evidence
Soundness theorem for mFOL() with respect to uniform evidence semantics.
It says that from a correct proof of a mFOL sequent we may construct
uniform evidence mFOL-sequent-evidence for the sequent.
Uniform evidence for an abstract formula, fmla, is the
intersection over all domains, Dom, and all structures, S, over Dom,
of evidence for ∀a:FOAssignment(Dom). Dom,S,a |= fmla.
NOTE:
Since there are no assignments into an empty domain, this means that any
evidence works when Dom is empty, so the intersection is essentially over
non-empty domains Dom.
Thus, (forall x. P(x)) => (exists x. P(x)) is uniformly valid
(i.e. has uniform evidence) so (by our completeness theorem) is provable.
A careful examination of the effect of the mFOL rules
(see mFOLeffect)
will show that it is indeed provable.⋅
∀[s:mFOL-sequent()]. (mFOL-proveable(s)
⇒ mFOL-sequent-evidence(s))
Proof
Definitions occuring in Statement :
mFOL-proveable: mFOL-proveable(s)
,
mFOL-sequent-evidence: mFOL-sequent-evidence(s)
,
mFOL-sequent: mFOL-sequent()
,
uall: ∀[x:A]. B[x]
,
implies: P
⇒ Q
Lemmas :
mFOL-proveable_wf,
mFOL-sequent_wf,
W-induction,
mFOLRule_wf,
mFOLeffect_wf,
list_wf,
unit_wf2,
int_seg_wf,
length_wf,
all_wf,
correct_proof_wf,
subtype_rel_self,
proof-tree_wf,
mFOL-sequent-evidence_wf,
W_wf,
mFOLRule-induction,
mFOL_wf,
mFOconnect?_wf,
bool_wf,
eqtt_to_assert,
eq_atom_wf,
mFOconnect-knd_wf,
assert_of_eq_atom,
length_of_cons_lemma,
length_of_nil_lemma,
less_than_wf,
false_wf,
lelt_wf,
select_wf,
equal_wf,
list-cases,
cons_neq_nil,
mFOconnect-left_wf,
cons_wf,
mFOconnect-right_wf,
product_subtype_list,
length_wf_nat,
nat_wf,
decidable__lt,
condition-implies-le,
minus-add,
minus-one-mul,
zero-add,
add-commutes,
add_functionality_wrt_le,
add-associates,
add-zero,
le-add-cancel,
length_nil,
non_neg_length,
nil_wf,
length_wf_nil,
length_cons,
eqff_to_assert,
bool_cases_sqequal,
subtype_base_sq,
bool_subtype_base,
assert-bnot,
neg_assert_of_eq_atom,
bfalse_wf,
and_wf,
isl_wf,
btrue_wf,
btrue_neq_bfalse,
equal-wf-base-T,
mRuleandI_wf,
mRuleimpI_wf,
bl-all_wf,
l_member_wf,
bnot_wf,
deq-member_wf,
int-deq_wf,
mFOL-freevars_wf,
iff_transitivity,
assert_wf,
l_all_wf2,
not_wf,
iff_weakening_uiff,
assert-bl-all,
l_all_functionality,
assert_of_bnot,
assert-deq-member,
eq_bool_wf,
mFOquant-isall_wf,
assert_of_eq_bool,
mFOL-subst_wf,
mFOquant-body_wf,
mFOquant-var_wf,
equal-wf-T-base,
mRuleallI_wf,
mFOquant?_wf,
mRuleexistsI_wf,
mRuleorI_wf,
deq-mFO_wf,
mRulehyp_wf,
lt_int_wf,
assert_of_lt_int,
null_nil_lemma,
null_wf3,
subtype_rel_list,
top_wf,
null_cons_lemma,
sq_stable__le,
mRuleandE_wf,
mRuleorE_wf,
mRuleimpE_wf,
mRuleallE_wf,
mRuleexistsE_wf,
mFOL-induction,
mFOconnect_wf,
squash_wf,
true_wf,
iff_weakening_equal,
equal-wf-base,
atom_subtype_base,
mFOL-sequent-evidence_and,
map_cons_lemma,
tupletype_cons_lemma,
FOAssignment_wf,
FOStruct_wf,
map_nil_lemma,
tupletype_nil_lemma,
FOSatWith_wf,
mFOL-abstract_wf,
map_wf,
assert_of_null,
tuple-type_wf,
mFOquant_wf,
mFOatomic_wf,
mFOL-subst-abstract,
update-assignment_wf,
eq_int_wf,
assert_of_eq_int,
neg_assert_of_eq_int,
mFOL-abstract-functionality,
member_filter,
int_subtype_base,
list_induction,
l_all_cons,
mFOL-sequent-evidence_transitivity1,
mFOL-sequent-evidence-trivial,
mFOL-sequent-evidence_transitivity2,
select-cons,
le_int_wf,
le_wf,
add-swap,
decidable__le,
subtract_wf,
not-le-2,
minus-minus,
minus-zero,
le-add-cancel2,
less_than_transitivity2,
le_weakening,
bool_cases,
assert_of_le_int,
select-tuple_wf,
map_length,
select-map,
stuck-spread,
base_wf,
null-map,
less_than_transitivity1,
less_than_irreflexivity,
sq_stable__correct_proof,
proof-tree-ext
\mforall{}[s:mFOL-sequent()]. (mFOL-proveable(s) {}\mRightarrow{} mFOL-sequent-evidence(s))
Date html generated:
2015_07_17-AM-07_57_12
Last ObjectModification:
2015_02_03-PM-09_43_19
Home
Index