English
Related papers

Related papers: Manifest Contracts with Intersection Types

200 papers

Techniques for runtime verification often utilise specification languages that are (i) reasonably expressive, and (ii) relatively abstract (i.e. they operate on a level of abstraction that separates them from the system being monitored).…

Logic in Computer Science · Computer Science 2018-06-11 Joshua Heneage Dawes , Giles Reger

Basic proof-search tactics in logic and type theory can be seen as the root-first applications of rules in an appropriate sequent calculus, preferably without the redundancies generated by permutation of rules. This paper addresses the…

Logic in Computer Science · Computer Science 2015-07-01 Stéphane Jean Eric Lengrand , Roy Dyckhoff , James McKinna

The paper describes a framework for multi-function system testing. Multi-function system testing is considered as fusion (or revelation) of clique-like structures. The following sets are considered: (i) subsystems (system parts or units /…

Software Engineering · Computer Science 2015-03-19 Mark Sh. Levin

Objects and actors are communicating state machines, offering and consuming different services at different points in their lifecycle. Two complementary challenges arise when programming such systems. When objects interact, their state…

Programming Languages · Computer Science 2016-06-21 Roly Perera , Julien Lange , Simon J. Gay

Existing techniques of Design by Contract do not allow software developers to specify complete contracts in many cases. Incomplete contracts leave room for malicious implementations. This article complements Design by Contract with a simple…

Software Engineering · Computer Science 2016-02-15 Alexandr Naumchev , Bertrand Meyer

Modern cryptocurrency systems, such as Ethereum, permit complex financial transactions through scripts called smart contracts. These smart contracts are executed many, many times, always without real concurrency. First, all smart contracts…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-02-16 Thomas Dickerson , Paul Gazzillo , Maurice Herlihy , Eric Koskinen

The functional properties of a program are often specified by providing a contract for each of its functions. A contract of a function consists of a pair of formulas, called a precondition and a postcondition, which, respectively, should…

Logic in Computer Science · Computer Science 2022-11-23 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

In this position paper, we consider some foundational topics regarding smart contracts (such as terminology, automation, enforceability, and semantics) and define a smart contract as an automatable and enforceable agreement. We explore a…

Computers and Society · Computer Science 2017-03-16 Christopher D. Clack , Vikram A. Bakshi , Lee Braine

Contracts are complex documents featuring detailed formal structures, explicit and implicit dependencies and rich semantic content. Given these document properties, contract drafting and manual examination of contracts have proven to be…

Artificial Intelligence · Computer Science 2025-11-11 Moriya Dechtiar , Daniel Martin Katz , Mari Sundaresan , Sylvain Jaume , Hongming Wang

We propose a new method for computing the language intersection of two Time Petri nets (TPN); that is the sequence of labels in timed traces common to the execution of two TPN. Our approach is based on a new product construction between…

Logic in Computer Science · Computer Science 2019-08-07 Yannick Pencolé , Éric Lubat , Silvano Dal Zilio , Didier Le Botlan , Audine Subias

Session types have been proposed as a means of statically verifying implementations of communication protocols. Although prior work has been successful in verifying some classes of protocols, it does not cope well with parameterized,…

Programming Languages · Computer Science 2012-08-24 Minas Charalambides , Peter Dinges , Gul Agha

Bounded model checking (BMC) is vital for finding program property violations. For unsafe programs, BMC can quickly find an execution path from an initial state to the violated state that refutes a given safety property. However, BMC…

Software Engineering · Computer Science 2022-09-22 Mohannad Aldughaim , Kaled Alshmrany , Rafael Menezes , Lucas Cordeiro , Alexandru Stancu

We present a device for specifying and reasoning about syntax for datatypes, programming languages, and logic calculi. More precisely, we study a notion of "signature" for specifying syntactic constructions. In the spirit of Initial…

Logic in Computer Science · Computer Science 2023-06-22 Benedikt Ahrens , André Hirschowitz , Ambroise Lafont , Marco Maggesi

Deductive verification has become a mature paradigm for the verification of industrial software. Applying deductive verification, however, requires that every function in the code base is annotated with a function contract specifying its…

Logic in Computer Science · Computer Science 2025-01-22 Jesper Amilon , Dilian Gurov , Christian Lidström , Mattias Nyberg , Gustav Ung , Ola Wingbrant

In the combinatorial-action contract model (D\"utting et al., FOCS'21) a principal delegates the execution of a complex project to an agent, who can choose any subset from a given set of actions. Each set of actions incurs a cost to the…

Computer Science and Game Theory · Computer Science 2025-11-27 Paul Dütting , Michal Feldman , Yoav Gal-Tzur , Aviad Rubinstein

Transaction-level modeling with SystemC has been very successful in describing the behavior of embedded systems by providing high-level executable models, in which many of them have inherent probabilistic behaviors, e.g., random data and…

Software Engineering · Computer Science 2017-12-07 Van Chan Ngo , Axel Legay

Smart contracts are crucial elements of decentralized technologies, but they face significant obstacles to trustworthiness due to security bugs and trapdoors. To address the core issue, we propose a technology that enables programmers to…

Cryptography and Security · Computer Science 2023-04-19 Nikolaj Bjørner , Shuo Chen , Yang Chen , Zhongxin Guo , Peng Liu , Nanqing Luo

Intersection types are an essential tool in the analysis of operational and denotational properties of lambda-terms and functional programs. Among them, non-idempotent intersection types provide precise quantitative information about the…

Logic in Computer Science · Computer Science 2019-11-06 Thomas Ehrhard

These notes present some extensions of a formal method introduced in an earlier paper. The formal method is designed as a tool for program verification of numerical computation and forms the basis of the software package VPC. Included in…

Logic in Computer Science · Computer Science 2014-11-21 Garry Pantelis

Verification of higher-order probabilistic programs is a challenging problem. We present a verification method that supports several quantitative properties of higher-order probabilistic programs. Usually, extending verification methods to…

Logic in Computer Science · Computer Science 2024-07-04 Satoshi Kura , Hiroshi Unno