# [Aptitude-devel] r3083 - branches/aptitude-0.3/aptitude/src/generic/problemresolver

Daniel Burrows dburrows@costa.debian.org
Mon, 25 Apr 2005 03:18:24 +0000

Author: dburrows
Date: Mon Apr 25 03:18:23 2005
New Revision: 3083

Modified:
branches/aptitude-0.3/aptitude/src/generic/problemresolver/model.tex
Log:
Correct an error in the reduction from apt

Modified: branches/aptitude-0.3/aptitude/src/generic/problemresolver/model.tex
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/problemresolver/model.tex	(original)
+++ branches/aptitude-0.3/aptitude/src/generic/problemresolver/model.tex	Mon Apr 25 03:18:23 2005
@@ -269,14 +269,16 @@
$\D$ contains $v -> S$ for every such dependency.
\item For each conflict declared by a version $v$ on the package $p$,
accumulate a set $S$ containing all the \emph{non}-matching versions
-  of $p$ and insert $v -> S$ into $\D$.  Furthermore, if the conflict
-  is not versioned, then for each package $p'$ and version $v'$ of
-  $p'$ such that $v'$ provides $p$, let $S=\{v'' \st \pkgof{v''}=p' \land - \text{$v''$does not provide$p$}\}$ and insert $v -> S$ into $\D$.
+  of $p$, including the uninstalled'' version, and insert $v -> S$
+  into $\D$.  Furthermore, if the conflict is not versioned, then for
+  each package $p'$ and version $v'$ of $p'$ such that $v'$ provides
+  $p$, let $S=\{v'' \st \pkgof{v''}=p' \land \text{$v''$does not + provide$p$}\}$ and insert $v -> S$ into $\D$.

For instance, if $v$ conflicts with \pkg{A}, of which versions 3.2
-  and 3.3 are available, and versions 2 and 3 of \pkg{B} provide
-  \pkg{A}, then $S=\{\pkg{A}:3.2,\pkg{A}:3.3,\pkg{B}:2,\pkg{B}:3\}$.
+  and 3.3 are available, versions 2 and 3 of \pkg{B} provide \pkg{A},
+  and no other versions of \pkg{B} are available, then
+  $S=\{\pkg{A}:3.2,\pkg{A}:3.3,\pkg{A}:\pkg{UNINST},\pkg{B}:2,\pkg{B}:\pkg{UNINST}\}$.

\begin{note}
In reality, extra care must be taken to screen out self-conflicts