| 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
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
d
);
*)
- w + d
+ w + d
;;
(* old