2018 Ivannikov Ispras Open Conference (ISPRAS) 2018
DOI: 10.1109/ispras.2018.00012
|View full text |Cite
|
Sign up to set email alerts
|

Lemma Functions for Frama-C: C Programs as Proofs

Abstract: This paper describes the development of an auto-active verification technique in the Frama-C framework. We outline the lemma functions method and present the corresponding ACSL extension, its implementation in Frama-C, and evaluation on a set of string-manipulating functions from the Linux kernel. We illustrate the benefits our approach can bring concerning the effort required to prove lemmas, compared to the approach based on interactive provers such as Coq. Current limitations of the method and its implement… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
1
0
7

Year Published

2019
2019
2022
2022

Publication Types

Select...
4
3
2

Relationship

0
9

Authors

Journals

citations
Cited by 11 publications
(8 citation statements)
references
References 11 publications
0
1
0
7
Order By: Relevance
“…Для доказательства сложного утверждения, в частности, требующего доказательства по индукции, оказалось полезным использование аппарата лемма-функций [18]. Здесь строится вспомогательная предикатная программа, спецификация которой совпадает с исходным утверждением.…”
Section: описание программы Memweightunclassified
See 1 more Smart Citation
“…Для доказательства сложного утверждения, в частности, требующего доказательства по индукции, оказалось полезным использование аппарата лемма-функций [18]. Здесь строится вспомогательная предикатная программа, спецификация которой совпадает с исходным утверждением.…”
Section: описание программы Memweightunclassified
“…Благодаря этому появилась возможность полностью реализовать доказательство в рамках системы Why3 без выхода в систему Coq [17], как это было ранее [6,7]. Дополнительным эффективным методом является использование аппарата лемма-функций [18] для доказательства сложной леммы, в частности, требующей доказательства по индукции. Здесь строится вспомогательная предикатная программа, спецификация которой совпадает с исходной леммой.…”
Section: Introductionunclassified
“…Но стратегии проекта CLPT [1] ориентированы только на обработку предикатов. Также в качестве примера можно рассмотреть систему AstraVer [6] и используемый в ней метод лемма-функций [31]. Данная стратегия основана на задании спецификаций определенного вида, что облегчает задачу по сравнению с заданием инвариантов, но не позволяет достигнуть полной автоматизации.…”
Section: Introductionunclassified
“…All the proofs of the lemmas mentioned in Section 5.3 that show the preservation of the round invariants and establishment of postconditions are encoded in Ver-Cors as lemma functions [VME18,GT16]. Lemma functions have specifications that capture the desired property, while the proof is encoded as a side effect-free imperative program.…”
Section: Lemma Functions As Mentioned Above To Show the Preservation ...mentioning
confidence: 99%