equal
deleted
inserted
replaced
9 *) |
9 *) |
10 |
10 |
11 signature OBJECT_LOGIC = |
11 signature OBJECT_LOGIC = |
12 sig |
12 sig |
13 val dest_statement: string * term -> (string * term) list |
13 val dest_statement: string * term -> (string * term) list |
|
14 val dest_main_statement: term -> term |
14 val setup: (theory -> theory) list |
15 val setup: (theory -> theory) list |
15 end; |
16 end; |
16 |
17 |
17 structure ObjectLogic: OBJECT_LOGIC = |
18 structure ObjectLogic: OBJECT_LOGIC = |
18 struct |
19 struct |
22 let val concl = Logic.strip_imp_concl prop in |
23 let val concl = Logic.strip_imp_concl prop in |
23 [(name ^ "_prop", prop), (name ^ "_concl", concl)] @ |
24 [(name ^ "_prop", prop), (name ^ "_concl", concl)] @ |
24 (case concl of Const ("Trueprop", _) $ t => [(name, t)] | _ => []) |
25 (case concl of Const ("Trueprop", _) $ t => [(name, t)] | _ => []) |
25 end; |
26 end; |
26 |
27 |
|
28 fun dest_main_statement t = |
|
29 (case Logic.strip_imp_concl t of |
|
30 _ $ t => t |
|
31 | _ => raise TERM ("dest_main", [t])); |
|
32 |
27 |
33 |
28 (* FIXME *) |
34 (* FIXME *) |
29 val setup = []; |
35 val setup = []; |
30 |
36 |
31 end; |
37 end; |