中文
相关论文

相关论文: Why Just Boogie? Translating Between Intermediate …

200 篇论文

Automated program verifiers are typically implemented using an intermediate verification language (IVL), such as Boogie or Why3. A verifier front-end translates the input program and specification into an IVL program, while the back-end…

A program verifier produces reliable results only if both the logic used to justify the program's correctness is sound, and the implementation of the program verifier is itself correct. Whereas it is common to formally prove soundness of…

编程语言 · 计算机科学 2021-06-01 Gaurav Parthasarathy , Peter Müller , Alexander J. Summers

Lightweight validation technique, such as those based on random testing, are sometimes practical alternatives to full formal verification -- providing valuable benefits, such as finding bugs, without requiring a disproportionate effort. In…

计算机科学中的逻辑 · 计算机科学 2025-08-26 Lidia Losavio , Marco Paganoni , Carlo A. Furia

In theorem prover or SMT solver based verification, the program to be verified is often given in an intermediate verification language such as Boogie, Why, or CHC. This setting raises new challenges. We investigate a preprocessing step…

软件工程 · 计算机科学 2019-01-08 Daniel Dietsch , Matthias Heizmann , Jochen Hoenicke , Alexander Nutz , Andreas Podelski

Static program verifiers such as Spec#, Dafny, jStar, and VeriFast define the state of the art in automated functional verification techniques. The next open challenges are to make verification tools usable even by programmers not fluent in…

软件工程 · 计算机科学 2011-06-24 Julian Tschannen , Carlo A. Furia , Martin Nordio , Bertrand Meyer

This dissertation discusses several problems loosely related, because they all involve a verification condition generator. The Boogie language is introduced; the architecture of a verification-generator is described. Then come more…

软件工程 · 计算机科学 2012-05-01 Radu Grigore

The Message Passing Interface specification (MPI) defines a portable message-passing API used to program parallel computers. MPI programs manifest a number of challenges on what concerns correctness: sent and expected values in…

编程语言 · 计算机科学 2015-08-21 César Santos , Francisco Martins , Vasco Thudichum Vasconcelos

This paper presents a quantitative program verification infrastructure for discrete probabilistic programs. Our infrastructure can be viewed as the probabilistic analogue of Boogie: its central components are an intermediate verification…

Program verifiers are not exempt from the bugs that affect nearly every piece of software. In addition, they often exhibit brittle behavior: their performance changes considerably with details of how the input program is expressed-details…

软件工程 · 计算机科学 2018-05-10 Yu-Ting Chen , Carlo A. Furia

OCaml is particularly well-fitted for formal verification. On one hand, it is a multi-paradigm language with a well-defined semantics, allowing one to write clean, concise, type-safe, and efficient code. On the other hand, it is a language…

计算机科学中的逻辑 · 计算机科学 2021-09-07 Mário Pereira , António Ravara

Program verification tools are often implemented as front-end translations of an input program into an intermediate verification language (IVL) such as Boogie, GIL, Viper, or Why3. The resulting IVL program is then verified using an…

The breakneck evolution of modern programming languages aggravates the development of deductive verification tools, which struggle to timely and fully support all new language features. To address this challenge, we present ByteBack: a…

编程语言 · 计算机科学 2024-10-03 Marco Paganoni , Carlo A. Furia

A program's exceptional behavior can substantially complicate its control flow, and hence accurately reasoning about the program's correctness. On the other hand, formally verifying realistic programs is likely to involve exceptions -- a…

编程语言 · 计算机科学 2024-10-03 Marco Paganoni , Carlo A. Furia

Verifying relations between programs arises as a task in various verification contexts such as optimizing transformations, relating new versions of programs with older versions (regression verification), and noninterference. However,…

编程语言 · 计算机科学 2023-03-28 Ramana Nagasamudram , Anindya Banerjee , David A. Naumann

This paper presents a framework that integrates Large Language Models (LLMs) into translation validation, targeting LLVM compiler transformations where formal verification tools fall short. Our framework first utilizes existing formal…

编程语言 · 计算机科学 2024-02-02 Yanzhao Wang , Fei Xie

In this report, we present the preliminary work developed for our research project for the APDC (\'Area Pr\'atica de Desenvolvimento Curricular) course. The main goal of this project is to develop a framework, on top of the Why3 tool, for…

计算机科学中的逻辑 · 计算机科学 2020-12-02 Tiago Lopes Soares

Large language models (LLMs) have shown increasing competence in solving mathematical reasoning problems. However, many open-source LLMs still struggle with errors in calculation and semantic understanding during intermediate reasoning…

计算与语言 · 计算机科学 2024-12-18 Vernon Y. H. Toh , Deepanway Ghosal , Soujanya Poria

Large language models (LLMs) have demonstrated remarkable progress in code generation, but many existing benchmarks are approaching saturation and offer little guarantee on the trustworthiness of the generated programs. To improve…

软件工程 · 计算机科学 2025-10-08 Xun Deng , Sicheng Zhong , Barış Bayazıt , Andreas Veneris , Fan Long , Xujie Si

A bug or error is a common problem that any software or computer program may encounter. It can occur from badly writing the program, a typing error or bad memory management. However, errors can become a significant issue if the unsafe…

编程语言 · 计算机科学 2019-08-29 Zeinab Nehai , François Bobot

The exploitation of smart-contract vulnerabilities can have catastrophic consequences such as the loss of millions of pounds worth of crypto assets. Formal verification can be a useful tool in identifying vulnerabilities and proving that…

编程语言 · 计算机科学 2020-02-10 Pedro Antonino , A. W. Roscoe
‹ 上一页 1 2 3 10 下一页 ›