head_beta_reduce he'''
| Cic.Cast (te,_) -> head_beta_reduce te
| t -> t
+
+(*Debugging code
+let are_convertible ?subst ?metasenv context t1 t2 ugraph =
+ let before = Unix.gettimeofday () in
+ let res = are_convertible ?subst ?metasenv context t1 t2 ugraph in
+ let after = Unix.gettimeofday () in
+ let diff = after -. before in
+ if diff > 0.1 then
+ begin
+ let nc = List.map (function None -> None | Some (n,_) -> Some n) context in
+ prerr_endline
+ ("\n#(" ^ string_of_float diff ^ "):\n" ^ CicPp.pp t1 nc ^ "\n<=>\n" ^ CicPp.pp t2 nc);
+ end;
+ res
+*)