Information-Flow Interfaces

02/15/2020
by   Ezio Bartocci, et al.
0

Contract-based design is a promising methodology for taming the complexity of developing sophisticated systems. A formal contract distinguishes between assumptions, which are constraints that the designer of a component puts on the environments in which the component can be used safely, and guarantees, which are promises that the designer asks from the team that implements the component. A theory of formal contracts can be formalized as an interface theory, which supports the composition and refinement of both assumptions and guarantees. Although there is a rich landscape of contract-based design methods that address functional and extra-functional properties, we present the first interface theory that is designed for ensuring system-wide security properties, thus paving the way for a science of safety and security co-engineering. Our framework provides a refinement relation and a composition operation that support both incremental design and independent implementability. We develop our theory for both stateless and stateful interfaces. We illustrate the applicability of our framework with an example inspired from the automotive domain. Finally, we provide three plausible trace semantics to stateful information-flow interfaces and we show that only two correspond to temporal logics for specifying hyperproperties, while the third defines a new class of hyperproperties that lies between the other two classes.

READ FULL TEXT

page 31

page 32

page 33

research
05/18/2022

Realizability Checking of Contracts with Kind 2

We present a new feature of the open-source model checker Kind 2 which c...
research
06/26/2019

Structural Contracts – Contracts for Type Construction Dependent Types to Ensure Consistency of Extra-Functional Reasoning

Targeting to use contract-based design for the specification and refinem...
research
01/15/2021

An Abstract Contract Theory for Programs with Procedures

When developing complex software and systems, contracts provide a means ...
research
12/29/2017

Unifying Theories of Reactive Design Contracts

Design-by-contract is an important technique for model-based design in w...
research
05/26/2021

Hypercontracts

Contracts (or interface) theories have been proposed to formally support...
research
03/31/2023

Pacti: Scaling Assume-Guarantee Reasoning for System Analysis and Design

Contract-based design is a method to facilitate modular system design. W...
research
05/20/2020

A refinement checking based strategy for component-based systems evolution

We propose inheritance and refinement relations for a CSP-based componen...

Please sign up or login with your details

Forgot password? Click here to reset