# HG changeset patch # User desharna # Date 1710662744 -3600 # Node ID 91b7695c92cff77b7fa09d080e50f801fcfe74e9 # Parent 65e0682cca6396b111e48b36808abfff6c366411 tuned proofs diff -r 65e0682cca63 -r 91b7695c92cf src/HOL/Wellfounded.thy --- a/src/HOL/Wellfounded.thy Sun Mar 17 09:03:18 2024 +0100 +++ b/src/HOL/Wellfounded.thy Sun Mar 17 09:05:44 2024 +0100 @@ -150,19 +150,8 @@ by blast qed -lemma wfE_pf: - assumes wf: "wf R" - and a: "A \ R `` A" - shows "A = {}" -proof - - from wf have "x \ A" for x - proof induct - fix x assume "\y. (y, x) \ R \ y \ A" - then have "x \ R `` A" by blast - with a show "x \ A" by blast - qed - then show ?thesis by auto -qed +lemma wfE_pf: "wf R \ A \ R `` A \ A = {}" + using wf_onE_pf[of UNIV, unfolded wf_on_UNIV, simplified] . lemma wf_onI_pf: assumes "\B. B \ A \ B \ R `` B \ B = {}" @@ -180,16 +169,8 @@ by simp qed -lemma wfI_pf: - assumes a: "\A. A \ R `` A \ A = {}" - shows "wf R" -proof (rule wfUNIVI) - fix P :: "'a \ bool" and x - let ?A = "{x. \ P x}" - assume "\x. (\y. (y, x) \ R \ P y) \ P x" - then have "?A \ R `` ?A" by blast - with a show "P x" by blast -qed +lemma wfI_pf: "(\A. A \ R `` A \ A = {}) \ wf R" + using wf_onI_pf[of UNIV, unfolded wf_on_UNIV, simplified] . subsubsection \Minimal-element characterization of well-foundedness\ @@ -244,9 +225,7 @@ qed lemma wf_eq_minimal: "wf r \ (\Q x. x \ Q \ (\z\Q. \y. (y, z) \ r \ y \ Q))" - apply (rule iffI) - apply (blast intro: elim!: wfE_min) - by (rule wfI_min) auto + unfolding wf_iff_ex_minimal by blast lemmas wfP_eq_minimal = wf_eq_minimal [to_pred]