[−][src]Trait ddo::core::abstraction::heuristics::VariableHeuristic
This trait defines an heuristic to determine the best variable to branch on while developing an MDD.
Required methods
fn next_var<'a>(
&self,
free_vars: &'a VarSet,
current: Layer<'a, T>,
next: Layer<'a, T>
) -> Option<Variable>
&self,
free_vars: &'a VarSet,
current: Layer<'a, T>,
next: Layer<'a, T>
) -> Option<Variable>
Returns the best variable to branch on from the set of free_vars
or None
in case no branching is useful (free_vars
is empty, no decision
left to make, etc...).
Implementors
impl<T> VariableHeuristic<T> for NaturalOrder
[src]
fn next_var<'a>(
&self,
free_vars: &'a VarSet,
_c: Layer<'a, T>,
_n: Layer<'a, T>
) -> Option<Variable>
[src]
&self,
free_vars: &'a VarSet,
_c: Layer<'a, T>,
_n: Layer<'a, T>
) -> Option<Variable>
impl<T, F> VariableHeuristic<T> for Func<F> where
F: Fn(&VarSet, Layer<T>, Layer<T>) -> Option<Variable>,
[src]
F: Fn(&VarSet, Layer<T>, Layer<T>) -> Option<Variable>,
Whenever the parameter function Func
is a function/closure that
possibly returns a variable based on a set of free variables and two layers
(current and next), then Func
will auto implement the VariableHeuristic
trait for that function.