Types are fundamental for enforcing levels of abstraction in modern high-level programming languages and their lower-level representations. However, some type-related features suc...
We present a set of reduction rules for LTL model-checking of 1-safe Petri nets. Our reduction techniques are of two kinds: (1) Linear programming techniques which are based on wel...
Abstract. The layering that is present in many OO designs is not accounted for in current interpretations of invariants. We propose to make layers explicit in specifications and in...
Ronald Middelkoop, Cornelis Huizing, Ruurd Kuiper,...
Abstract. General refinement types allow types to be refined by predicates written in a general-purpose programming language, and can express function pre- and postconditions and d...
In object-oriented programming, reentrant method invocations and shared references make it difficult to achieve adequate encapsulation for sound modular reasoning. This tutorial p...