diff --git a/Cargo.toml b/Cargo.toml index d7671484b0..f7ef798c80 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,3 +1,7 @@ [workspace] members = ["crates/*"] resolver = "2" + +[profile.release] +lto = "fat" +codegen-units = 1 diff --git a/crates/pindakaas-intel-sat/vendor/intel_sat b/crates/pindakaas-intel-sat/vendor/intel_sat index 3af838480f..a78cf99dd5 160000 --- a/crates/pindakaas-intel-sat/vendor/intel_sat +++ b/crates/pindakaas-intel-sat/vendor/intel_sat @@ -1 +1 @@ -Subproject commit 3af838480fc916b62e3962850b9ac8281de31cec +Subproject commit a78cf99dd5dff0f0b0c3818cac2aaa1593f573c1 diff --git a/crates/pindakaas/src/int/enc.rs b/crates/pindakaas/src/int/enc.rs index 7f3ea6eb0a..e7b22be215 100644 --- a/crates/pindakaas/src/int/enc.rs +++ b/crates/pindakaas/src/int/enc.rs @@ -531,12 +531,7 @@ impl IntVarEnc { // TODO account for bounds (or even better, create IntVarBin) // TODO old method (which at least respected bounds) if COUPLE_DOM_PART_TO_ORD { - let x_bin = IntVarBin::from_terms( - terms.iter().copied().map(|(l, i)| (l, i)).collect(), - *l, - *u, - String::from("x"), - ); + let x_bin = IntVarBin::from_terms(terms.to_vec(), *l, *u, String::from("x")); let x_ord = IntVarEnc::Ord(IntVarOrd::from_bounds( db, x_bin.lb(), diff --git a/crates/pindakaas/src/lib.rs b/crates/pindakaas/src/lib.rs index 4f9209713a..1dc129c00b 100755 --- a/crates/pindakaas/src/lib.rs +++ b/crates/pindakaas/src/lib.rs @@ -35,7 +35,7 @@ pub mod trace; use crate::trace::subscript_number; pub use crate::{ cardinality::{Cardinality, SortingNetworkEncoder}, - cardinality_one::{CardinalityOne, LadderEncoder, PairwiseEncoder}, + cardinality_one::{BitwiseEncoder, CardinalityOne, LadderEncoder, PairwiseEncoder}, linear::{ AdderEncoder, BddEncoder, Comparator, LimitComp, LinExp, LinVariant, Linear, LinearAggregator, LinearConstraint, LinearEncoder, SwcEncoder, TotalizerEncoder,