English
Related papers

Related papers: Checking Observational Purity of Procedures

200 papers

Program obfuscation is a widely employed approach for software intellectual property protection. However, general obfuscation methods (e.g., lexical obfuscation, control obfuscation) implemented in mainstream obfuscation tools are heuristic…

Cryptography and Security · Computer Science 2017-10-04 Hui Xu , Yangfan Zhou , Yu Kang , Michael R. Lyu

Testing probabilistic programs is non-trivial due to their stochastic nature. Given an input, the program may produce different outcomes depending on the underlying stochastic choices in the program. This means testing the expected outcomes…

Software Engineering · Computer Science 2025-09-03 Katrine Christensen , Mahsa Varshosaz , Raúl Pardo

Ensuring that autonomous space robot control software behaves as it should is crucial, particularly as software failure in space often equates to mission failure and could potentially endanger nearby astronauts and costly equipment. To…

We report on work in progress on automatic procedures for proving properties of programs written in higher-order functional languages. Our approach encodes higher-order programs directly as first-order SMT problems over Horn clauses. It is…

Logic in Computer Science · Computer Science 2013-06-25 Nikolaj Bjorner , Ken McMillan , Andrey Rybalchenko

This tutorial provides an introduction to CPAchecker for users. CPAchecker is a flexible and configurable framework for software verification and testing. The framework provides many abstract domains, such as BDDs, explicit values,…

Test or prove? These two approaches to software verification have long been presented as opposites. One is dynamic, the other static: a test executes the program, a proof only analyzes the program text. A different perspective is emerging,…

Software Engineering · Computer Science 2026-02-10 Li Huang , Bertrand Meyer , Manuel Oriol

A Boolean function is called read-once over a basis B if it can be expressed by a formula over B where no variable appears more than once. A checking test for a read-once function f over B depending on all its variables is a set of input…

Discrete Mathematics · Computer Science 2012-05-29 Dmitry V. Chistikov

Auto-active verifiers provide a level of automation intermediate between fully automatic and interactive: users supply code with annotations as input while benefiting from a high level of automation in the back-end. This paper presents…

Logic in Computer Science · Computer Science 2015-09-01 Julian Tschannen , Carlo A. Furia , Martin Nordio , Nadia Polikarpova

We describe a recently developed algebraic framework for proving first-order statements about linear operators by computations with noncommutative polynomials. Furthermore, we present our new SageMath package operator_gb, which offers…

Symbolic Computation · Computer Science 2023-06-28 Klara Bernauer , Clemens Hofstadler , Georg Regensburger

Symbolic computation is an important approach in automated program analysis. Most state-of-the-art tools perform symbolic computation as interpreters and directly maintain symbolic data. In this paper, we show that it is feasible, and in…

Programming Languages · Computer Science 2019-07-10 Henrich Lauko , Petr Ročkai , Jiří Barnat

Relational verification encompasses research directions such as reasoning about data abstraction, reasoning about security and privacy, secure compilation, and functional specificaton of tensor programs, among others. Several relational…

Logic in Computer Science · Computer Science 2025-09-08 Ramana Nagasamudram , Anindya Banerjee , David A. Naumann

Advanced embedded algorithms are growing in complexity and they are an essential contributor to the growth of autonomy in many areas. However, the promise held by these algorithms cannot be kept without proper attention to the considerably…

Computation and Language · Computer Science 2020-05-27 Raphaël Cohen , Eric Féron , Pierre-Loïc Garoche

Verifiers that can prove programs correct against their full functional specification require, for programs with loops, additional annotations in the form of loop invariants---propeties that hold for every iteration of a loop. We show that…

Software Engineering · Computer Science 2016-02-09 Juan P. Galeotti , Carlo A. Furia , Eva May , Gordon Fraser , Andreas Zeller

Scalable and automatic formal verification for concurrent systems is always demanding. In this paper, we propose a verification framework to support automated compositional reasoning for concurrent programs with shared variables. Our…

Formal Languages and Automata Theory · Computer Science 2018-03-28 Fuyuan Zhang , Yongwang Zhao , David Sanan , Yang Liu , Alwen Tiu , Shang-Wei Lin , Jun Sun

Traditional approaches for validating molecular simulations rely on making software open source and transparent, incorporating unit testing, and generally employing human oversight. We propose an approach that eliminates software errors…

Statistical Mechanics · Physics 2025-08-19 Ejike D. Ugwuanyi , Colin T. Jones , John Velkey , Tyler R. Josephson

Verification of temporal logic properties plays a crucial role in proving the desired behaviors of continuous systems. In this paper, we propose an interval method that verifies the properties described by a bounded signal temporal logic.…

Logic in Computer Science · Computer Science 2016-02-09 Daisuke Ishii , Naoki Yonezaki , Alexandre Goldsztejn

On the one hand, ordered completion is a fundamental technique in equational theorem proving that is employed by automated tools. On the other hand, their complexity makes such tools inherently error prone. As a remedy to this situation we…

Logic in Computer Science · Computer Science 2018-05-28 Christian Sternagel , Sarah Winkler

Software model checking, as an undecidable problem, has three possible outcomes: (1) the program satisfies the specification, (2) the program does not satisfy the specification, and (3) the model checker fails. The third outcome usually…

Software Engineering · Computer Science 2015-03-19 Dirk Beyer , Thomas A. Henzinger , M. Erkan Keremoglu , Philipp Wendler

We consider statistical procedures for hypothesis testing of real valued functionals of matched pairs with missing values. In order to improve the accuracy of existing methods, we propose a novel multiplication combination procedure.…

Statistics Theory · Mathematics 2018-01-29 Lubna Amro , Frank Konietschke , Markus Pauly

Deductive verification is an effective method to ensure that a given system exposes the intended behavior. In spite of its proven usefulness and feasibility in selected projects, deductive verification is still not a mainstream technique.…

Software Engineering · Computer Science 2026-01-26 Lea Salome Brugger , Xavier Denis , Peter Müller