cnf_solver