section ‹Main HOL› text ‹ Classical Higher-order Logic -- only ``Main'', excluding real and complex numbers etc. › theory Main imports Predicate_Compile Quickcheck_Narrowing Extraction Nunchaku BNF_Greatest_Fixpoint Filter Conditionally_Complete_Lattices Binomial GCD begin text ‹Namespace cleanup› hide_const (open) czero cinfinite cfinite csum cone ctwo Csum cprod cexp image2 image2p vimage2p Gr Grp collect fsts snds setl setr convol pick_middlep fstOp sndOp csquare relImage relInvImage Succ Shift shift proj id_bnf hide_fact (open) id_bnf_def type_definition_id_bnf_UNIV text ‹Syntax cleanup› no_notation bot ("⊥") and top ("⊤") and inf (infixl "⊓" 70) and sup (infixl "⊔" 65) and Inf ("⨅") and Sup ("⨆") and ordLeq2 (infix "<=o" 50) and ordLeq3 (infix "≤o" 50) and ordLess2 (infix "<o" 50) and ordIso2 (infix "=o" 50) and card_of ("|_|") and BNF_Cardinal_Arithmetic.csum (infixr "+c" 65) and BNF_Cardinal_Arithmetic.cprod (infixr "*c" 80) and BNF_Cardinal_Arithmetic.cexp (infixr "^c" 90) and BNF_Def.convol ("⟨(_,/ _)⟩") bundle cardinal_syntax begin notation ordLeq2 (infix "<=o" 50) and ordLeq3 (infix "≤o" 50) and ordLess2 (infix "<o" 50) and ordIso2 (infix "=o" 50) and card_of ("|_|") and BNF_Cardinal_Arithmetic.csum (infixr "+c" 65) and BNF_Cardinal_Arithmetic.cprod (infixr "*c" 80) and BNF_Cardinal_Arithmetic.cexp (infixr "^c" 90) alias cinfinite = BNF_Cardinal_Arithmetic.cinfinite alias czero = BNF_Cardinal_Arithmetic.czero alias cone = BNF_Cardinal_Arithmetic.cone alias ctwo = BNF_Cardinal_Arithmetic.ctwo end no_syntax "_INF1" :: "pttrns ⇒ 'b ⇒ 'b" ("(3⨅_./ _)" [0, 10] 10) "_INF" :: "pttrn ⇒ 'a set ⇒ 'b ⇒ 'b" ("(3⨅_∈_./ _)" [0, 0, 10] 10) "_SUP1" :: "pttrns ⇒ 'b ⇒ 'b" ("(3⨆_./ _)" [0, 10] 10) "_SUP" :: "pttrn ⇒ 'a set ⇒ 'b ⇒ 'b" ("(3⨆_∈_./ _)" [0, 0, 10] 10) end