src/HOL/Main.thy
author blanchet
Mon Jan 20 18:24:56 2014 +0100 (2014-01-20)
changeset 55069 b3e44be90122
parent 55067 a452de24a877
child 55078 558c9ceabaa1
permissions -rw-r--r--
moved hide_const from BNF to Main
wenzelm@12024
     1
header {* Main HOL *}
wenzelm@12024
     2
nipkow@15131
     3
theory Main
blanchet@55062
     4
imports Predicate_Compile Extraction Lifting_Sum List_Prefix Coinduction BNF_LFP BNF_GFP
nipkow@15131
     5
begin
wenzelm@9650
     6
wenzelm@29304
     7
text {*
wenzelm@29304
     8
  Classical Higher-order Logic -- only ``Main'', excluding real and
wenzelm@29304
     9
  complex numbers etc.
wenzelm@29304
    10
*}
wenzelm@29304
    11
haftmann@27367
    12
text {* See further \cite{Nipkow-et-al:2002:tutorial} *}
haftmann@25964
    13
blanchet@55069
    14
hide_const (open)
blanchet@55069
    15
  image2 image2p vimage2p Gr Grp collect fsts snds setl setr
blanchet@55069
    16
  convol pick_middlep fstOp sndOp csquare inver relImage relInvImage
blanchet@55069
    17
  prefCl PrefCl Succ Shift shift proj
blanchet@55069
    18
haftmann@51112
    19
no_notation
haftmann@51112
    20
  bot ("\<bottom>") and
haftmann@51112
    21
  top ("\<top>") and
haftmann@51112
    22
  inf (infixl "\<sqinter>" 70) and
haftmann@51112
    23
  sup (infixl "\<squnion>" 65) and
haftmann@51112
    24
  Inf ("\<Sqinter>_" [900] 900) and
blanchet@55057
    25
  Sup ("\<Squnion>_" [900] 900) and
blanchet@55065
    26
  ordLeq2 (infix "<=o" 50) and
blanchet@55065
    27
  ordLeq3 (infix "\<le>o" 50) and
blanchet@55065
    28
  ordLess2 (infix "<o" 50) and
blanchet@55065
    29
  ordIso2 (infix "=o" 50) and
blanchet@55057
    30
  csum (infixr "+c" 65) and
blanchet@55057
    31
  cprod (infixr "*c" 80) and
blanchet@55067
    32
  cexp (infixr "^c" 90)
haftmann@51112
    33
haftmann@51112
    34
no_syntax (xsymbols)
haftmann@51112
    35
  "_INF1"     :: "pttrns \<Rightarrow> 'b \<Rightarrow> 'b"           ("(3\<Sqinter>_./ _)" [0, 10] 10)
haftmann@51112
    36
  "_INF"      :: "pttrn \<Rightarrow> 'a set \<Rightarrow> 'b \<Rightarrow> 'b"  ("(3\<Sqinter>_\<in>_./ _)" [0, 0, 10] 10)
haftmann@51112
    37
  "_SUP1"     :: "pttrns \<Rightarrow> 'b \<Rightarrow> 'b"           ("(3\<Squnion>_./ _)" [0, 10] 10)
haftmann@51112
    38
  "_SUP"      :: "pttrn \<Rightarrow> 'a set \<Rightarrow> 'b \<Rightarrow> 'b"  ("(3\<Squnion>_\<in>_./ _)" [0, 0, 10] 10)
haftmann@51112
    39
wenzelm@9650
    40
end