- let module B : Terms.Blob with type t = Ast.term = struct
- type t = Ast.term
- let eq a b = a = b
- let compare = Pervasives.compare
- let eqP = Ast.Constant "=="
- let pp = function
- | Ast.Constant x -> x
- | Ast.Variable _ -> assert false
- | Ast.Function _ -> assert false
- ;;
- let embed x =
- let rec aux m = function
+ let module B : Terms.Blob with type t = leaf and type input = Ast.term = struct
+ type t = leaf
+ let eq a b = a == b
+ let compare (a,_) (b,_) = Pervasives.compare a b
+ let eqP = hash "=="
+ let pp (_,a) = a
+ type input = Ast.term
+ let rec embed m = function