diff -r 46f59511b7bb -r d97fdabd9e2b src/HOL/Algebra/Congruence.thy --- a/src/HOL/Algebra/Congruence.thy Fri Sep 20 19:07:10 2024 +0200 +++ b/src/HOL/Algebra/Congruence.thy Fri Sep 20 19:51:08 2024 +0200 @@ -28,42 +28,42 @@ subsection \Structure with Carrier and Equivalence Relation \eq\\ record 'a eq_object = "'a partial_object" + - eq :: "'a \ 'a \ bool" (infixl ".=\" 50) + eq :: "'a \ 'a \ bool" (infixl \.=\\ 50) definition - elem :: "_ \ 'a \ 'a set \ bool" (infixl ".\\" 50) + elem :: "_ \ 'a \ 'a set \ bool" (infixl \.\\\ 50) where "x .\\<^bsub>S\<^esub> A \ (\y \ A. x .=\<^bsub>S\<^esub> y)" definition - set_eq :: "_ \ 'a set \ 'a set \ bool" (infixl "{.=}\" 50) + set_eq :: "_ \ 'a set \ 'a set \ bool" (infixl \{.=}\\ 50) where "A {.=}\<^bsub>S\<^esub> B \ ((\x \ A. x .\\<^bsub>S\<^esub> B) \ (\x \ B. x .\\<^bsub>S\<^esub> A))" definition - eq_class_of :: "_ \ 'a \ 'a set" ("class'_of\") + eq_class_of :: "_ \ 'a \ 'a set" (\class'_of\\) where "class_of\<^bsub>S\<^esub> x = {y \ carrier S. x .=\<^bsub>S\<^esub> y}" definition - eq_classes :: "_ \ ('a set) set" ("classes\") + eq_classes :: "_ \ ('a set) set" (\classes\\) where "classes\<^bsub>S\<^esub> = {class_of\<^bsub>S\<^esub> x | x. x \ carrier S}" definition - eq_closure_of :: "_ \ 'a set \ 'a set" ("closure'_of\") + eq_closure_of :: "_ \ 'a set \ 'a set" (\closure'_of\\) where "closure_of\<^bsub>S\<^esub> A = {y \ carrier S. y .\\<^bsub>S\<^esub> A}" definition - eq_is_closed :: "_ \ 'a set \ bool" ("is'_closed\") + eq_is_closed :: "_ \ 'a set \ bool" (\is'_closed\\) where "is_closed\<^bsub>S\<^esub> A \ A \ carrier S \ closure_of\<^bsub>S\<^esub> A = A" abbreviation - not_eq :: "_ \ 'a \ 'a \ bool" (infixl ".\\" 50) + not_eq :: "_ \ 'a \ 'a \ bool" (infixl \.\\\ 50) where "x .\\<^bsub>S\<^esub> y \ \(x .=\<^bsub>S\<^esub> y)" abbreviation - not_elem :: "_ \ 'a \ 'a set \ bool" (infixl ".\\" 50) + not_elem :: "_ \ 'a \ 'a set \ bool" (infixl \.\\\ 50) where "x .\\<^bsub>S\<^esub> A \ \(x .\\<^bsub>S\<^esub> A)" abbreviation - set_not_eq :: "_ \ 'a set \ 'a set \ bool" (infixl "{.\}\" 50) + set_not_eq :: "_ \ 'a set \ 'a set \ bool" (infixl \{.\}\\ 50) where "A {.\}\<^bsub>S\<^esub> B \ \(A {.=}\<^bsub>S\<^esub> B)" locale equivalence =