author | paulson |
Wed, 28 Jun 2000 10:37:52 +0200 | |
changeset 9158 | 084abf3d0eff |
parent 7262 | a05dc63ca29b |
permissions | -rw-r--r-- |
3302 | 1 |
(* Title: TFL/rules |
2 |
ID: $Id$ |
|
3 |
Author: Konrad Slind, Cambridge University Computer Laboratory |
|
4 |
Copyright 1997 University of Cambridge |
|
5 |
||
6 |
Emulation of HOL inference rules for TFL |
|
7 |
*) |
|
8 |
||
2112 | 9 |
signature Rules_sig = |
10 |
sig |
|
11 |
(* structure USyntax : USyntax_sig *) |
|
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
12 |
val dest_thm : thm -> term list * term |
2112 | 13 |
|
14 |
(* Inference rules *) |
|
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
15 |
val REFL :cterm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
16 |
val ASSUME :cterm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
17 |
val MP :thm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
18 |
val MATCH_MP :thm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
19 |
val CONJUNCT1 :thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
20 |
val CONJUNCT2 :thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
21 |
val CONJUNCTS :thm -> thm list |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
22 |
val DISCH :cterm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
23 |
val UNDISCH :thm -> thm |
3353
9112a2efb9a3
Removal of module Mask and datatype binding with its constructor |->
paulson
parents:
3302
diff
changeset
|
24 |
val INST_TYPE :(typ*typ)list -> thm -> thm |
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
25 |
val SPEC :cterm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
26 |
val ISPEC :cterm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
27 |
val ISPECL :cterm list -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
28 |
val GEN :cterm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
29 |
val GENL :cterm list -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
30 |
val LIST_CONJ :thm list -> thm |
2112 | 31 |
|
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
32 |
val SYM : thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
33 |
val DISCH_ALL : thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
34 |
val FILTER_DISCH_ALL : (term -> bool) -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
35 |
val SPEC_ALL : thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
36 |
val GEN_ALL : thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
37 |
val IMP_TRANS : thm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
38 |
val PROVE_HYP : thm -> thm -> thm |
2112 | 39 |
|
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
40 |
val CHOOSE : cterm * thm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
41 |
val EXISTS : cterm * cterm -> thm -> thm |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
42 |
val EXISTL : cterm list -> thm -> thm |
3353
9112a2efb9a3
Removal of module Mask and datatype binding with its constructor |->
paulson
parents:
3302
diff
changeset
|
43 |
val IT_EXISTS : (cterm*cterm) list -> thm -> thm |
2112 | 44 |
|
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
45 |
val EVEN_ORS : thm list -> thm list |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
46 |
val DISJ_CASESL : thm -> thm list -> thm |
2112 | 47 |
|
7250
a4bd83b25d23
new version from Konrad with "lazy" (deferred) definitons
paulson
parents:
6498
diff
changeset
|
48 |
val list_beta_conv : cterm -> cterm list -> thm |
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
49 |
val SUBS : thm list -> thm -> thm |
3405 | 50 |
val simpl_conv : simpset -> thm list -> cterm -> thm |
2112 | 51 |
|
7262 | 52 |
val rbeta : thm -> thm |
2112 | 53 |
(* For debugging my isabelle solver in the conditional rewriter *) |
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
54 |
val term_ref : term list ref |
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
55 |
val thm_ref : thm list ref |
2112 | 56 |
val mss_ref : meta_simpset list ref |
6498 | 57 |
val tracing : bool ref |
58 |
val CONTEXT_REWRITE_RULE : term * term list * thm * thm list |
|
3405 | 59 |
-> thm -> thm * term list |
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
60 |
val RIGHT_ASSOC : thm -> thm |
2112 | 61 |
|
3245
241838c01caf
Removal of redundant code (unused or already present in Isabelle.
paulson
parents:
2112
diff
changeset
|
62 |
val prove : cterm * tactic -> thm |
2112 | 63 |
end; |