diff options
author | Josh Chen | 2020-06-19 12:41:54 +0200 |
---|---|---|
committer | Josh Chen | 2020-06-19 12:41:54 +0200 |
commit | 4f147cba894baa9e372e2b67211140b1a6f7b16c (patch) | |
tree | 68cf6b9e9e73955b1831f4529834bdaf04ac1ceb /spartan/core/lib/elimination.ML | |
parent | 8885f9c96d950655250292ee03b54aafeb2f727f (diff) |
reorganize
Diffstat (limited to '')
-rw-r--r-- | spartan/core/elimination.ML (renamed from spartan/core/lib/elimination.ML) | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/spartan/core/lib/elimination.ML b/spartan/core/elimination.ML index 617f83e..11b3af9 100644 --- a/spartan/core/lib/elimination.ML +++ b/spartan/core/elimination.ML @@ -6,6 +6,7 @@ Type elimination setup. structure Elim: sig +val Rules: Proof.context -> (thm * indexname list) Termtab.table val rules: Proof.context -> (thm * indexname list) list val lookup_rule: Proof.context -> Termtab.key -> (thm * indexname list) option val register_rule: term list -> thm -> Context.generic -> Context.generic @@ -25,8 +26,9 @@ structure Rules = Generic_Data ( val merge = Termtab.merge (eq_fst Thm.eq_thm_prop) ) -fun rules ctxt = map (op #2) (Termtab.dest (Rules.get (Context.Proof ctxt))) -fun lookup_rule ctxt = Termtab.lookup (Rules.get (Context.Proof ctxt)) +val Rules = Rules.get o Context.Proof +fun rules ctxt = map (op #2) (Termtab.dest (Rules ctxt)) +fun lookup_rule ctxt = Termtab.lookup (Rules ctxt) fun register_rule tms rl = let val hd = Term.head_of (Lib.type_of_typing (Thm.major_prem_of rl)) in Rules.map (Termtab.update (hd, (rl, map (#1 o dest_Var) tms))) end |