]> matita.cs.unibo.it Git - helm.git/blob - helm/software/components/ng_paramodulation/cicBlob.ml
7169601420f19f236991e2fa33a9c63249495fb2
[helm.git] / helm / software / components / ng_paramodulation / cicBlob.ml
1 (*
2     ||M||  This file is part of HELM, an Hypertextual, Electronic        
3     ||A||  Library of Mathematics, developed at the Computer Science     
4     ||T||  Department, University of Bologna, Italy.                     
5     ||I||                                                                
6     ||T||  HELM is free software; you can redistribute it and/or         
7     ||A||  modify it under the terms of the GNU General Public License   
8     \   /  version 2 or (at your option) any later version.      
9      \ /   This software is distributed as is, NO WARRANTY.     
10       V_______________________________________________________________ *)
11
12 (* $Id: terms.mli 9822 2009-06-03 15:37:06Z tassi $ *)
13
14 module type CicContext = 
15   sig
16     val metasenv : Cic.metasenv
17     val subst : Cic.substitution
18     val context : Cic.context
19   end
20
21 module CicBlob(C : CicContext) : Terms.Blob with type t = Cic.term = struct
22
23   type t = Cic.term
24
25   (* XXX this alpha-eq is a bit strange, since it does not take a 
26    *     context nor a subst ... *)
27   let eq x y = CicUtil.alpha_equivalence x y;;
28
29   (* TODO: take this from tactics/paramodulation/utils.ml *)
30   let compare x y = assert false;;
31
32   let names = List.map (function Some (x,_) -> Some x | _ -> None) C.context;;
33   let pp t = CicPp.pp t names;;
34
35   type input = t
36
37   let embed t = assert false;;
38
39   let eqP = assert false;;
40
41   let is_eq = assert false;;
42
43   let saturate = assert false;;
44
45 end
46