diff -r 6c9453ec2191 -r 74f1b0f10b2b src/HOL/Set.thy --- a/src/HOL/Set.thy Sun Oct 21 08:19:06 2018 +0200 +++ b/src/HOL/Set.thy Sun Oct 21 09:39:09 2018 +0200 @@ -422,24 +422,24 @@ text \Congruence rules\ lemma ball_cong: - "A = B \ (\x. x \ B \ P x \ Q x) \ + "\ A = B; \x. x \ B \ P x \ Q x \ \ (\x\A. P x) \ (\x\B. Q x)" - by (simp add: Ball_def) - -lemma strong_ball_cong [cong]: - "A = B \ (\x. x \ B =simp=> P x \ Q x) \ +by (simp add: Ball_def) + +lemma ball_cong_strong [cong]: + "\ A = B; \x. x \ B =simp=> P x \ Q x \ \ (\x\A. P x) \ (\x\B. Q x)" - by (simp add: simp_implies_def Ball_def) +by (simp add: simp_implies_def Ball_def) lemma bex_cong: - "A = B \ (\x. x \ B \ P x \ Q x) \ + "\ A = B; \x. x \ B \ P x \ Q x \ \ (\x\A. P x) \ (\x\B. Q x)" - by (simp add: Bex_def cong: conj_cong) - -lemma strong_bex_cong [cong]: - "A = B \ (\x. x \ B =simp=> P x \ Q x) \ +by (simp add: Bex_def cong: conj_cong) + +lemma bex_cong_strong [cong]: + "\ A = B; \x. x \ B =simp=> P x \ Q x \ \ (\x\A. P x) \ (\x\B. Q x)" - by (simp add: simp_implies_def Bex_def cong: conj_cong) +by (simp add: simp_implies_def Bex_def cong: conj_cong) lemma bex1_def: "(\!x\X. P x) \ (\x\X. P x) \ (\x\X. \y\X. P x \ P y \ x = y)" by auto