Normalmente, esses são pacotes vinculados (como g++-4.6 e libstdc++6-4.6-dev , ou perl and perl-modules ), portanto, o relacionamento Depends entre eles especifica a versão exata número. Por exemplo, g++-4.6 4.6.3-1ubuntu5 depende de libstdc++6-4.6-dev (= 4.6.3-1ubuntu5) e libstdc++6-4.6-dev 4.6.3-1ubuntu5 on g++-4.6 (= 4.6.3-1ubuntu5) . Esses pacotes são sempre instalados, atualizados ou removidos juntos. Quanto ao algoritmo que apt-get usa, eu não sei, mas você pode ler o algoritmo aptitude no aptitude página do criador .