• Karel Koci's avatar
    Describe dependencies in planner using equivalency · c64255db
    Karel Koci authored
    Using only implication is problematic if we add negation to chain. In
    such case its meaning isn't that it implies negative value, but that it
    doesn't imply. That is problem if we use use negative dependencies. New
    approach uses equivalency instead of implications. We used equivalency
    originally because formulas added to sat solver as dependencies of one
    package would introduced limitation on package even if original package
    isn't selected and that is wrong. Now instead of that we use formulas
    activators. It's variable that ensures that if it isn't set than
    formula is always true. Activator is package group or candidate for
    which given dependency is build. This way we are able to ignore
    dependency formulas that don't have to be activated because we don't
    choose that package.
    c64255db