# HG changeset patch # User desharna # Date 1671182917 -3600 # Node ID 3042416b2e657bda86a2c0986093707a1d7c2f27 # Parent 9bbc085fce861123be4f1347afd1f68defd21a5c added lemmas sym_onD and symp_onD diff -r 9bbc085fce86 -r 3042416b2e65 NEWS --- a/NEWS Fri Dec 16 10:23:51 2022 +0100 +++ b/NEWS Fri Dec 16 10:28:37 2022 +0100 @@ -79,7 +79,9 @@ preorder.reflp_on_ge[simp] preorder.reflp_on_le[simp] reflp_on_conversp[simp] + sym_onD sym_onI + symp_onD symp_onI symp_on_sym_on_eq[pred_set_conv] totalI diff -r 9bbc085fce86 -r 3042416b2e65 src/HOL/Relation.thy --- a/src/HOL/Relation.thy Fri Dec 16 10:23:51 2022 +0100 +++ b/src/HOL/Relation.thy Fri Dec 16 10:28:37 2022 +0100 @@ -408,15 +408,17 @@ obtains "r a b" using assms by (rule symE [to_pred]) -lemma symD [dest?]: - assumes "sym r" and "(b, a) \ r" - shows "(a, b) \ r" - using assms by (rule symE) +lemma sym_onD: "sym_on A r \ x \ A \ y \ A \ (x, y) \ r \ (y, x) \ r" + by (simp add: sym_on_def) + +lemma symD [dest?]: "sym r \ (x, y) \ r \ (y, x) \ r" + by (simp add: sym_onD) -lemma sympD [dest?]: - assumes "symp r" and "r b a" - shows "r a b" - using assms by (rule symD [to_pred]) +lemma symp_onD: "symp_on A R \ x \ A \ y \ A \ R x y \ R y x" + by (rule sym_onD[to_pred]) + +lemma sympD [dest?]: "symp R \ R x y \ R y x" + by (rule symD[to_pred]) lemma sym_Int: "sym r \ sym s \ sym (r \ s)" by (fast intro: symI elim: symE)