English
Related papers

Related papers: C*: Unifying Programming and Verification in C

200 papers

Error Detection and Correction Codes (ECCs) are often used in digital designs to protect data integrity. Especially in safety-critical systems such as automotive electronics, ECCs are widely used and the verification of such complex logic…

Artificial Intelligence · Computer Science 2024-04-30 Aman Kumar

Verifying hardware designs in embedded systems is crucial but often labor-intensive and time-consuming. While existing solutions have improved automation, they frequently rely on unrealistic assumptions. To address these challenges, we…

Hardware Architecture · Computer Science 2024-11-26 Yuchen Hu , Junhao Ye , Ke Xu , Jialin Sun , Shiyue Zhang , Xinyao Jiao , Dingrong Pan , Jie Zhou , Ning Wang , Weiwei Shan , Xinwei Fang , Xi Wang , Nan Guan , Zhe Jiang

Compilers can specialize programs having invariants for performance improvement. Detecting program invariants that span large and complex code, however, is difficult for compilers. Traditional compilers do not perform very expensive…

Programming Languages · Computer Science 2019-07-01 Wei He

VeriFast is a leading tool for the modular formal verification of correctness properties of single-threaded and multi-threaded C and Rust programs. It verifies a program by symbolically executing each function in isolation, exploiting…

Programming Languages · Computer Science 2026-01-21 Bart Jacobs

This paper introduces a proposal for a Proof Carrying Code (PCC) architecture called Lissom. Started as a challenge for final year Computing students, Lissom was thought as a mean to prove to a sceptic community, and in particular to…

Logic in Computer Science · Computer Science 2008-12-18 Joao Gomes , Daniel Martins , Simao Melo de Sousa , Jorge Sousa Pinto

Several software systems are polyglot; that is, they comprise programs implemented in a combination of programming languages. Verifiers that directly run on mainstream programming languages are currently customized for single languages.…

Programming Languages · Computer Science 2025-10-14 Pei-Wei Chen , Shaokai Lin , Adwait Godbole , Ramneet Singh , Elizabeth Polgreen , Edward A. Lee , Sanjit A. Seshia

Recent studies have demonstrated that test-time compute scaling effectively improves the performance of small language models (sLMs). However, prior research has mainly examined test-time compute scaling with an additional larger model as a…

Computation and Language · Computer Science 2025-04-08 Minki Kang , Jongwon Jeong , Jaewoong Cho

Automatic verification deals with the validation by means of computers of correctness certificates. The related tools, usually called proof assistants or interactive provers, provide an interactive environment for the creation of formal…

Logic in Computer Science · Computer Science 2017-01-16 Andrea Asperti

We develop a practical solution to the problem of automatic verification of the interface between device drivers and the OS. Our solution relies on a combination of improved driver architecture and verification tools. It supports drivers…

Operating Systems · Computer Science 2012-11-28 Sidney Amani , Peter Chubb , Alastair F. Donaldson , Alexander Legg , Leonid Ryzhyk , Yanjin Zhu

Artificial intelligence assisted mathematical proof has become a highly focused area nowadays. One key problem in this field is to generate formal mathematical proofs from natural language proofs. Due to historical reasons, the formal proof…

Programming Languages · Computer Science 2024-05-14 Lihan Xie , Zhicheng Hui , Qinxiang Cao

``Vibe coding'' -- the practice of developing software through iteratively conversing with a large language model (LLM) -- has exploded in popularity within the last year. However, developers report key limitations including the…

Software Engineering · Computer Science 2025-11-04 Jacqueline Mitchell , Yasser Shaaban

Formal verification provides the highest assurance of software correctness and security, but its application to large-scale, evolving systems remains a major challenge. While large language models (LLMs) have shown promise in automating…

Software Engineering · Computer Science 2026-05-06 Yuwei Liu , Xinyi Wan , Yanhao Wang , Minghua Wang , Lin Huang , Tao Wei

Abstraction-Carrying Code (ACC) has recently been proposed as a framework for proof-carrying code (PCC) in which the code supplier provides a program together with an abstraction (or abstract model of the program) whose validity entails…

Programming Languages · Computer Science 2007-05-23 Elvira Albert , Puri Arenas , German Puebla

[Context and motivation] When developing software, coordination between different organizational units is essential in order to develop a good quality product, on time and within budget. Particularly, the synchronization between…

Programs written in C/C++ often include inline assembly: a snippet of architecture-specific assembly code used to access low-level functionalities that are impossible or expensive to simulate in the source language. Although inline assembly…

Programming Languages · Computer Science 2024-09-04 Paulo Emílio de Vilhena , Ori Lahav , Viktor Vafeiadis , Azalea Raad

Foundational verification allows programmers to build software which has been empirically shown to have high levels of assurance in a variety of important domains. However, the cost of producing foundationally verified software remains…

Programming Languages · Computer Science 2020-06-01 Alex Sanchez-Stern , Yousef Alhessi , Lawrence Saul , Sorin Lerner

While recent progress in quantum hardware open the door for significant speedup in certain key areas, quantum algorithms are still hard to implement right, and the validation of such quantum programs is a challenge. Early attempts either…

Programming Languages · Computer Science 2022-02-04 Christophe Chareton , Sébastien Bardin , François Bobot , Valentin Perrelle , Benoit Valiron

Interactive program verification is characterized by iterations of unfinished proof attempts. To support the process of constructing a complete proof, many interactive program verification systems offer a proof scripting language as a…

Logic in Computer Science · Computer Science 2018-04-13 Bernhard Beckert , Sarah Grebing , and Alexander Weigl

Verifying the execution of a program is complicated and often limited by the inability to validate the code's correctness. It is a crucial aspect of scientific research, where it is needed to ensure the reproducibility and validity of…

Software Engineering · Computer Science 2025-02-12 Alex Wolf , Marco Edoardo Palma , Pasquale Salza , Harald C. Gall

Proponents of software verification have argued that simpler code is easier to verify: that is, that verification tools issue fewer false positives and require less human intervention when analyzing simpler code. We empirically validate…

Software Engineering · Computer Science 2023-11-01 Kobi Feldman , Martin Kellogg , Oscar Chaparro
‹ Prev 1 8 9 10 Next ›