lemma (in M_trancl) trancl_closed [intro,simp]: "M(r) \ M(trancl(r))" by (simp add: trancl_def)
lemma (in M_trancl) trancl_abs [simp]: "\M(r); M(z)\ \ tran_closure(M,r,z) \ z = trancl(r)" by (simp add: tran_closure_def trancl_def)
lemma (in M_trancl) wellfounded_trancl_separation': "\M(r); M(Z)\ \ separation (M, \x. \w[M]. w \ Z \ \w,x\ \ r^+)" by (insert wellfounded_trancl_separation [of r Z], simp)
text\<open>Alternative proof of \<open>wf_on_trancl\<close>; inspiration for the
relativized version. Original version is on theory WF.\<close> lemma"\wf[A](r); r-``A \ A\ \ wf[A](r^+)" apply (simp add: wf_on_def wf_def) apply (safe) apply (drule_tac x = "{x\A. \w. \w,x\ \ r^+ \ w \ Z}" in spec) apply (blast elim: tranclE) done
lemma (in M_trancl) wellfounded_on_trancl: "\wellfounded_on(M,A,r); r-``A \ A; M(r); M(A)\ \<Longrightarrow> wellfounded_on(M,A,r^+)" apply (simp add: wellfounded_on_def) apply (safe intro!: equalityI) apply (rename_tac Z x) apply (subgoal_tac "M({x\A. \w[M]. w \ Z \ \w,x\ \ r^+})") prefer 2 apply (blast intro: wellfounded_trancl_separation') apply (drule_tac x = "{x\A. \w[M]. w \ Z \ \w,x\ \ r^+}" in rspec, safe) apply (blast dest: transM, simp) apply (rename_tac y w) apply (drule_tac x=w in bspec, assumption, clarify) apply (erule tranclE) apply (blast dest: transM) (*transM is needed to prove M(xa)*) apply blast done
subsection\<open>Absoluteness without assuming transitivity\<close> lemma (in M_trancl) eq_pair_wfrec_iff: "\wf(r); M(r); M(y);
strong_replacement(M, \<lambda>x z. \<exists>y[M]. \<exists>g[M].
pair(M,x,y,z) \<and>
is_recfun(r^+, x, \<lambda>x f. H(x, restrict(f, r -`` {x})), g) \<and>
y = H(x, restrict(g, r -`` {x}))); \<forall>x[M]. \<forall>g[M]. function(g) \<longrightarrow> M(H(x,g))\<rbrakk> \<Longrightarrow> y = <x, wfrec(r, x, H)> \<longleftrightarrow>
(\<exists>f[M]. is_recfun(r^+, x, \<lambda>x f. H(x, restrict(f, r -`` {x})), f) \<and>
y = <x, H(x,restrict(f,r-``{x}))>)" apply safe apply (simp add: wfrec_relativize [THEN iff_sym, of concl: _ x]) txt\<open>converse direction\<close> apply (rule sym) apply (simp add: wfrec_relativize, blast) done
text\<open>Full version not assuming transitivity, but maybe not very useful.\<close> theorem (in M_trancl) wfrec_closed: "\wf(r); M(r); M(a);
wfrec_replacement(M,MH,r^+);
relation2(M,MH, \<lambda>x f. H(x, restrict(f, r -`` {x}))); \<forall>x[M]. \<forall>g[M]. function(g) \<longrightarrow> M(H(x,g))\<rbrakk> \<Longrightarrow> M(wfrec(r,a,H))" apply (frule wfrec_replacement'
[of MH "r^+""\x f. H(x, restrict(f, r -`` {x}))"]) prefer 4 apply (frule wfrec_replacement_iff [THEN iffD1]) apply (rule wfrec_closed_lemma, assumption+) apply (simp_all add: eq_pair_wfrec_iff func.function_restrictI) done
end
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.11Bemerkung:
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.