У меня был курс в универе по дизайну точных систем - там нас гоняли по всем этим штукам. Чтобы понимать базу надо наверно ознакомиться с z3, потом, чтобы понимать, как это выглядит в языке программирования - попробовать покодить на dafny. Затем можно посмотреть на boogie, ибо сишный и плюсовый код частенько в него транслируется для последущего анализа всякими инструментами.