diff --git a/src/solver/mod.rs b/src/solver/mod.rs index 5f1b813..b156630 100644 --- a/src/solver/mod.rs +++ b/src/solver/mod.rs @@ -608,15 +608,16 @@ impl> Sol } } - if let Some((count, (candidate, solvable_id, _clause_id))) = best_decision { + if let Some((count, (candidate, _solvable_id, clause_id))) = best_decision { tracing::info!( - "deciding to assign {} with {} candidates (required by {})", + "deciding to assign {}, ({:?}, {} possible candidates)", candidate.display(self.pool()), + self.clauses[clause_id].debug(self.pool()), count, - solvable_id.display(self.pool()) ); } + // Could not find a requirement that needs satisfying. best_decision.map(|d| d.1) } @@ -644,6 +645,7 @@ impl> Sol tracing::info!( "╤══ Install {} at level {level} (required by {})", solvable.display(self.pool()), + required_by.display(self.pool()), ); @@ -669,10 +671,10 @@ impl> Sol return Err(UnsolvableOrCancelled::Cancelled(value)); } Err(PropagationError::Conflict( - conflicting_solvable, - attempted_value, - conflicting_clause, - )) => { + conflicting_solvable, + attempted_value, + conflicting_clause, + )) => { level = self.learn_from_conflict( level, conflicting_solvable,