author | haftmann |
Thu, 19 Jun 2025 17:15:40 +0200 | |
changeset 82734 | 89347c0cc6a3 |
parent 79942 | 7793e3161d2b |
permissions | -rw-r--r-- |
79942
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
1 |
(* Title: HOL/Tools/Mirabelle/mirabelle_order.ML |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
2 |
Author: Martin Desharnais, MPI-INF Saarbrücken |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
3 |
|
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
4 |
Mirabelle action: "order". |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
5 |
*) |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
6 |
|
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
7 |
structure Mirabelle_Order: MIRABELLE_ACTION = |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
8 |
struct |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
9 |
|
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
10 |
fun make_action ({timeout, ...} : Mirabelle.action_context) = |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
11 |
let |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
12 |
val _ = HOL_Order_Tac.tac [] |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
13 |
fun run ({pre, ...} : Mirabelle.command) = |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
14 |
(case Timing.timing (Mirabelle.can_apply timeout (HOL_Order_Tac.tac [])) pre of |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
15 |
({cpu, ...}, true) => "succeeded (" ^ Time.toString cpu ^ " s)" |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
16 |
| (_, false) => "failed") |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
17 |
in ("", {run = run, finalize = K ""}) end |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
18 |
|
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
19 |
val () = Mirabelle.register_action "order" make_action |
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
20 |
|
7793e3161d2b
try proof method "order" in Sledgehammer's proof reconstruction
desharna
parents:
diff
changeset
|
21 |
end |