Skip to content

Commit 4275551

Browse files
committed
do_optimize only performs side effects
1 parent a16677e commit 4275551

File tree

3 files changed

+6
-7
lines changed

3 files changed

+6
-7
lines changed

src/lib/reasoners/satml.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1949,7 +1949,7 @@ module Make (Th : Theory.S) : SAT_ML with type th = Th.t = struct
19491949
about these at the SAT level. *)
19501950
let rec loop env =
19511951
let acts = theory_slice env in
1952-
env.tenv <- Th.do_optimize ~acts env.tenv;
1952+
Th.do_optimize ~acts env.tenv;
19531953
if not (is_sat env) then
19541954
try solve env; assert false
19551955
with Sat -> loop env

src/lib/reasoners/theory.ml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ module type S = sig
5858
val get_real_env : t -> Ccx.Main.t
5959
val get_case_split_env : t -> Ccx.Main.t
6060
val do_optimize :
61-
acts:Shostak.Literal.t Th_util.acts -> t -> t
61+
acts:Shostak.Literal.t Th_util.acts -> t -> unit
6262
val do_case_split :
6363
?acts:Shostak.Literal.t Th_util.acts ->
6464
t -> Util.case_split_policy -> t * Expr.Set.t
@@ -677,9 +677,8 @@ module Main_Default : S = struct
677677
match Objective.Model.next_unknown objectives with
678678
| Some obj ->
679679
let add_objective = acts.Th_util.acts_add_objective in
680-
optimize_obj ~for_model:false add_objective obj t;
681-
t
682-
| None -> t
680+
optimize_obj ~for_model:false add_objective obj t
681+
| None -> ()
683682

684683
let do_sat_splits acts t =
685684
let splits, t = sat_splits t in
@@ -963,7 +962,7 @@ module Main_Empty : S = struct
963962

964963
let get_real_env _ = CC_X.empty
965964
let get_case_split_env _ = CC_X.empty
966-
let do_optimize ~acts:_ env = env
965+
let do_optimize ~acts:_ _ = ()
967966
let do_case_split ?acts:_ env _ = env, E.Set.empty
968967
let add_term env _ ~add_in_cs:_ = env
969968
let compute_concrete_model ~acts:_ _env = ()

src/lib/reasoners/theory.mli

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ module type S = sig
4949
val get_real_env : t -> Ccx.Main.t
5050
val get_case_split_env : t -> Ccx.Main.t
5151
val do_optimize :
52-
acts:Shostak.Literal.t Th_util.acts -> t -> t
52+
acts:Shostak.Literal.t Th_util.acts -> t -> unit
5353
val do_case_split :
5454
?acts:Shostak.Literal.t Th_util.acts ->
5555
t -> Util.case_split_policy -> t * Expr.Set.t

0 commit comments

Comments
 (0)