Jan Tijmen Udding
University of Groningen
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Jan Tijmen Udding.
Science of Computer Programming | 1990
Wei Chen; Jan Tijmen Udding
Abstract We introduce proof rules for inverting a program. We derive an algorithm to compute the preorder and inorder traversals of a binary tree. Subsequently, we invert this algorithm to arrive at an algorithm to construct a tree from its preorder and inorder traversals. We prove this program correct using the proof rules for inversion rather than directly. Since a proper formulation of a provable invariant of this program appears to be quite awkward, this example reinforces the view that program inversion is a useful technique and more than fun.
mathematics of program construction | 1989
Wei Chen; Jan Tijmen Udding; T Tom Verhoeff
In this paper we sketch a general framework within which a study of networks of processes can be conducted. It is based upon the mathematical technique to abstract from irrelevant detail. We start out with a large class of objects and some operations upon them. Depending upon a correctness criterion to be imposed, some of these objects turn out to be equivalent. The resulting space of equivalence classes and operations upon them is, under certain conditions, the (fully) abstract space of interest for that particular correctness concern.
mathematics of program construction | 1989
Wei Chen; Jan Tijmen Udding
In this paper we lay a foundation for a calculus of data refinement. We introduce the concept of conditional data refinement which enables us to incorporate contextual information in a refinement step. We give a number of its properties and show in several examples how data refinement can be used in practice.
Proceedings of 1994 IEEE Symposium on Advanced Research in Asynchronous Circuits and Systems | 1994
Mark B. Josephs; Paul G. Lucassen; Jan Tijmen Udding; T Tom Verhoeff
Two recent developments in asynchronous circuit design are explored by means of a case study (polynomial division) in digital signal processing. The first development is a new formal method, the handshake algebra of M.B. Josephs, J.T. Udding and J.T. Yantchev (1993), that is suitable for specifying, deriving, and verifying circuits that follow a handshaking protocol. The second development is an architecture, counterflow pipelines, that R.F. Sproull (1994) has recently suggested, which is attractive to implement asynchronously.
international symposium on advanced research in asynchronous circuits and systems | 1999
Willem C. Mallon; Jan Tijmen Udding; T Tom Verhoeff
It is not always straightforward to implement a network that is robust enough to be functionally independent of communication delay. In order to specify and verify so called Delay Insensitive networks, numerous models and formalisms have been developed. In this paper we analyze one of the most expressive models. We show how based on rewrite rules we can compute, rather than invent parts of a network. We implemented these computations in a tool. We also show how healthiness, finite execution models and a distributive parallel composition cannot coexist.
international symposium on advanced research in asynchronous circuits and systems | 1998
Willem C. Mallon; Jan Tijmen Udding
Numerous formalisms exist to specify delay-insensitive computations and their implementations. It is not always straightforward to compare specifications in the different formalisms. One way of comparing specifications is transforming them to automata in which nodes are annotated with progress requirements. In this paper we present an algorithm that transforms DI-algebra recursive process expressions into finite automata. In doing so we develop an operational semantics for DI-algebra. The algorithm has been proven correct, and we highlight the most interesting aspects of that proof The algorithm has been implemented and turns out to be very valuable in the process of getting a specification right.
mathematics of program construction | 1995
Rix Groenboom; Chris Hendriks; Indra Polak; Jan Terlouw; Jan Tijmen Udding
We explore several ways to formalize the algebraic laws of CSP-like languages in HOL. The intent of the paper is to show how HOL can be tailored to acting as a proof assistant. The emphasis is therefore on the consequences of various choices to be made during the formalization for writing tactics. We end up with a proof assistant that allows a user to make steps of the granularity of an algebraic law. It is not the purpose of this paper to show in HOL that the algebraic laws of some CSP-like language are sound; the purpose is to show how HOL can be used to apply the algebraic laws and act as a rewrite system.
international symposium on advanced research in asynchronous circuits and systems | 1997
Paul G. Lucassen; Indra Polak; Jan Tijmen Udding
DI-algebra is a process algebra for delay-insensitive processes. Like in most process algebras, a normal form for finite expressions can be defined. Unlike most process algebras, however we show that we can also define a normal form for recursive expressions. This is done by first eliminating operators using the laws of the algebra and then minimizing cycles in a state graph.
CTIT technical reports series | 1988
Jan Tijmen Udding; T Tom Verhoeff
In this paper we lay a mathematical foundation for processes that communicate via directed communication channels. We start from a collection of primitive specifications. Particular correctness concerns partition this collection into equivalence classes, which can serve as abstract specifications. The theory is illustrated by taking as correctness concern absence of computation interference. In this case the abstract specification space can be identified with the space of delay-insensitive specifications.
CTIT technical reports series | 1988
Jan Tijmen Udding; T Tom Verhoeff
In Trace Theory the notion of a process is defined in terms of a set of finite-length traces over an alphabet. These processes are used as the semantics for a program notation. The program text for a recursive component naturally gives rise to an equation over trace sets. This paper takes two approaches at the analysis of that equation. The first approach is based on a partial order and it concentrates on the projection operator for processes. This yields a condition under which the greatest solution of that equation can be approximated by iteration. The second approach introduces a... Read complete abstract on page 2.