summaryrefslogtreecommitdiffstats
path: root/vendor/varisat/src/config.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/varisat/src/config.rs')
-rw-r--r--vendor/varisat/src/config.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/vendor/varisat/src/config.rs b/vendor/varisat/src/config.rs
new file mode 100644
index 000000000..433b91ccf
--- /dev/null
+++ b/vendor/varisat/src/config.rs
@@ -0,0 +1,31 @@
+//! Solver configuration.
+use varisat_internal_macros::{ConfigUpdate, DocDefault};
+
+/// Configurable parameters used during solving.
+#[derive(DocDefault, ConfigUpdate)]
+pub struct SolverConfig {
+ /// Multiplicative decay for the VSIDS decision heuristic.
+ ///
+ /// [default: 0.95] [range: 0.5..1.0]
+ pub vsids_decay: f32,
+
+ /// Multiplicative decay for clause activities.
+ ///
+ /// [default: 0.999] [range: 0.5..1.0]
+ pub clause_activity_decay: f32,
+
+ /// Number of conflicts between local clause reductions.
+ ///
+ /// [default: 15000] [range: 1..]
+ pub reduce_locals_interval: u64,
+
+ /// Number of conflicts between mid clause reductions.
+ ///
+ /// [default: 10000] [range: 1..]
+ pub reduce_mids_interval: u64,
+
+ /// Scaling factor for luby sequence based restarts (number of conflicts).
+ ///
+ /// [default: 128] [range: 1..]
+ pub luby_restart_interval_scale: u64,
+}