Uma excelente visão geral para iniciantes é fornecida pelo artigo a seguir de 2009.
Existem várias maneiras de entrar nos aspectos técnicos. Você pode até começar com o artigo original de Davis-Putnam. É extremamente claro e tem exemplos detalhados. Ao discutir as otimizações de SAT em um curso, descobrimos que alguns podem imaginar que já estão lá. O artigo de Davis-Logeman-Loveland é (me sinto) menos instrutivo, mas é tão curto que você pode lê-lo.
Existem várias maneiras de acompanhar os desenvolvimentos dos próximos 50 anos. Eu recomendaria slides para palestras. Apenas procurar por 'DPLL' exibirá muitos tutoriais. Se você navegar por eles, tenho certeza que a névoa vai clarear - até certo ponto. Existem também muitas pesquisas úteis. O artigo de Zhang-Malik é um bom ponto de partida. Existem vários artigos no Manual de Satisfação que você pode achar úteis.
- The Quest for Solvers Boolean Efficient Satisfaction Solvers , Lintao Zhang, Sharad Malik, Artigo Convidado para CAV e CADE 2002.
- Handbook of Satisfiability , editado por Armin Biere, Marijn Heule, Hans van Maaren e Toby Walsh, 2009
- Anatomia e avaliação empírica de solventes modernos SAT , Karem Sakallah, João Marques-Silva, Boletim do EATCS, 2011.
Eu segundo a sugestão de Mikolaos. O código MiniSAT é limpo e de tamanho gerenciável. Você pode brincar com isso. Existem vários outros solucionadores que você pode tentar. O CryptoMiniSat também é bastante limpo. Você também deve consultar o trabalho de Armin Biere , que escreve sobre solucionadores de SAT e escreve sobre como escrever sobre solucionadores de SAT.