8 Hits in 1.8 sec

Why Just Boogie? Translating Between Intermediate Verification Languages [article]

Michael Ameri, Carlo A. Furia
2016 arXiv   pre-print
The verification systems Boogie and Why3 use their respective intermediate languages to generate verification conditions from high-level programs.  ...  This paper describes a translation of Boogie into WhyML (Why3's intermediate language) that preserves semantics, verifiability, and program structure to a large degree.  ...  Introduction Intermediate verification languages (IVLs) are intermediate representations used in verification technology.  ... 
arXiv:1601.00516v2 fatcat:ep5h32oa55bqvik4wdbufhnxui

Fine-Grained Caching of Verification Results [chapter]

K. Rustan M. Leino, Valentin Wüstholz
2015 Lecture Notes in Computer Science  
The system has been implemented in the Boogie verification engine, which allows it to be used by different verification front ends that target the intermediate verification language Boogie; we present  ...  The caching system uses the program's call graph and controlflow graph to focus the verification effort on just the parts of the program that were affected by the user's most recent modifications.  ...  We thank Maria for comments on a draft of this paper and the reviewers for their constructive comments.  ... 
doi:10.1007/978-3-319-21690-4_22 fatcat:kppunm4xdbf3bmhpx2gdnbrye4

F-IDEs with Features and VCs Designed to Assist Human Reasoning When Verification Fails

Yu-Shan Sun, Daniel Welch, Murali Sitaraman
2021 Electronic Proceedings in Theoretical Computer Science  
and how to use them when verification fails.  ...  The first environment, referred to as the web-IDE, has been used for several years to teach aspects of formal specification and verification, including why and where verification conditions (VCs) arise  ...  Particular thanks are due to Bill Ogden and Joan Krone for their insights on the proof rules detailed.  ... 
doi:10.4204/eptcs.349.4 fatcat:ek3xk2dksjbnvj6rvoztwommoa

Effective Domain-Specific Formal Verification Techniques

Ákos Hajdu, Zoltán Micskei
2020 Zenodo  
Formal verification techniques allow rigorous reasoning about the operation of computer systems and programs.  ...  With a sound and complete mathematical basis, it is both possible to show the presence of certain kinds of errors and to prove their absence.  ...  Boogie IVL Boogie is an intermediate verification language (IVL) [DL05; Lei08] serving as a layer to build verifiers for various languages.  ... 
doi:10.5281/zenodo.3892347 fatcat:56hta7rkh5dinlehzrcfapumme

Automating Induction for Solving Horn Clauses [chapter]

Hiroshi Unno, Sho Torii, Hiroki Sakamoto
2017 Lecture Notes in Computer Science  
The use of Horn clause constraints, which can be considered as an Intermediate Verification Language (IVL) common to Horn constraint solvers and target languages, enables our method to verify relational  ...  We have implemented a relational verification tool for the OCaml functional language based on the proposed method and obtained promising results in preliminary experiments.  ...  We would like to thank Tachio Terauchi for useful discussions, and anonymous referees for their constructive comments. This work was partially supported by Kakenhi 16H05856 and 15H05706.  ... 
doi:10.1007/978-3-319-63390-9_30 fatcat:pgt2xnaoevcn7otiddwkcsiwnm

Automated Algebraic Reasoning for Collections and Local Variables with Lenses [chapter]

Simon Foster, James Baxter
2020 Lecture Notes in Computer Science  
For the latter, we adopt an approach first used by Back and von Wright, and derive weakest precondition and Hoare calculi. We demonstrate several examples, including verification of insertion sort.  ...  Lenses are a useful algebraic structure for giving a unifying semantics to program variables in a variety of store models.  ...  This work is funded by the EPSRC projects CyPhyAssure 3 (Grant EP/S001190/1) and RoboTest (Grant EP/R025479/1).  ... 
doi:10.1007/978-3-030-43520-2_7 fatcat:fa6r2gjjofa4zkiz4sfvcjexya

Automating Induction for Solving Horn Clauses [article]

Hiroshi Unno, Sho Torii
2016 arXiv   pre-print
We have implemented a relational verification tool for the OCaml functional language based on the proposed method and obtained promising results in preliminary experiments.  ...  Verification problems of programs written in various paradigms (such as imperative, logic, concurrent, functional, and object-oriented ones) can be reduced to problems of solving Horn clause constraints  ...  In spite of the expressiveness, Horn clause constraints have a simpler logical semantics compared to other popular IVLs like Boogie [2] and Why3 [8] .  ... 
arXiv:1610.06768v1 fatcat:2rlylehenzdyjk5wjul36h4l3y

Using ACL2 in the Design of Efficient, Verifiable Data Structures for High-Assurance Systems [article]

David Hardin
2018 pre-print
We base the Intermediate Verification Language for our toolchain upon higher-order logic; however, we have used ACL2 to develop our efficient yet verifiable data structure design.  ...  Our toolchain features code generation to mainstream programming languages, as well as GPU-based and hardware-based realizations.  ...  The Boogie [17] and WhyML/Why3 [5] systems are paradigmatic IVLs, supporting highly developed verification-enhanced languages.  ... 
doi:10.4204/eptcs.280.5 arXiv:1810.04312v1 fatcat:ba7a5txnjrfy3oistfinj57du4