src/HOL/ex/ROOT.ML
author haftmann
Wed, 17 Feb 2010 09:48:53 +0100
changeset 35160 6eb2b6c1d2d5
parent 33651 e4aad90618ad
child 35163 2e0966d6f951
permissions -rw-r--r--
a draft for an example how to turn specifications involving choice executable
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12115
d0d41884f787 back to normal;
wenzelm
parents: 12105
diff changeset
     1
(*  Title:      HOL/ex/ROOT.ML
11586
wenzelm
parents: 11445
diff changeset
     2
12115
d0d41884f787 back to normal;
wenzelm
parents: 12105
diff changeset
     3
Miscellaneous examples for Higher-Order Logic.
d0d41884f787 back to normal;
wenzelm
parents: 12105
diff changeset
     4
*)
d0d41884f787 back to normal;
wenzelm
parents: 12105
diff changeset
     5
24528
wenzelm
parents: 24478
diff changeset
     6
no_document use_thys [
24740
36750aca7a77 some more simultaneous use_thys;
wenzelm
parents: 24615
diff changeset
     7
  "State_Monad",
25963
07e08dad8a77 distinguished examples for Efficient_Nat.thy
haftmann
parents: 25738
diff changeset
     8
  "Efficient_Nat_examples",
07e08dad8a77 distinguished examples for Efficient_Nat.thy
haftmann
parents: 25738
diff changeset
     9
  "FuncSet",
07e08dad8a77 distinguished examples for Efficient_Nat.thy
haftmann
parents: 25738
diff changeset
    10
  "Word",
07e08dad8a77 distinguished examples for Efficient_Nat.thy
haftmann
parents: 25738
diff changeset
    11
  "Eval_Examples",
31378
d1cbf6393964 tuned code generator test theories
haftmann
parents: 31181
diff changeset
    12
  "Codegenerator_Test",
d1cbf6393964 tuned code generator test theories
haftmann
parents: 31181
diff changeset
    13
  "Codegenerator_Pretty_Test",
29377
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    14
  "NormalForm",
31129
d2cead76fca2 split Predicate_Compile examples into separate theory
haftmann
parents: 30740
diff changeset
    15
  "Predicate_Compile",
33651
e4aad90618ad adding the predicate compiler quickcheck to the ex/ROOT.ML; adopting this quickcheck to the latest changes
bulwahn
parents: 33546
diff changeset
    16
  "Predicate_Compile_ex",
e4aad90618ad adding the predicate compiler quickcheck to the ex/ROOT.ML; adopting this quickcheck to the latest changes
bulwahn
parents: 33546
diff changeset
    17
  "Predicate_Compile_Quickcheck"
25963
07e08dad8a77 distinguished examples for Efficient_Nat.thy
haftmann
parents: 25738
diff changeset
    18
];
07e08dad8a77 distinguished examples for Efficient_Nat.thy
haftmann
parents: 25738
diff changeset
    19
24478
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    20
use_thys [
28021
32acf3c6cd12 added HOL/ex/Numeral.thy
haftmann
parents: 27742
diff changeset
    21
  "Numeral",
24478
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    22
  "Higher_Order_Logic",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    23
  "Abstract_NAT",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    24
  "Guess",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    25
  "Binary",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    26
  "Recdefs",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    27
  "Fundefs",
33471
5aef13872723 renamed method induct_scheme to induction_schema
krauss
parents: 33436
diff changeset
    28
  "Induction_Schema",
24478
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    29
  "InductiveInvariant_examples",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    30
  "LocaleTest2",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    31
  "Records",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    32
  "MonoidGroup",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    33
  "BinEx",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    34
  "Hex_Bin_Examples",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    35
  "Antiquote",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    36
  "Multiquote",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    37
  "PER",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    38
  "NatSum",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    39
  "ThreeDivides",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    40
  "Intuitionistic",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    41
  "CTL",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    42
  "Arith_Examples",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    43
  "BT",
33436
nipkow
parents: 33356
diff changeset
    44
  "Tree23",
24478
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    45
  "MergeSort",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    46
  "Lagrange",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    47
  "Groebner_Examples",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    48
  "MT",
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    49
  "Unification",
24740
36750aca7a77 some more simultaneous use_thys;
wenzelm
parents: 24615
diff changeset
    50
  "Primrec",
36750aca7a77 some more simultaneous use_thys;
wenzelm
parents: 24615
diff changeset
    51
  "Tarski",
25738
b091cbae3e2a included meson/metis tests in simultaneous use_thys;
wenzelm
parents: 25568
diff changeset
    52
  "Adder",
b091cbae3e2a included meson/metis tests in simultaneous use_thys;
wenzelm
parents: 25568
diff changeset
    53
  "Classical",
b091cbae3e2a included meson/metis tests in simultaneous use_thys;
wenzelm
parents: 25568
diff changeset
    54
  "set",
27436
9581777503e9 code antiquotation roaring ahead
haftmann
parents: 27421
diff changeset
    55
  "Meson_Test",
29181
cc177742e607 renamed LexOrds.thy to Termination.thy; examples for sizechange method
krauss
parents: 28952
diff changeset
    56
  "Termination",
29376
2071939cf0fc more parallel loading;
wenzelm
parents: 29181
diff changeset
    57
  "Coherent",
2071939cf0fc more parallel loading;
wenzelm
parents: 29181
diff changeset
    58
  "PresburgerEx",
29377
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    59
  "ReflectionEx",
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    60
  "BinEx",
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    61
  "Sqrt",
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    62
  "Sqrt_Script",
32560
c83dab2c5988 corrected upper/lowercase
haftmann
parents: 32556
diff changeset
    63
  "Transfer_Ex",
29377
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    64
  "Arithmetic_Series_Complex",
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    65
  "HarmonicSeries",
e6439dbfeee1 more parallel loading;
wenzelm
parents: 29376
diff changeset
    66
  "Refute_Examples",
29697
e8785144719d Added Formal_Power_Series_Examples to HOL-ex image
chaieb
parents: 29650
diff changeset
    67
  "Quickcheck_Examples",
35160
6eb2b6c1d2d5 a draft for an example how to turn specifications involving choice executable
haftmann
parents: 33651
diff changeset
    68
  "Landau",
6eb2b6c1d2d5 a draft for an example how to turn specifications involving choice executable
haftmann
parents: 33651
diff changeset
    69
  "Execute_Choice"
24478
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    70
];
21256
47195501ecf7 moved theories Parity, GCD, Binomial to Library;
wenzelm
parents: 20866
diff changeset
    71
