pub enum RestartMode {
Adaptive,
Glucose,
Luby,
}Expand description
The restart heuristic. Glucose’s dynamic LBD policy restarts when recent learned-clause quality (literal-block distance) degrades relative to the global average, and blocks a restart when the trail is unusually long — a sign the search is closing in on a model. Luby is the classic universal sequence (Luby et al., 1993). Adaptive alternates the two in geometrically growing phases (the CaDiCaL/Kissat “stabilizing / non-stabilizing” idea): aggressive Glucose restarts to EXPLORE, then calm Luby restarts to let phase-saving EXPLOIT and dig toward a model — capturing the strength of each and avoiding the per-instance losses of either alone. The choice is a pure search-ORDER heuristic: it never changes a verdict.
Variants§
Adaptive
Alternate Glucose (non-stabilizing) and Luby (stabilizing) phases — the default.
Glucose
Dynamic LBD restarts with blocking — the Glucose lever.
Luby
The Luby universal restart sequence.
Trait Implementations§
Source§impl Clone for RestartMode
impl Clone for RestartMode
Source§fn clone(&self) -> RestartMode
fn clone(&self) -> RestartMode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RestartMode
impl Debug for RestartMode
Source§impl PartialEq for RestartMode
impl PartialEq for RestartMode
Source§fn eq(&self, other: &RestartMode) -> bool
fn eq(&self, other: &RestartMode) -> bool
self and other values to be equal, and is used by ==.