Hi Mr. Deepsolver ;)
On Tue, Jan 14, 2014 at 08:06:54PM +0700, Michael Pozhidaev wrote:
> I'd like to better understand some zypp (maybe libsolv) implementation
> details. Could anybody help me, please!
> The question is as follows: consider we have a couple of packages a and
> b. Dependencies rules imply that a requires b. Reflecting that clause
> should be as (not a or b), right?
> But if a is not chosen for installation b gets freedom to have any
> value, either true or false without any consequent breaks of a solution.
> What strategy do zypp use to left the b variable unchanged? I mean left
> corresponding package uninstalled if it was uninstalled. Is it possible
> to do that strictly or it always implies some probability?
> Thank you a lot for your answer! :))
So this is about the time when the solver is free to choose a literal,
not unit propagation. In that case, we only choose positive literals,
*and only if we must* (meaning if none of the negative literals are
fulfilled). So, in your case, we would never choose b from a "-a|b"
rule as long as "a" is not chosen for installation.
When we no longer find rules that we need to fulfill, we set all
undecided literals to "keep". This makes all rules true.
Michael Schroeder m...@suse.de
SUSE LINUX Products GmbH, GF Jeff Hawn, HRB 16746 AG Nuernberg
To unsubscribe, e-mail: zypp-devel+unsubscr...@opensuse.org
To contact the owner, e-mail: zypp-devel+ow...@opensuse.org