From 0e005c102417c907b7dd0ec48a45739fafe54f59 Mon Sep 17 00:00:00 2001 From: acondolu Date: Mon, 10 Jul 2017 14:13:36 +0200 Subject: [PATCH] Arity inherited only in the case (true, min_int) Problem 25 fails because a fake variable becomes critical step. --- ocaml/num.ml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ocaml/num.ml b/ocaml/num.ml index d59d07f..2cb9b73 100644 --- a/ocaml/num.ml +++ b/ocaml/num.ml @@ -200,7 +200,7 @@ and subst truelam delift_by_one what (with_what : nf) (where : nf) = let aux_propagate_arity ar = function | `Lam(false,`Match(`I(v,args),(x,_),liftno,bs,args')) when not delift_by_one -> `Lam(false,`Match(`I(v,args),(x,ar),liftno,bs,args')) - | `Var(i,_) -> `Var(i,ar) + | `Var(i,oldar) -> `Var(i, if truelam && oldar = min_int then ar else oldar) | _ as t -> t in let rec aux_i_num_var l = function -- 2.39.2