Somewhat optimised DPLL with starting code