2024
/
Доказательство корректности программ
Данная книга учит формально рассуждать о компьютерных программах, используя последовательный подход и язык программирования Dafny, поддерживающий верификацию. Показано, как писать спецификации для программ, как удовлетворить требования этих спецификаций и как писать доказательства корректности программ относительно спецификаций. Автор сначала представляет теоретические предпосылки, лежащие в основе рассуждений о программном коде, а затем постепенно переходит к реальным примерам, использующих объекты, структуры данных и нетривиальную рекурсию.
Особенности книги:
— написана простым и понятным языком;
— постепенно вводит все более сложные понятия;
— наглядно демонстрирует, как писать доказательства, а также как определять и верифицировать функциональные и императивные программы;
— приводить примеры программного кода на реальном языке программирования, а не псевдокоде;
— содержит забавные иллюстрации и обучающие упражнения.
Издание будет полезно студентам вузов, преподавателям, исследователям в области формальной верификации, а также сотрудникам компаний, применяющих дедуктивную верификацию на практике.