中文
相关论文

相关论文: Different Maps for Different Uses. A Program Trans…

200 篇论文

This paper describes a deductive approach to synthesizing imperative programs with pointers from declarative specifications expressed in Separation Logic. Our synthesis algorithm takes as input a pair of assertions---a pre- and a…

编程语言 · 计算机科学 2018-11-12 Nadia Polikarpova , Ilya Sergey

Answer Set Programming (ASP) is an important logic programming paradigm within the field of Knowledge Representation and Reasoning. As a concise, human-readable, declarative language, ASP is an excellent tool for developing trustworthy…

计算机科学中的逻辑 · 计算机科学 2025-02-14 Zachary Hansen

In answer set programming (ASP), a problem at hand is solved by (i) writing a logic program whose answer sets correspond to the solutions of the problem, and by (ii) computing the answer sets of the program using an answer set solver as a…

人工智能 · 计算机科学 2007-05-23 Tomi Janhunen , Emilia Oikarinen

The demand for formal verification tools for neural networks has increased as neural networks have been deployed in a growing number of safety-critical applications. Matrices are a data structure essential to formalising neural networks.…

计算机科学中的逻辑 · 计算机科学 2022-07-18 Remi Desmartin , Grant Passmore , Ekaterina Komendantskaya

Software for mixed-integer linear programming can return incorrect results for a number of reasons, one being the use of inexact floating-point arithmetic. Even solvers that employ exact arithmetic may suffer from programming or algorithmic…

最优化与控制 · 数学 2019-01-03 Kevin K. H. Cheung , Ambros Gleixner , Daniel E. Steffy

We present evidence that language models (LMs) of code can learn to represent the formal semantics of programs, despite being trained only to perform next-token prediction. Specifically, we train a Transformer model on a synthetic corpus of…

机器学习 · 计算机科学 2024-08-06 Charles Jin , Martin Rinard

Both automatic program verification and program transformation are based on program analysis. In the past decade a number of approaches using various automatic general-purpose program transformation techniques (partial deduction,…

软件工程 · 计算机科学 2015-12-15 Alexei P. Lisitsa , Andrei P. Nemytykh

We present an automated compositional program verification technique for safety properties based on conditional inductive invariants. For a given program part (e.g., a single loop) and a postcondition $\varphi$, we show how to, using a…

计算机科学中的逻辑 · 计算机科学 2015-08-05 Marc Brockschmidt , Daniel Larraz , Albert Oliveras , Enric Rodriguez-Carbonell , Albert Rubio

In mutation testing the question whether a mutant is equivalent to its program is important in order to compute the correct mutation score. Unfortunately, answering this question is not always possible and can hardly be obtained just by…

软件工程 · 计算机科学 2012-07-11 Simona Nica , Franz Wotawa

Large pre-trained language models perform remarkably well on tasks that can be done "in one pass", such as generating realistic text or synthesizing computer programs. However, they struggle with tasks that require unbounded multi-step…

Bit-vector formulas arising from hardware verification problems often contain word-level arithmetic operations. Empirical evidence shows that state-of-the-art SMT solvers are not very efficient at reasoning about bit-vector formulas with…

计算机科学中的逻辑 · 计算机科学 2016-12-13 Supratik Chakraborty , Ashutosh Gupta , Rahul Jain

Loop invariants are fundamental to reasoning about programs with loops. They establish properties about a given loop's behavior. When they additionally are inductive, they become useful for the task of formal verification that seeks to…

This paper addresses the problem of verifying equivalence between a pair of programs that operate over databases with different schemas. This problem is particularly important in the context of web applications, which typically undergo…

计算机科学中的逻辑 · 计算机科学 2017-10-24 Yuepeng Wang , Isil Dillig , Shuvendu K. Lahiri , William R. Cook

We classify programming languages according to evaluation order: each language fixes one evaluation order as the default, making it transparent to program in that evaluation order, and troublesome to program in the other. This paper…

编程语言 · 计算机科学 2020-08-25 Jana Dunfield

Applicative bisimulation is a coinductive technique to check program equivalence in higher-order functional languages. It is known to be sound, and sometimes complete, with respect to context equivalence. In this paper we show that…

计算机科学中的逻辑 · 计算机科学 2015-06-23 Ugo Dal Lago , Alessandro Rioli

Semantic understanding of programs has attracted great attention in the community. Inspired by recent successes of large language models (LLMs) in natural language understanding, tremendous progress has been made by treating programming…

机器学习 · 计算机科学 2023-06-13 Jianyu Zhao , Yuyang Rong , Yiwen Guo , Yifeng He , Hao Chen

Relational verification is a technique that aims at proving properties that relate two different program fragments, or two different program runs. It has been shown that constrained Horn clauses (CHCs) can effectively be used for relational…

计算机科学中的逻辑 · 计算机科学 2017-09-15 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

The theory of finite term algebras provides a natural framework to describe the semantics of functional languages. The ability to efficiently reason about term algebras is essential to automate program analysis and verification for…

计算机科学中的逻辑 · 计算机科学 2016-11-10 Laura Kovacs , Simon Robillard , Andrei Voronkov

This paper presents a program analysis method that generates program summaries involving polynomial arithmetic. Our approach builds on prior techniques that use solvable polynomial maps for summarizing loops. These techniques are able to…

编程语言 · 计算机科学 2023-12-08 John Cyphert , Zachary Kincaid

We present Low*, a language for low-level programming and verification, and its application to high-assurance optimized cryptographic libraries. Low* is a shallow embedding of a small, sequential, well-behaved subset of C in F*, a…