English
Related papers

Related papers: Behavioral subtyping through typed assertions

200 papers

Standard higher-order contract monitoring breaks tail recursion and leads to space leaks that can change a program's asymptotic complexity; space-efficiency restores tail recursion and bounds the amount of space used by contracts.…

Programming Languages · Computer Science 2017-06-07 Michael Greenberg

Context Oriented Programming (COP) concerns the ability of programs to adapt to changes in their running environment. A number of programming languages endowed with COP constructs and features have been developed. However, some foundational…

Programming Languages · Computer Science 2013-02-27 Pierpaolo Degano , Gian-Luigi Ferrari , Letterio Galletta , Gianluca Mezzetti

Designers of autonomous agents, whether in physical or virtual environments, need to express nondeterminisim, failure, and parallelism in behaviors, as well as accounting for synchronous coordination between agents. Behavior Trees are a…

Programming Languages · Computer Science 2018-03-28 Chris Martens , Eric Butler , Joseph C. Osborn

In the setting of session behaviours, we study an extension of the concept of compliance when a disciplined form of backtracking is present. After adding checkpoints to the syntax of session behaviours, we formalise the operational…

Logic in Computer Science · Computer Science 2014-08-27 Franco Barbanera , Mariangiola Dezani-Ciancaglini , Ugo de' Liguoro

A hierarchy of type universes is a rudimentary ingredient in the type theories of many proof assistants to prevent the logical inconsistency resulting from combining dependent functions and the type-in-type rule. In this work, we argue that…

Programming Languages · Computer Science 2024-04-09 Jonathan Chan , Stephanie Weirich

A hyperproperty relates executions of a program and is used to formalize security objectives such as confidentiality, non-interference, privacy, and anonymity. Formally, a hyperproperty is a collection of allowable sets of executions. A…

Logic in Computer Science · Computer Science 2023-01-30 Ali Bajwa , Minjian Zhang , Rohit Chadha , Mahesh Viswanathan

This paper addresses a problem found within the construction of Service Oriented Architecture: the adaptation of service protocols with respect to functional redundancy and heterogeneity of global communication patterns. We utilise the…

Programming Languages · Computer Science 2019-04-03 Assel Altayeva , Nobuko Yoshida

Host-acting agents promise a convenient interaction model in which users specify goals and the system determines how to realize them. We argue that this convenience introduces a distinct security problem: semantic under-specification in…

Cryptography and Security · Computer Science 2026-03-24 Di Lu , Yongzhi Liao , Xutong Mu , Lele Zheng , Ke Cheng , Xuewen Dong , Yulong Shen , Jianfeng Ma

When programming network functions, changes within a packet tend to have consequences---side effects which must be accounted for by network programmers or administrators via arbitrary logic and an innate understanding of dependencies.…

Networking and Internet Architecture · Computer Science 2019-07-02 Zeeshan Lakhani , Heather Miller

We propose a type-based analysis to infer the session protocols of channels in an ML-like concurrent functional language. Combining and extending well-known techniques, we develop a type-checking system that separates the underlying ML type…

Programming Languages · Computer Science 2016-04-14 Carlo Spaccasassi , Vasileios Koutavas

In the combinatorial action model of contract design, a principal delegates a complex project to an agent, incentivizing a subset of actions from a ground set of $n$ actions, via a linear contract. Computing the optimal contract is a…

Computer Science and Game Theory · Computer Science 2026-04-17 Elizabeth Baldwin , Paul Duetting , Michal Feldman , Maya Schlesinger

Multiparty Session Types (MPST) provide a type-theoretic foundation for specifying and verifying communication protocols in distributed systems. MPST rely on the notion of global type which specifies the global behaviour and local types,…

Formal Languages and Automata Theory · Computer Science 2025-12-08 Cinzia Di Giusto , Etienne Lozes , Pascal Urso

Design by Constract (DBC) has influenced the development of formal specification languages that allow the mix of specification and implementation code, like Eiffel, the Java Modeling Language (JML) and Spec#. Meanwhile algebraic…

Software Engineering · Computer Science 2012-08-10 Nikolaos Triantafyllou , Petros Stefaneas , Panayiotis Frangos

In the context of "session behaviors" for client/server systems, we propose a weakening of the compliance and sub-behaviour relations where the bias toward the client (whose "requests" must be satisfied) is pushed further with respect to…

Logic in Computer Science · Computer Science 2014-10-29 Franco Barbanera , Ugo de' Liguoro

We present an extension of System F with call-by-name exceptions. The type system is enriched with two syntactic constructs: a union type for programs whose execution may raise an exception at top level, and a corruption type for programs…

Programming Languages · Computer Science 2015-07-01 Sylvain Lebresne

Reasoning about actions and change (RAC) is essential to understand and interact with the ever-changing environment. Previous AI research has shown the importance of fundamental and indispensable knowledge of actions, i.e., preconditions…

Computation and Language · Computer Science 2022-11-28 Weinan He , Canming Huang , Zhanhao Xiao , Yongmei Liu

De Nicola and Hennessy's must-preorder is a contextual refinement which states that a server q refines a server p if all clients satisfied by p are also satisfied by q. Owing to the universal quantification over clients, this definition…

Logic in Computer Science · Computer Science 2025-01-23 Giovanni Bernardi , Ilaria Castellani , Paul Laforgue , Léo Stefanesco

Subtyping, also known as subtype polymorphism, is a concept extensively studied in programming language theory, delineating the substitutability relation among datatypes. This property ensures that programs designed for supertype objects…

Artificial Intelligence · Computer Science 2025-02-14 Đorđe Marković , Marc Denecker

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

One of the most attractive features of untyped languages is the flexibility in term creation and manipulation. However, with such power comes the responsibility of ensuring the correctness of these operations. A solution is adding run-time…

Programming Languages · Computer Science 2017-10-17 Nataliia Stulova , José F. Morales , Manuel V. Hermenegildo