Na stronie wikipedia tutaj całkiem dobrze opisuje algorytm CDCL (i wydaje się, że zdjęcia zostały zrobione ze slajdów stworzonych przez Sharada Malika z Princeton). Jednak przy opisywaniu sposobu cofania wszystko mówi „do właściwego punktu”. MiniSAT wykorzystuje również wariant algorytmu CDCL, więc przeczytałem ten artykuł. Wydaje się, że mówią, że powinieneś cofać się, dopóki wyuczona klauzula nie będzie klauzulą jednostkową. To z pewnością wyjaśnienie, ale nie ma dla mnie sensu. Ostatnie zadanie z pewnością będzie częścią wyuczonej klauzuli konfliktu, o ile mogę powiedzieć (być może tutaj się mylę?), Więc gdy cofniesz się o jeden krok, natychmiast utworzysz wyuczoną jednostkę klauzuli, ostatnia przypisana wartość zostanie odwrócona, a algorytm będzie działał dokładnie tak, jak DPLL, bez cofania się wystarczająco daleko. Dodatkowo strona wikipedia nie przestrzega tej zasady, cofa się o wiele dalej, co wydaje się pożądane.
Jak daleko należy się wycofać?