Jan A Bergstra

Prof. Dr. Jan A Bergstra

Department of Computer Science, University of Amsterdam, Amsterdam, Noord-Holland, The Netherlands

Research Focus & Metrics

Academic Career Length

22Years (2005-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
23 March 2012 in Acta Informatica
Verified
Journal Article
Open access
PDF file
Jan A BergstraJan A Bergstra
Jan A Bergstra
CMC. A. Middelburg
C. A. Middelburg
Instruction sequence is a key concept in practice, but it has as yet not come prominently into the picture in theoretical circles. This paper concerns instruction sequences, the behaviours produced by them under execution, the interaction between these behaviours and components of the execution environment, and two issues relating to computability theory. Positioning Turing’s result regarding the undecidability of the halting problem as a result about programs rather than machines, and taking instruction sequences as programs, we analyse the autosolvability requirement that a program of a certain kind must solve the halting problem for all programs of that kind. We present novel results concerning this autosolvability requirement. The analysis is streamlined by using the notion of a functional unit, which is an abstract state-based model of a machine. In the case where the behaviours exhibited by a component of an execution environment can be viewed as the behaviours of a machine in its different states, the behaviours concerned are completely determined by a functional unit. The above-mentioned analysis involves functional units whose possible states represent the possible contents of the tapes of Turing machines with a particular tape alphabet. We also investigate functional units whose possible states are the natural numbers. This investigation yields a novel computability result, viz. the existence of a universal computable functional unit for natural numbers.

30 April 2020 in Transmathematica
Verified
Journal Article
Open access
PDF file
Jan A BergstraJan A Bergstra
Jan A Bergstra
Datatypes and abstract datatypes are positioned as results of importing aspects of universal algebra into computer science and software engineering. It is suggested that 50 years later, by way of a transfer in the opposite direction, outcomes of research on datatypes can be made available via elementary arithmetic. This idea leads to the notions of an arithmetical signature, an arithmetical datatype and an arithmetical abstract datatype and to algebraic specifications for such entities. The area of fractions in elementary arithmetic is chosen as an application area and while taking a common meadow of rational numbers as the basis, an arithmetical datatype equipped with an absorptive element. The use of datatypes and signatures makes syntax available for giving precise definitions in cases where lack of precision is common place. Fracterm is coined as the name for a fraction when primarily understood as a syntactic entity. The main contribution of the paper is to provide a detailed terminology of fracterms. Subsequently the fraction definition problem is stated, a distinction between explicit definitions of fractions and implicit definitions of fractions is made, and an outline of a survey of both forms of definitions of the notion of a fraction is given.

9 August 2007 in Future Generation Computer Systems
Verified
Journal Article
Closed access
Jan A BergstraJan A Bergstra
Jan A Bergstra
CMC.A. Middelburg
C.A. Middelburg

7 May 2007 in Theory of Computing Systems
Verified
Journal Article
Open access
PDF file
Jan A BergstraJan A Bergstra
Jan A Bergstra
CMC.A. Middelburg
C.A. Middelburg
In a previous paper, we developed an algebraic theory of threads and multi-threads based on strategic interleaving. This theory includes a number of plausible interleaving strategies on thread vectors. The strategic interleaving of a thread vector constitutes a multi-thread. Several multi-threads may exist concurrently on a single host in a network, several host behaviors may exist concurrently in a single network on the internet, etc. Strategic interleaving is also present at these other levels. In the current paper, we extend the theory developed so far with features to cover multi-level strategic interleaving.

4 August 2009 in Acta Informatica
Verified
Journal Article
Closed access
PDF file
Jan A BergstraJan A Bergstra
Jan A Bergstra
CMC. A. Middelburg
C. A. Middelburg

11 November 2010 in Theory of Computing Systems
Verified
Journal Article
Open access
PDF file
Jan A BergstraJan A Bergstra
Jan A Bergstra
CMC. A. Middelburg
C. A. Middelburg
We perceive programs as single-pass instruction sequences. A single-pass instruction sequence under execution is considered to produce a behaviour to be controlled by some execution environment. Threads as considered in basic thread algebra model such behaviours. We show that all regular threads, i.e. threads that can only be in a finite number of states, can be produced by single-pass instruction sequences without jump instructions if use can be made of Boolean registers. We also show that, in the case where goto instructions are used instead of jump instructions, a bound to the number of labels restricts the expressiveness.