doc-src/IsarAdvanced/Codegen/Thy/Program.thy
author haftmann
Thu, 25 Sep 2008 09:28:08 +0200
changeset 28350 715163ec93c0
parent 28213 b52f9205a02d
child 28419 f65e8b318581
permissions -rw-r--r--
non left-linear equations for nbe
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
28213
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     1
theory Program
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     2
imports Setup
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     3
begin
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     4
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     5
section {* Turning Theories into Programs *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     6
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     7
subsection {* The @{text "Isabelle/HOL"} default setup *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     8
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
     9
text {* Invoking the code generator *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    10
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    11
subsection {* Selecting code equations *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    12
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    13
text {* inspection by @{text "code_thms"} *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    14
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    15
subsection {* The preprocessor *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    16
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    17
subsection {* Datatypes *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    18
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    19
text {* example: @{text "rat"}, cases *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    20
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    21
subsection {* Equality and wellsortedness *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    22
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    23
subsection {* Partiality *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    24
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    25
text {* @{text "code_abort"}, examples: maps *}
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    26
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents:
diff changeset
    27
end