@@ -5,8 +5,8 @@ module Lit_tbl = Hashtbl.Make (Lit)
55
66type cstore = {
77 c_lits : atom array Vec .t ; (* storage for clause content *)
8- c_activity : Vec_float .t ;
9- c_recycle_idx : Veci .t ; (* recycle clause numbers that were GC'd *)
8+ c_activity : float Vec .t ;
9+ c_recycle_idx : int Vec .t ; (* recycle clause numbers that were GC'd *)
1010 c_proof : Step_vec .t ; (* clause -> proof_rule for its proof *)
1111 c_attached : Bitvec .t ;
1212 c_marked : Bitvec .t ;
@@ -19,7 +19,7 @@ type t = {
1919 v_of_lit : var Lit_tbl .t ; (* lit -> var *)
2020 v_level : int Vec .t ; (* decision/assignment level, or -1 *)
2121 v_heap_idx : int Vec .t ; (* index in priority heap *)
22- v_weight : Vec_float .t ; (* heuristic activity *)
22+ v_weight : float Vec .t ; (* heuristic activity *)
2323 v_reason : var_reason option Vec .t ; (* reason for assignment *)
2424 v_seen : Bitvec .t ; (* generic temporary marker *)
2525 v_default_polarity : Bitvec .t ; (* default polarity in decisions *)
@@ -52,7 +52,7 @@ let create ?(size = `Big) ~stat () : t =
5252 v_of_lit = Lit_tbl. create size_map;
5353 v_level = Vec. create () ;
5454 v_heap_idx = Vec. create () ;
55- v_weight = Vec_float . create () ;
55+ v_weight = Vec . create () ;
5656 v_reason = Vec. create () ;
5757 v_seen = Bitvec. create () ;
5858 v_default_polarity = Bitvec. create () ;
@@ -67,8 +67,8 @@ let create ?(size = `Big) ~stat () : t =
6767 c_store =
6868 {
6969 c_lits = Vec. create () ;
70- c_activity = Vec_float . create () ;
71- c_recycle_idx = Veci . create ~cap: 0 () ;
70+ c_activity = Vec . create () ;
71+ c_recycle_idx = Vec . create () ;
7272 c_proof = Step_vec. create ~cap: 0 () ;
7373 c_dead = Bitvec. create () ;
7474 c_attached = Bitvec. create () ;
@@ -88,10 +88,10 @@ module Var = struct
8888 let [@ inline] set_level self v l = Vec. set self.v_level (v : var :> int ) l
8989 let [@ inline] reason self v = Vec. get self.v_reason (v : var :> int )
9090 let [@ inline] set_reason self v r = Vec. set self.v_reason (v : var :> int ) r
91- let [@ inline] weight self v = Vec_float . get self.v_weight (v : var :> int )
91+ let [@ inline] weight self v = Vec . get self.v_weight (v : var :> int )
9292
9393 let [@ inline] set_weight self v w =
94- Vec_float . set self.v_weight (v : var :> int ) w
94+ Vec . set self.v_weight (v : var :> int ) w
9595
9696 let [@ inline] mark self v = Bitvec. set self.v_seen (v : var :> int ) true
9797 let [@ inline] unmark self v = Bitvec. set self.v_seen (v : var :> int ) false
@@ -208,16 +208,16 @@ module Clause = struct
208208 in
209209 (* allocate new ID *)
210210 let cid =
211- if Veci . is_empty c_recycle_idx then
211+ if Vec . is_empty c_recycle_idx then
212212 Vec. size c_lits
213213 else
214- Veci. pop c_recycle_idx
214+ Vec. pop_exn c_recycle_idx
215215 in
216216
217217 (* allocate space *)
218218 (let new_len = cid + 1 in
219219 Vec. ensure_size c_lits ~elt: [||] new_len;
220- Vec_float . ensure_size c_activity new_len;
220+ Vec . ensure_size c_activity ~elt: 0. new_len;
221221 Step_vec. ensure_size c_proof new_len;
222222 Bitvec. ensure_size c_attached new_len;
223223 Bitvec. ensure_size c_dead new_len;
@@ -298,17 +298,17 @@ module Clause = struct
298298 Bitvec. set c_removable cid false ;
299299 Bitvec. set c_marked cid false ;
300300 Vec. set c_lits cid [||];
301- Vec_float . set c_activity cid 0. ;
301+ Vec . set c_activity cid 0. ;
302302
303- Veci . push c_recycle_idx cid;
303+ Vec . push c_recycle_idx cid;
304304 (* recycle idx *)
305305 ()
306306
307307 let [@ inline] activity store c =
308- Vec_float . get store.c_store.c_activity (c : t :> int )
308+ Vec . get store.c_store.c_activity (c : t :> int )
309309
310310 let [@ inline] set_activity store c f =
311- Vec_float . set store.c_store.c_activity (c : t :> int ) f
311+ Vec . set store.c_store.c_activity (c : t :> int ) f
312312
313313 let [@ inline] atoms_a store c : atom array =
314314 Vec. get store.c_store.c_lits (c : t :> int )
@@ -372,7 +372,7 @@ let alloc_var_uncached_ ?default_pol:(pol = true) self (form : Lit.t) : var =
372372 Vec. push v_level (- 1 );
373373 Vec. push v_heap_idx (- 1 );
374374 Vec. push v_reason None ;
375- Vec_float . push v_weight 0. ;
375+ Vec . push v_weight 0. ;
376376 Bitvec. ensure_size v_seen v_idx;
377377 Bitvec. ensure_size v_default_polarity v_idx;
378378 Bitvec. set v_default_polarity v_idx pol;
0 commit comments