English
Related papers

Related papers: Proof Engineering with Predicate Transformer Seman…

200 papers

We formulate a framework for describing behaviour of effectful higher-order recursive programs. Examples of effects are implemented using effect operations, and include: execution cost, nondeterminism, global store and interaction with a…

Logic in Computer Science · Computer Science 2021-12-30 Niccolò Veltri , Niels F. W. Voorneveld

This paper introduces PROOFTOOL, the graphical user interface for the General Architecture for Proof Theory (GAPT) framework. Its features are described with a focus not only on the visualization but also on the analysis and transformation…

Logic in Computer Science · Computer Science 2013-07-09 Cvetan Dunchev , Alexander Leitsch , Tomer Libal , Martin Riener , Mikheil Rukhaia , Daniel Weller , Bruno Woltzenlogel-Paleo

Several abstract machines that operate on symbolic input alphabets have been proposed in the last decade, for example, symbolic automata or lattice automata. Applications of these types of automata include software security analysis and…

Formal Languages and Automata Theory · Computer Science 2019-10-18 Andreas Stahlbauer

We adapt the technique of type-generic programming via descriptions pointing into a universe to the domain of typed languages with binders and variables, implementing a notion of "syntax-generic programming" in a dependently typed…

Programming Languages · Computer Science 2018-04-03 Gergő Érdi

We address a declarative construction of abstract syntax trees with Parsing Expression Grammars. AST operators (constructor, connector, and tagging) are newly defined to specify flexible AST constructions. A new challenge coming with PEGs…

Programming Languages · Computer Science 2015-07-31 Kimio Kuramitsu

In dependently typed programming, proofs of basic, structural properties can be embedded implicitly into programs and do not need to be written explicitly. Besides saving the effort of writing separate proofs, a most distinguishing and…

Programming Languages · Computer Science 2021-03-09 Hsiang-Shang Ko

Proof-of-concept exploits help demonstrate software vulnerability beyond doubt and communicate attacks to non-experts. But exploits can be configuration-specific, for example when in Security APIs, where keys are set up specifically for the…

Cryptography and Security · Computer Science 2024-10-03 Robert Künnemann , Julian Biehl

Artificial intelligence (AI) has revolutionized software engineering (SE) by enhancing software development efficiency. The advent of pre-trained models (PTMs) leveraging transfer learning has significantly advanced AI for SE. However,…

Software Engineering · Computer Science 2024-04-25 Zixiang Xian , Rubing Huang , Dave Towey , Chunrong Fang , Zhenyu Chen

Despite the vast body of research literature proposing algorithms with formal guarantees, the amount of verifiable code in today's systems remains minimal. This discrepancy stems from the inherent difficulty of verifying code, particularly…

Software Engineering · Computer Science 2025-01-10 Changjie Wang , Mariano Scazzariello , Marco Chiesa

Datatype-generic programming increases program abstraction and reuse by making functions operate uniformly across different types. Many approaches to generic programming have been proposed over the years, most of them for Haskell, but…

Programming Languages · Computer Science 2012-02-15 José Pedro Magalhães , Andres Löh

Interactive proof assistants are computer programs carefully constructed to check a human-designed proof of a mathematical claim with high confidence in the implementation. However, this only validates truth of a formal claim, which may…

Programming Languages · Computer Science 2023-10-09 Colin S. Gordon , Sergey Matskevich

Performing fact verification based on structured data is important for many real-life applications and is a challenging research problem, particularly when it involves both symbolic operations and informal inference based on language…

Artificial Intelligence · Computer Science 2021-09-14 Xiaoyu Yang , Feng Nie , Yufei Feng , Quan Liu , Zhigang Chen , Xiaodan Zhu

We show that verification of object-oriented programs by means of the assertional method can be achieved in a simple way by exploiting a syntax-directed transformation from object-oriented programs to recursive programs. This transformation…

Logic in Computer Science · Computer Science 2011-11-09 Krzysztof R. Apt , Frank S. de Boer , Ernst-Ruediger Olderog , Stijn de Gouw

We introduce FRAT, a new proof format for unsatisfiable SAT problems, and its associated toolchain. Compared to DRAT, the FRAT format allows solvers to include more information in proofs to reduce the computational cost of subsequent…

Logic in Computer Science · Computer Science 2023-06-22 Seulkee Baek , Mario Carneiro , Marijn J. H. Heule

Large Language Models (LLMs) are increasingly used to automatically generate optimized CUDA kernels, substantially improving developer productivity. However, despite rapid generation, these kernels often contain subtle correctness bugs and…

Software Engineering · Computer Science 2026-03-19 Bodhisatwa Chatterjee , Drew Zagieboylo , Sana Damani , Siva Hari , Christos Kozyrakis

Among the most general structures extending the framework by Dung are the abstract dialectical frameworks (ADFs). They come equipped with various types of semantics, with the most prominent - the labeling-based one - analyzed in the context…

Artificial Intelligence · Computer Science 2016-07-05 Sylwia Polberg

This paper proposes a general semantic framework for verifying programs with arbitrary monadic side-effects using Dijkstra monads, which we define as monad-like structures indexed by a specification monad. We prove that any monad morphism…

Programming Languages · Computer Science 2019-06-27 Kenji Maillard , Danel Ahman , Robert Atkey , Guido Martinez , Catalin Hritcu , Exequiel Rivas , Éric Tanter

Almost every programming language's syntax includes a notion of binder and corresponding bound occurrences, along with the accompanying notions of $\alpha$-equivalence, capture-avoiding substitution, typing contexts, runtime environments,…

Programming Languages · Computer Science 2021-10-13 Guillaume Allais , Robert Atkey , James Chapman , Conor McBride , James McKinna

Automated program synthesis lowers the cost of producing implementations but introduces a harder governance problem: determining which generated artifacts are admissible. Natural-language specifications are ambiguous, and example-based…

Software Engineering · Computer Science 2026-05-20 Jun He , Deying Yu

While hardware generators have drastically improved design productivity, they have introduced new challenges for the task of verification. To effectively cover the functionality of a sophisticated generator, verification engineers require…