Dependency resolution in aptitude

There are two main dependency resolution algorithms in aptitude.

The first is an algorithm that is also used by programs such as apt-get and synaptic; I will call it immediate resolution. It is invoked whenever you select a package for installation interactively, and immediately after one or more packages are marked for installation at the command-line. Immediate resolution is fast and will solve most dependency problems, but it is sometimes unable to find any solution.

The second algorithm, which I will call interactive resolution, is invoked when packages have broken dependencies even after immediate resolution[11]. It can resolve more dependencies, it allows you to review a solution before applying it, and it allows you to provide feedback to the resolver, guiding it towards a better solution.

[11] Or when immediate resolution is disabled.