diff -r 01b8c8d17f13 -r 2a77bc3b4eac src/ZF/ZF_Base.thy --- a/src/ZF/ZF_Base.thy Fri Sep 20 23:36:33 2024 +0200 +++ b/src/ZF/ZF_Base.thy Fri Sep 20 23:37:00 2024 +0200 @@ -36,8 +36,8 @@ where "Bex(A, P) \ \x. x\A \ P(x)" syntax - "_Ball" :: "[pttrn, i, o] \ o" (\(3\_\_./ _)\ 10) - "_Bex" :: "[pttrn, i, o] \ o" (\(3\_\_./ _)\ 10) + "_Ball" :: "[pttrn, i, o] \ o" (\(\indent=3 notation=\binder \\\\\_\_./ _)\ 10) + "_Bex" :: "[pttrn, i, o] \ o" (\(\indent=3 notation=\binder \\\\\_\_./ _)\ 10) syntax_consts "_Ball" \ Ball and "_Bex" \ Bex @@ -55,7 +55,7 @@ where "Replace(A,P) \ PrimReplace(A, \x y. (\!z. P(x,z)) \ P(x,y))" syntax - "_Replace" :: "[pttrn, pttrn, i, o] \ i" (\(1{_ ./ _ \ _, _})\) + "_Replace" :: "[pttrn, pttrn, i, o] \ i" (\(\indent=1 notation=\mixfix Replace\\{_ ./ _ \ _, _})\) syntax_consts "_Replace" \ Replace translations @@ -68,7 +68,7 @@ where "RepFun(A,f) \ {y . x\A, y=f(x)}" syntax - "_RepFun" :: "[i, pttrn, i] \ i" (\(1{_ ./ _ \ _})\ [51,0,51]) + "_RepFun" :: "[i, pttrn, i] \ i" (\(\indent=1 notation=\mixfix RepFun\\{_ ./ _ \ _})\ [51,0,51]) syntax_consts "_RepFun" \ RepFun translations @@ -80,7 +80,7 @@ where "Collect(A,P) \ {y . x\A, x=y \ P(x)}" syntax - "_Collect" :: "[pttrn, i, o] \ i" (\(1{_ \ _ ./ _})\) + "_Collect" :: "[pttrn, i, o] \ i" (\(\indent=1 notation=\mixfix Collect\\{_ \ _ ./ _})\) syntax_consts "_Collect" \ Collect translations @@ -93,8 +93,8 @@ where "\(A) \ { x\\(A) . \y\A. x\y}" syntax - "_UNION" :: "[pttrn, i, i] \ i" (\(3\_\_./ _)\ 10) - "_INTER" :: "[pttrn, i, i] \ i" (\(3\_\_./ _)\ 10) + "_UNION" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\binder \\\\\_\_./ _)\ 10) + "_INTER" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\binder \\\\\_\_./ _)\ 10) syntax_consts "_UNION" == Union and "_INTER" == Inter @@ -169,7 +169,7 @@ definition The :: "(i \ o) \ i" (binder \THE \ 10) where the_def: "The(P) \ \({y . x \ {0}, P(y)})" -definition If :: "[o, i, i] \ i" (\(if (_)/ then (_)/ else (_))\ [10] 10) +definition If :: "[o, i, i] \ i" (\(\notation=\mixfix if then else\\if (_)/ then (_)/ else (_))\ [10] 10) where if_def: "if P then a else b \ THE z. P \ z=a | \P \ z=b" abbreviation (input) @@ -272,9 +272,9 @@ (* binder syntax *) syntax - "_PROD" :: "[pttrn, i, i] \ i" (\(3\_\_./ _)\ 10) - "_SUM" :: "[pttrn, i, i] \ i" (\(3\_\_./ _)\ 10) - "_lam" :: "[pttrn, i, i] \ i" (\(3\_\_./ _)\ 10) + "_PROD" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\mixfix \\\\\_\_./ _)\ 10) + "_SUM" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\mixfix \\\\\_\_./ _)\ 10) + "_lam" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\mixfix \\\\\_\_./ _)\ 10) syntax_consts "_PROD" == Pi and "_SUM" == Sigma and @@ -297,16 +297,16 @@ not_mem (infixl \\:\ 50) syntax (ASCII) - "_Ball" :: "[pttrn, i, o] \ o" (\(3ALL _:_./ _)\ 10) - "_Bex" :: "[pttrn, i, o] \ o" (\(3EX _:_./ _)\ 10) - "_Collect" :: "[pttrn, i, o] \ i" (\(1{_: _ ./ _})\) - "_Replace" :: "[pttrn, pttrn, i, o] \ i" (\(1{_ ./ _: _, _})\) - "_RepFun" :: "[i, pttrn, i] \ i" (\(1{_ ./ _: _})\ [51,0,51]) - "_UNION" :: "[pttrn, i, i] \ i" (\(3UN _:_./ _)\ 10) - "_INTER" :: "[pttrn, i, i] \ i" (\(3INT _:_./ _)\ 10) - "_PROD" :: "[pttrn, i, i] \ i" (\(3PROD _:_./ _)\ 10) - "_SUM" :: "[pttrn, i, i] \ i" (\(3SUM _:_./ _)\ 10) - "_lam" :: "[pttrn, i, i] \ i" (\(3lam _:_./ _)\ 10) + "_Ball" :: "[pttrn, i, o] \ o" (\(\indent=3 notation=\binder ALL:\\ALL _:_./ _)\ 10) + "_Bex" :: "[pttrn, i, o] \ o" (\(\indent=3 notation=\binder EX:\\EX _:_./ _)\ 10) + "_Collect" :: "[pttrn, i, o] \ i" (\(\indent=1 notation=\mixfix Collect\\{_: _ ./ _})\) + "_Replace" :: "[pttrn, pttrn, i, o] \ i" (\(\indent=1 notation=\mixfix Replace\\{_ ./ _: _, _})\) + "_RepFun" :: "[i, pttrn, i] \ i" (\(\indent=1 notation=\mixfix RepFun\\{_ ./ _: _})\ [51,0,51]) + "_UNION" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\binder UN:\\UN _:_./ _)\ 10) + "_INTER" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\binder INT:\\INT _:_./ _)\ 10) + "_PROD" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\binder PROD:\\PROD _:_./ _)\ 10) + "_SUM" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\binder SUM:\\SUM _:_./ _)\ 10) + "_lam" :: "[pttrn, i, i] \ i" (\(\indent=3 notation=\binder lam:\\lam _:_./ _)\ 10) "_Tuple" :: "[i, tuple_args] \ i" (\<(_,/ _)>\) "_pattern" :: "patterns \ pttrn" (\<_>\)