src/HOL/Imperative_HOL/Imperative_HOL_ex.thy
author haftmann
Fri, 16 Jul 2010 15:28:22 +0200
changeset 37845 b70d7a347964
parent 37831 fa3a2e35c4f1
child 37959 6fe5fa827f18
permissions -rw-r--r--
first roughly working version of Imperative HOL for Scala
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
30694
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
     1
(*  Title:      HOL/Imperative_HOL/Imperative_HOL_ex.thy
31872
haftmann
parents: 30694
diff changeset
     2
    Author:     John Matthews, Galois Connections;
haftmann
parents: 30694
diff changeset
     3
                Alexander Krauss, Lukas Bulwahn & Florian Haftmann, TU Muenchen
30694
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
     4
*)
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
     5
31872
haftmann
parents: 30694
diff changeset
     6
header {* Monadic imperative HOL with examples *}
30694
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
     7
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
     8
theory Imperative_HOL_ex
37771
1bec64044b5e spelt out relational framework in a consistent way
haftmann
parents: 36098
diff changeset
     9
imports Imperative_HOL
1bec64044b5e spelt out relational framework in a consistent way
haftmann
parents: 36098
diff changeset
    10
  "ex/Imperative_Quicksort" "ex/Imperative_Reverse" "ex/Linked_Lists" "ex/SatChecker"
30694
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
    11
begin
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
    12
37831
fa3a2e35c4f1 repaired some implementations of imperative operations
haftmann
parents: 37829
diff changeset
    13
definition "everything = (Array.new, Array.of_list, Array.make, Array.len, Array.nth,
37829
11f813e86305 part of pervasive test
haftmann
parents: 37826
diff changeset
    14
  Array.upd, Array.map_entry, Array.swap, Array.freeze,
37831
fa3a2e35c4f1 repaired some implementations of imperative operations
haftmann
parents: 37829
diff changeset
    15
  ref, Ref.lookup, Ref.update, Ref.change)"
37829
11f813e86305 part of pervasive test
haftmann
parents: 37826
diff changeset
    16
37845
b70d7a347964 first roughly working version of Imperative HOL for Scala
haftmann
parents: 37831
diff changeset
    17
export_code everything checking SML SML_imp OCaml? OCaml_imp? Haskell? Scala?
37826
4c0a5e35931a avoid export_code ... file -
haftmann
parents: 37771
diff changeset
    18
30694
4b182a031731 added Imperative_HOL_ex
haftmann
parents:
diff changeset
    19
end