]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/tactics/paramodulation/utils.ml
added some code to print the praamodulation proofs with a graph
[helm.git] / helm / software / components / tactics / paramodulation / utils.ml
index 8d0ba901b055d9dba4b20b5b02d8f2b3829f0c69..00d745fd906fb1ec2ac0aa6fa88a11faa17b7515 100644 (file)
@@ -98,6 +98,12 @@ let metas_of_term term =
     | C.Meta _ as t -> TermSet.singleton t
     | C.Appl l ->
         List.fold_left (fun res t -> TermSet.union res (aux t)) TermSet.empty l
+    | C.Lambda(n,s,t) ->
+       TermSet.union (aux s) (aux t)
+    | C.Prod(n,s,t) ->
+       TermSet.union (aux s) (aux t)
+    | C.LetIn(n,s,t) ->
+       TermSet.union (aux s) (aux t)
     | t -> TermSet.empty (* TODO: maybe add other cases? *)
   in
   aux term
@@ -346,7 +352,7 @@ let compute_equality_weight (ty,left,right,o) =
 
 let compute_equality_weight e =
   let w = compute_equality_weight e in
-  let d = distance !goal_symbols (symbols_of_eq e) in
+  let d = 0 in (* distance !goal_symbols (symbols_of_eq e) in *)
 (*
   prerr_endline (Printf.sprintf "dist %s --- %s === %d" 
    (String.concat ", " (List.map (CicPp.ppterm) (TermSet.elements
@@ -356,7 +362,7 @@ let compute_equality_weight e =
    d
   );
 *)
-  w + d
+  w + d 
 ;;
 
 (* old
@@ -754,14 +760,6 @@ let guarded_simpl ?(debug=false) context t =
       end
 ;;
 
-type equality_sign = Negative | Positive;;
-
-let string_of_sign = function
-  | Negative -> "Negative"
-  | Positive -> "Positive"
-;;
-
-
 type pos = Left | Right 
 
 let string_of_pos = function