Reino Kurki-Suonio

Reino Kurki-Suonio
Tampere University | UTA

About

70
Publications
2,962
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,725
Citations
Citations since 2016
0 Research Items
113 Citations
20162017201820192020202120220510152025
20162017201820192020202120220510152025
20162017201820192020202120220510152025
20162017201820192020202120220510152025
Introduction
Skills and Expertise

Publications

Publications (70)
Conference Paper
Full-text available
Following a session on university education, this panel discussed early Nordic visions and experiences on university computing education, contrasting them to today’s needs and the international development at that time. This report gives short papers by the panelists (their opening statements), and a brief summary (the chair’s interpretation) of th...
Chapter
In order to provide better alignment between conceptual requirements and aspect-oriented implementations, specification methods should enable the encapsulation of behavioral abstractions of systems. In this paper we argue that horizontal architectures, consisting of such behavioral abstractions, can provide better separation of concerns than conven...
Chapter
Full-text available
Chapter
Full-text available
Chapter
Full-text available
Chapter
Full-text available
Chapter
Full-text available
Chapter
Full-text available
Chapter
Full-text available
Article
Full-text available
In order to provide better alignment between conceptual requirements and aspect-oriented implementations, formal specification methods should enable the encapsulation of logical abstractions of systems. In this paper we argue that horizontal architectures, consisting of such logical abstrac- tions, can provide better separation of concerns over con...
Article
Action systems were first introduced as an execution model that made it possible to model distributed systems at a high level of abstraction and to refine these models into implementation descriptions. This paper describes how these initial ideas have developed into a formally based specification and design method for reactive systems, and discusse...
Conference Paper
Full-text available
Several Finnish universities established chairs in computer science/information processing in 196568. Rather than reflecting natural evolution within universities, external needs motivated this. The first professors came from computing practice but had also academic ambitions. This paper is a recollection on how the new discipline developed in an a...
Article
Tampere University of Technology Department of Information Technology Software Systems Laboratory Pruuden, Peeter:Inheritance from the standpoint of specification and modeling. Master of Science Thesis,71 pages September, 1997 Keywords: Specification, object-orientation, inheritance, concurrent systems, temporal properties. Specification and modeli...
Article
A practical theory for incremental specification of reactive systems is described, where reasoning on temporal properties is possible already at high levels of abstraction, and rigorous refinement towards implementation is supported. The paper discusses how the underlying logic, execution model, and refinement methods fit together, how logical laye...
Conference Paper
Full-text available
A closed-system specification models a system in the context of its assumed environment. A component is then a view on the total system, where unnecessary details of other components and the external environment have been abstracted away. Starting from a crude initial model, details of components can be introduced in separate component refinements,...
Article
Full-text available
Inspired by Peter Wegner's analysis of the paradigm shift from algorithms to interaction and of his conclusion that "proving correctness of interactive systems is not merely difficult but impossible," we outline some consequences that we see inevitable for the specification and design of interactive systems. The technical feasibility of the propose...
Article
Full-text available
First Page of the Article
Conference Paper
Recognizing the role of abstractions is essential in software development. Communication mechanisms, however often dictate how inter-process communication is addressed already at the level of specification. The authors show how abstract process cooperation can be refined into an implementable form, taking into account constraints imposed by practic...
Article
Full-text available
A practical theory for operational specification of reactive systems is described. Reasoning on temporal properties is made possible at high levels of abstraction, and rigorous refinement towards implementation is supported. The paper discusses how the underlying logic, execution model, and refinement methods fit together, and how object-orientatio...
Conference Paper
Encapsulating methods in objects requires design decisions that complicate specification and modeling of object systems. To allow modeling at a higher level of abstraction, we outline a rigorous theory for dealing with patterns of generalized object systems. Unlike "classical" object-oriented extensions of specification formalisms, the approach is...
Article
Interleaving semantics is shown to provide an appropriate basis also for the modeling of real-time properties. Real-time scheduling of interleaved actions is explored, and the crucial properties of such schedulings are analyzed. The motivation of the work is twofold: to make real-time modeling practical already at early stages of specification and...
Article
Full-text available
J.A. Stankovic (see ibid., vol. 21, no. 10, p. 10-19, 1988) analyzed some common misconceptions about real-time computing. His analysis addressed the very notion of real-time computing and touched upon the applicability of concepts that have proven useful in nonreal-time modeling of reactive systems, such as interleaving models, nondeterminism, and...
Article
Full-text available
The notion of joint actions provides a paradigm that allows the specification and design of distributed systems to focus on cooperative events rather than on the behavior of individual processes. For concurrency this introduces an abstraction that is independent of process structuring and of communication mechanisms. For the designer this means rep...
Conference Paper
Full-text available
Solutions to the RPC-Memory Specification Problem are developed incrementally, using an object-oriented modeling formalism with multi-object actions. Incrementality is achieved by superposition-based derivation steps that make effective use of multiple inheritance and specialization of inherited actions. Each stage models collective behaviors of ob...
Conference Paper
Real-time systems are usually reactive systems, i.e., systems that are in continual interaction with their environments. Non-real-time theories of reactive systems have already reached considerable maturity, even though there is no consensus about the relative merits of the competing approaches. In particular, several important concepts have evolve...
Article
The notion of joint actions provides a natural execution model for a specification language, when temporal logic of actions is used for formal reasoning. We extend this basis with scheduling, the role of which is to enforce liveness properties and to introduce real-time properties. This is done in a way that agrees with the partial-order view of co...
Article
The joint action approach to modeling of reactive systems is presented and augmented with real time. This leads to a stepwise design method where temporal logic of actions can be used for formal reasoning, superposition is the key mechanism for transformations, the advantages of closed-system modularity are utilized, logical properties are addresse...
Article
Full-text available
The paper considers the treatment of fairness assumptions which arenot equivalence-robust, a central issue in relatinginterleaving semantics topartial order semantics. A notion ofcompletion is introduced and studied, and two specific completions are considered:maximal completion, which is easier to implement (shown by a broadcast bus implementation...
Article
Full-text available
DisCo is a specification language for reactive systems, based on the execution model of joint actions. Its main constructs for safety specification are described in this paper in terms of temporal logic of actions. The principles of such a translation are relatively straightforward, and DisCo can therefore be thought of as a language for constructi...
Conference Paper
Full-text available
We describe adding of metric real time to joint actions, and to the Disco specifcation language and toot that are based on them. No new concepts or constructs are needed: time is represented by variables in objects, and action durations are given by action parameters. Thus, we can reason about real-time properties in the same way as about other pro...
Article
Joint actions are introduced as a language basis for operational specification of reactive systems. Joint action systems are closed systems with no communication primitives. Their nondeterministic execution model is based on multi-party actions without an explicit control flow, and they are amenable for stepwise derivation by superposition. The app...
Conference Paper
Explicit clocks provide a well-known possibility to introduce time into non-real-time theories of reactive systems. This technique is applied here to an approach where distributed systems are modeled with temporal logic of actions as the formal basis, and fairness as the basic force that makes events take place. The focus of the paper is on the for...
Conference Paper
The notion of joint actions provides a natural execution model for a specification language, when temporal logic of actions is used for formal reasoning. The authors extend this basis with scheduling, the role of which is to enforce liveness properties and to introduce real-time properties. This is done in a way that agrees with the partial-order v...
Conference Paper
Full-text available
The potential of the action-oriented paradigm has been explored in the development of a specification language, DisCo, which can be characterized as both action-oriented and object-oriented. Its possibilities are introduced by contrasting them to the more familiar process-oriented approaches. Its execution model is state-based and leads to direct a...
Conference Paper
An overview of the refinement calculus and of the action system paradigm for constructing parallel and reactive systems is given. Superposition is studied in detail, as an example of an important method for refinement of reactive programs. In connection with superposition, fairness of action system execution is considered, and a proof rule for pres...
Conference Paper
A novel approach to the operational specification of concurrent systems that leads to an object-oriented specification language is presented. In contrast to object-oriented programming languages, objects are structured as hierarchical state-transition systems, methods of individual objects are replaced by roles in cooperative multiobject actions wh...
Article
On current trends in programming languages, the paper concentrates on the need to support formal specification and derivation of software, mainly in the context of reactive systems that are in continual interaction with their environments. The non-programming facilities of operational specifications are briefly analyzed, and their inclusion in desi...
Article
Full-text available
Action systems provide a method to program distributed systems that emphasizes the overall behavior of the system. System behavior is described in terms of the possible interactions (actions) that the processes can engage in, rather than in terms of the sequential code that the processes execute. The actions provide a symmetric communication mechan...
Article
The notion of joint actions provides a framework in which the granularity of atomic actions can be refined in the design of concurrent systems. An example of a telephone exchange is elaborated to demonstrate the feasibility of this approach for reactive systems and to illustrate transformations that are justifiable in such a process. Particular pro...
Conference Paper
Full-text available
Computations in distributed systems can be described in terms of actions in which one or more processes synchronize by common handshakes. A general formulation for such action systems is given, together with two interleaved execution models: a serial model that allows simple temporal reasoning, and a concurrent model that reflects a distributed exe...
Article
Full-text available
A concurrent system is usually understood as a collection of processes that interact through some communication mechanisms. The active components of such a system are the processes; their interaction is described in terms of messages and operations on shared memory. The principal process communication mechanism of Ada, the rendezvous, is a high-lev...
Conference Paper
Explicit use of knowledge expressions in the design of distributed algorithms is explored. A non-trivial case study is carried through, illustrating the facilities that a design language could have for setting and deleting the knowledge that the processes possess about the global state and about the knowledge of other processes. No implicit capabil...
Conference Paper
Full-text available
The behavior of a net of interconnected, communicating processes is described in terms of the joint actions in which the processes can participate. A distinction is made between centralized and decentralized action systems. In the former, a central agent with complete information about the state of the system controls the execution of the actions;...
Article
The paper describes the basic ideas in extending a machine-oriented microprogramming language into a system implementation language through data and control abstraction. The approach allows an extremely primitive base language to be bootstrapped to a higher level by a type definition mechanism where the operations of the types may be microprogramme...
Conference Paper
Different views on nondeterminism and their effect on correctness proofs are investigated. These include allowing or disallowing dead ends and/or nontermination. A simple model of transition systems is used for this treatment, and a generalization of intermittent assertions is introduced which allows referencing the program path. Parallelism is con...
Article
Summary An algorithm is presented for computing the transitive closure of an arbitrary relation which is based upon Tarjan's algorithm [7] for finding the strongly connected components of a directed graph. A new formulation, justifying a somewhat simplified statement of the latter, characterises weaker restrictions on the form of the graph traversa...
Article
A unified approach is presented to deal with automata having different kinds of peripheral devices. This approach is applied to pushdown automata and Turing machines, leading to elementary proofs of several well-known theorems concerning transductions, relationship between pushdown automata and context-free languages, a as well as homomorphic chara...
Article
Full-text available
Multi-process handshaking is a generalization of ordinary handshake communication between two processes. It allows an arbitrary number of processes to be synchronized in a common handshake, for the purpose of carrying out a joint action, consisting of a sequential statement that is executed in the combined state space of the processes participating...
Chapter
Starting from an analysis of the components that an applicable theory of programs needs, the fundamentals of object-oriented specification of collective behaviors are considered. It is shown that incremental derivation of operational models can be supported by a design methodology with a firm theoretical foundation, and that formal reasoning on beh...
Article
Properties of context-free languages and grammars permitting deterministic top-down recognition with bounded lookahead are discussed. In particular, it is shown that for eachk>1 there are such languages requiring a lookahead of at leastk characters.

Network

Cited By

Projects

Project (1)