Obsah

Pouzite predikaty

KB predikaty (budu nacitavane z databazy):

balik(PackID,Name,Ver)
Zoznam existujucich balikov a ich verzii, kazdy ma priradene ID.

depend(PackID,CondID), rdepend(PackID,CondID), pdepend(PackID,CondID), provide(PackID,CondID)
Oznamuje, ze koren depend, rdepend, pdepend alebo provide grafu pre balik PackID je poziadavka CondID.

condition(CondID,Neg,Op,Name,Ver,IDor,IDand)
Urcuje ID poziadavky, informacie o poziadavke (negovanost, operator, meno, verziu) a poziadavku susednu cez ALEBO a A hranu (0 znamena ziadnu poziadavku).

usevar(Name)
V aktualnej konfiguracii je zapnuty flag Name.

installed(Name,Ver)
Balik Name,Ver je momentalne nainstalovany.

requested(Name,Ver)
Balik Name,Ver je nainstalovany preto, lebo ho pouzivatel pozadoval (ak plati not requested(Name,Ver), potom je prislusny balik nainstalovany len aby vyriesil zavislost).

Program install.dlv

Vstupne predikaty (predstavuju vstup od pouzivatela a udalosti):

user_install(Name,Ver)
Pouzivatel pozaduje instalaciu balika Name vo verzii Ver.

user_forbid(Name,Ver)
Pouzivatel si nepraje, aby bol balik Name vo verzii Ver nainstalovany.

Vystupne predikaty (predstavuju riesenie poziadaviek, niektore z nich sa budu exportovat do databazy):

round(I,PackID)
Balik PackID bol vybrany na instalovanie a je nutne nainstalovat ho az potom, ako budu nainstalovane vsetky vybrane baliky, ktorym bolo priradene mensie cislo kola.

Pracovne predikaty (vyznamne iba pri behu programu):

satisfy(CondID,Type,PackID)
Podmienku CondID je nutne splnit. Parametre Type a PackID urcuju o aky graf akeho balika ide, pouzivaju sa pri urcovani poradia instalacie vybranych balikov.

doPick(Neg,Op,Name,Ver,Type,PackID)
Treba vybrat nejaky balik, ktory splna prislusne kriteria. Parametre Type a PackID urcuju z akeho grafu akeho balika tato poziadavka pochadza, pouzivaju sa pri urcovani poradia instalacie vybranych balikov.

doPickSucc(Neg,Op,Name,Ver)
Oznamuje, ze existuje balik, ktory splna prislusne kriteria.

markPicked(Name,Ver,Type,DPackID)
Sposobi odvodenie picked(Name,Ver) a sucasne pomocou after odvodi v akom poradi treba instalovat balik DPackID a balik dany dvojicou Name, Ver.

picked(Name,Ver)
Balik Name bol vybrany na nainstalovanie vo verzii Ver.

after(PackID1,PackID2)
Balik PackID2 musi byt nainstalovany po baliku PackID1.

providing(PackID,Name,Ver)
Na zaklade prechodu provide grafu pre balik PackID a konfiguracie USE flagov bolo odvodene, ze balik PackID poskytuje funkcionalitu Name,Ver.

addProvide(PackID,CondID)
Pre balik PackID treba odvodit predikat providing, ktoreho parametre vyplyvaju z podmienky CondID.

Program remove.dlv

Vstupne predikaty (predstavuju vstup od pouzivatela a udalosti):

user_remove(Name,Ver)
Pouzivatel pozaduje odinstalovanie balika Name,Ver.

Vystupne predikaty (predstavuju riesenie poziadaviek, niektore z nich sa budu exportovat do databazy):

remove(PackID)
Balik PackID je oznaceny na odinstalovanie.

forceRemove(PackID)
Balik PackID je nutne odstranit, pretoze pouzivatel poziadal o odstranenie ineho balika, ktory je potrebny ako jeho zavislost.

Pracovne predikaty (vyznamne iba pri behu programu):

satisfyVert(CondID)
Vrchol niektoreho grafu zavislosti CondID je potrebne splnit.

satisfiedCond(Neg,Op,Name,Ver)
Oznacuje, ci podmienka dana parametrami Neg,Op,Name,Ver bude splnena po odstraneni vybranych balikov.

addProvide(PackID,CondID)
Pre balik PackID treba odvodit predikat providing, ktoreho parametre vyplyvaju z podmienky CondID.

providing(PackID,Name,Ver)
Na zaklade prechodu provide grafu pre balik PackID a konfiguracie USE flagov bolo odvodene, ze balik PackID poskytuje funkcionalitu Name,Ver.

checkPack(PackID)
Pre balik PackID je nutne skontrolovat, ci pouzivatel nepozadoval odstranenie jeho zavislosti.

checkVert(CondID,PackID)
Pre balik PackID je nutne skontrolovat, ci jeho podmienka CondID bude splnena po odstraneni vsetkych pouzivatelom pozadovanych balikov.

userForceRemove(PackID)
Balik PackID bude odstraneny, pretoze to vyzaduje pouzivatel alebo je to vynutene chybajucou zavislostou. Pri kontrole chybajucich zavislosti treba za odstranene povazovat prave tieto baliky.

satisfiedCondF(Neg,Op,Name,Ver)
Oznacuje, ci podmienka dana parametrami Neg,Op,Name,Ver bude splnena po odstraneni balikov, ktorych odstranenie je vynutene.