doc-src/IsarAdvanced/Codegen/Thy/examples/arbitrary.ML
author urbanc
Fri, 17 Nov 2006 17:32:30 +0100
changeset 21405 26b51f724fe6
parent 21190 08ec81dfc7fb
child 21993 4b802a9e0738
permissions -rw-r--r--
added an intro lemma for freshness of products; set up the simplifier so that it can deal with the compact and long notation for freshness constraints (FIXME: it should also be able to deal with the special case of freshness of atoms)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
21190
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     1
structure ROOT = 
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     2
struct
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     3
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     4
structure Codegen = 
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     5
struct
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     6
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     7
val arbitrary_option : 'a option = NONE;
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     8
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
     9
fun dummy_option [] = arbitrary_option
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
    10
  | dummy_option (x :: xs) = SOME x;
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
    11
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
    12
end; (*struct Codegen*)
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
    13
08ec81dfc7fb (continued)
haftmann
parents:
diff changeset
    14
end; (*struct ROOT*)