public override async Task <InferenceResults <Tval> > Infer(ConstraintSatisfactionProblem <Tval> csp, Variable <Tval> variable, Tval value, InferenceResults <Tval> inference = null, bool stopAtInconsistency = true) { Queue <Tuple <Variable <Tval>, Variable <Tval> > > queueOfArcs = new Queue <Tuple <Variable <Tval>, Variable <Tval> > >((variable != null) ? csp.GetArcsTowards(variable) : csp.GetArcs()); return(await ReduceDomains(csp, queueOfArcs, inference, stopAtInconsistency)); }
public override async Task <InferenceResults <Tval> > Infer(ConstraintSatisfactionProblem <Tval> csp, bool stopAtInconsistency = true) { Queue <Tuple <Variable <Tval>, Variable <Tval> > > queueOfArcs = new Queue <Tuple <Variable <Tval>, Variable <Tval> > >(csp.GetArcs()); return(await ReduceDomains(csp, queueOfArcs, null, stopAtInconsistency)); }