English
Related papers

Related papers: Verifying Catamorphism-Based Contracts using Const…

200 papers

Contracts and contract monitoring are a powerful mechanism for specifying properties and guaranteeing them at run time. However, run time monitoring of contracts imposes a significant overhead. The execution time is impacted by the…

Programming Languages · Computer Science 2017-03-31 Matthias Keil , Peter Thiemann

Software verification is a complex problem, and verification tools need significant tuning to achieve high performance. Due to this, many verifiers choose to specialize on reachability properties, or invest the time to implement known…

Programming Languages · Computer Science 2025-01-28 Dirk Beyer , Marek Jankola , Marian Lingsch-Rosenfeld , Tian Xia , Xiyue Zheng

We consider the problem of verification modulo tested library contracts as a step towards automating the verification of client programs that use complex libraries. We formulate this problem as the synthesis of modular contracts for the…

Programming Languages · Computer Science 2026-05-11 Abhishek Uppar , Omar Muhammad , Sumanth Prabhu , Deepak D'Souza , Madhusudan P , Adithya Murali

We introduce a transformation system for concurrent constraint programming (CCP). We define suitable applicability conditions for the transformations which guarantee that the input/output CCP semantics is preserved also when distinguishing…

Programming Languages · Computer Science 2007-05-23 Sandro Etalle , Maurizio Gabbrielli , Maria Chiara Meo

Confluence of a nondeterministic program ensures a functional input-output relation, freeing the programmer from considering the actual scheduling strategy, and allowing optimized and perhaps parallel implementations. The more general…

Programming Languages · Computer Science 2018-09-14 Henning Christiansen , Maja Kirkeby

Graph transformation systems (GTS) and constraint handling rules (CHR) are non-deterministic rule-based state transition systems. CHR is well-known for its powerful confluence and program equivalence analyses, for which we provide the basis…

Logic in Computer Science · Computer Science 2010-06-16 Frank Raiser , Thom Frühwirth

We present Hindley-Milner-Cousots (HMC), an algorithm that allows any interprocedural analysis for first-order imperative programs to be used to verify safety properties of typed higher-order functional programs. HMC works as follows.…

Programming Languages · Computer Science 2011-01-04 Ranjit Jhala , Rupak Majumdar , Andrey Rybalchenko

The constraint satisfaction problem (CSP) involves deciding, given a set of variables and a set of constraints on the variables, whether or not there is an assignment to the variables satisfying all of the constraints. One formulation of…

Computational Complexity · Computer Science 2017-01-09 Hubie Chen , Benoit Larose

We investigate representations of imperative programs as constrained Horn clauses. Starting from operational semantics transition rules, we proceed by writing interpreters as constrained Horn clause programs directly encoding the rules. We…

Programming Languages · Computer Science 2020-08-10 John P. Gallagher , Manuel Hermenegildo , Bishoksan Kafle , Maximiliano Klemen , Pedro López García , José Morales

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

Modular deductive verification is a powerful technique capable to show that each function in a program satisfies its contract. However, function contracts do not provide a global view of which high-level (e.g. security-related properties of…

Software Engineering · Computer Science 2019-02-26 Virgile Robles , Nikolai Kosmatov , Virgile Prevosto , Louis Rilling , Pascale Le Gall

Metamorphic Testing (MT) is a testing technique that can effectively alleviate the oracle problem. MT uses Metamorphic Relations (MRs) to determine if a test case passes or fails. MRs specify how the outputs should vary in response to…

Software Engineering · Computer Science 2023-05-19 Alejandra Duque-Torres , Dietmar Pfahl , Claus Klammer , Stefan Fischer

Previous results on proving confluence for Constraint Handling Rules are extended in two ways in order to allow a larger and more realistic class of CHR programs to be considered confluent. Firstly, we introduce the relaxed notion of…

Logic in Computer Science · Computer Science 2016-11-22 Henning Christiansen , Maja H. Kirkeby

We study various novel complexity measures for two-sided matching mechanisms, applied to the two canonical strategyproof matching mechanisms, Deferred Acceptance (DA) and Top Trading Cycles (TTC). Our metrics are designed to capture the…

Computer Science and Game Theory · Computer Science 2024-04-02 Yannai A. Gonczarowski , Clayton Thomas

Developing an efficient non-linear Horn clause solver is a challenging task since the solver has to reason about the tree structures rather than the linear ones as in a linear solver. In this paper we propose an incremental approach to…

Logic in Computer Science · Computer Science 2015-11-23 Bishoksan Kafle

Dual Horn clauses mirror key properties of Horn clauses. This paper explores the ``other side of the looking glass'' to reveal some expected and unexpected symmetries and their practical uses. We revisit Dual Horn clauses as enablers of a…

Computation and Language · Computer Science 2024-07-31 Paul Tarau

We present a technique for the automated verification of abstract models of multithreaded programs providing fresh name generation, name mobility, and unbounded control. As high level specification language we adopt here an extension of…

Computation and Language · Computer Science 2007-05-23 Giorgio Delzanno

Computer programs may go wrong due to exceptional behaviors, out-of-bound array accesses, or simply coding errors. Thus, they cannot be blindly trusted. Scientific computing programs make no exception in that respect, and even bring…

Behavioral software contracts are a widely used mechanism for governing the flow of values between components. However, run-time monitoring and enforcement of contracts imposes significant overhead and delays discovery of faulty components…

Programming Languages · Computer Science 2014-06-17 Phuc C. Nguyen , Sam Tobin-Hochstadt , David Van Horn

Automatic code transformation in which transformations are tuned for specific applications and contexts are difficult to achieve in an accessible manner. In this paper, we present an approach to build application specific code…

Programming Languages · Computer Science 2013-01-21 Matthew J. Sottile , Geoffrey C. Hulette
‹ Prev 1 3 4 5 6 7 10 Next ›