33546
5e2d381b0695 try SAT_Examples last, to minimize impact of global side-effects;
wenzelm
parents: 33471
diff changeset
    72
HTML.with_charset "utf-8" (no_document use_thys)
5e2d381b0695 try SAT_Examples last, to minimize impact of global side-effects;
wenzelm
parents: 33471
diff changeset
    73
  ["Hebrew", "Chinese", "Serbian"];
5e2d381b0695 try SAT_Examples last, to minimize impact of global side-effects;
wenzelm
parents: 33471
diff changeset
    74
32615
20f1edc87b7d Hilbert_Classical: more precise control of parallel_proofs;
wenzelm
parents: 32560
diff changeset
    75
(setmp_noncritical proofs 2 (setmp_noncritical Goal.parallel_proofs 0 use_thy))
32256
8721c74c5382 Hilbert_Classical: sequential loading due to @{prf}, which joins within a critical section (via options);
wenzelm
parents: 32254
diff changeset
    76
  "Hilbert_Classical";
24478
fb5e3fcfc10c some simultaneous use_thys;
wenzelm
parents: 24195
diff changeset
    77
29376
2071939cf0fc more parallel loading;
wenzelm
parents: 29181
diff changeset
    78
use_thy "SVC_Oracle";
32428
700ed1f4c576 SAT_Examples: removed obsolete Future.shutdown() workaround -- internal exception propagation should now work reliably;
wenzelm
parents: 32259
diff changeset
    79
if getenv "SVC_HOME" = "" then ()
700ed1f4c576 SAT_Examples: removed obsolete Future.shutdown() workaround -- internal exception propagation should now work reliably;
wenzelm
parents: 32259
diff changeset
    80
else use_thy "svc_test";
29376
2071939cf0fc more parallel loading;
wenzelm
parents: 29181
diff changeset
    81
32428
700ed1f4c576 SAT_Examples: removed obsolete Future.shutdown() workaround -- internal exception propagation should now work reliably;
wenzelm
parents: 32259
diff changeset
    82
(*requires zChaff (or some other reasonably fast SAT solver)*)
700ed1f4c576 SAT_Examples: removed obsolete Future.shutdown() workaround -- internal exception propagation should now work reliably;
wenzelm
parents: 32259
diff changeset
    83
if getenv "ZCHAFF_HOME" = "" then ()
700ed1f4c576 SAT_Examples: removed obsolete Future.shutdown() workaround -- internal exception propagation should now work reliably;
wenzelm
parents: 32259
diff changeset
    84
else use_thy "Sudoku";
18408
07da804d1119 ex/Sudoku.thy
webertj
parents: 17783
diff changeset
    85
33546
5e2d381b0695 try SAT_Examples last, to minimize impact of global side-effects;
wenzelm
parents: 33471
diff changeset
    86
(*requires a proof-generating SAT solver (zChaff or MiniSAT)*)
5e2d381b0695 try SAT_Examples last, to minimize impact of global side-effects;
wenzelm
parents: 33471
diff changeset
    87
(*global side-effects ahead!*)
5e2d381b0695 try SAT_Examples last, to minimize impact of global side-effects;
wenzelm
parents: 33471
diff changeset
    88
try use_thy "SAT_Examples";   (* FIXME try!? (not really a proper test) *)