Skip to content

Commit 8fa2f94

Browse files
committed
op: fix creation of refined operators
Do the operator substitution and then close the formula.
1 parent 50bcef7 commit 8fa2f94

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

src/ecScope.ml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1253,18 +1253,18 @@ module Op = struct
12531253

12541254
let scope =
12551255
List.fold_left (fun scope (rname, xs, ax, codom) ->
1256-
let ax = f_forall (List.map (snd_map gtty) xs) ax in
12571256
let ax =
12581257
let opargs = List.map (fun (x, xty) -> e_local x xty) xs in
12591258
let opapp = List.map (tvar |- fst) tparams in
12601259
let opapp = e_app (e_op opname opapp ty) opargs codom in
12611260

12621261
let subst = EcSubst.add_opdef EcSubst.empty opname ([], opapp) in
1263-
let ax = EcSubst.subst_form subst ax in
1262+
let ax = EcSubst.subst_form subst ax in
1263+
let ax = f_forall (List.map (snd_map gtty) xs) ax in
12641264

12651265
let uidmap = EcUnify.UniEnv.close ue in
12661266
let subst = Fsubst.f_subst_init ~sty:(Tuni.subst uidmap) () in
1267-
let ax = Fsubst.f_subst subst ax in
1267+
let ax = Fsubst.f_subst subst ax in
12681268

12691269
ax
12701270
in

0 commit comments

Comments
 (0)