]> matita.cs.unibo.it Git - fireball-separation.git/blobdiff - ocaml/simple.ml
One garbage pt. 2
[fireball-separation.git] / ocaml / simple.ml
index d600d30f6347a07697628181248d0c13856aff65..b640a0fdb2f2d58e3117a3dd647666854aa586bc 100644 (file)
@@ -363,8 +363,11 @@ let problem_of (label, div, convs, ps, var_names) =
  | `Var(v,_) -> V v\r
  | `N _ | `Match _ -> assert false in\r
  assert (List.length ps = 0);\r
- let convs = List.rev convs in\r
- let conv = if List.length convs = 1 then aux (List.hd convs :> Num.nf) else List.fold_left (fun x y -> mk_app x (aux (y :> Num.nf))) (V (List.length var_names)) convs in\r
+ let convs = (List.rev convs :> Num.nf list) in\r
+ let conv = aux\r
+  (if List.length convs = 1\r
+   then List.hd convs\r
+   else `I((List.length var_names, min_int), Listx.from_list convs)) in\r
  let var_names = "@" :: var_names in\r
  let div = match div with\r
  | Some div -> aux (div :> Num.nf)\r