Verification of Certifying Computations through AutoCorres and Simpl
Autor: | Lars Noschinski, Kurt Mehlhorn, Christine Rizkallah |
---|---|
Rok vydání: | 2014 |
Předmět: | |
Zdroj: | Lecture Notes in Computer Science ISBN: 9783319061993 NASA Formal Methods |
DOI: | 10.1007/978-3-319-06200-6_4 |
Popis: | Certifying algorithms compute not only an output, but also a witness that certifies the correctness of the output for a particular input. A checker program uses this certificate to ascertain the correctness of the output. Recent work used the verification tools VCC and Isabelle to verify checker implementations and their mathematical background theory. The checkers verified stem from the widely-used algorithms library LEDA and are written in C. The drawback of this approach is the use of two different tools. The advantage is that it could be carried out with reasonable effort in 2011. In this article, we evaluate the feasibility of performing the entire verification within Isabelle. For this purpose, we consider checkers written in the imperative languages C and Simpl. We re-verify the checker for connectedness of graphs and present a verification of the LEDA checker for non-planarity of graphs. For the checkers written in C, we translate from C to Isabelle using the AutoCorres tool set and then reason in Isabelle. For the checkers written in Simpl, Isabelle is the only tool needed. We compare the new approach with the previous approach and discuss advantages and disadvantages. We conclude that the new approach provides higher trust guarantees and it is particularly promising for checkers that require domain-specific reasoning. |
Databáze: | OpenAIRE |
Externí odkaz: |