Less is more in the fifties: encounters between logical minimalism and computer design during the fifties.

What is the actual effect of advances in mathematical logic from the 1920s and 1930s on the field of computing? A lot has been written and more has been said already of the supposed theoretical foundations of computing and its roots in the logical work of people like Church and Turing. While it is clear that there are important connections, both historically as well as epistemologically, between these developments, it has been shown before that this should not mean that there is a clear one-directional line going from theory into practice (nor conversely) and that the relation between logic, computing machinery and programming practices is a complicated one both historically (e.g. what is the significance of “Turing machines” for the development of the modern computer?) as well as philosophically (e.g. what connects computation with finite combinatory processes and how is this reflected in the control mechanisms for both types of “processes”?). This becomes even more significant in the light of the fragmented nature of the computing field today which seems to lack a more coherent foundational framework.

One specific historical aspect of this issue is investigated in the paper:

L. De Mol, M. Bullynck and E.G. Daylight, Less is more in the fifties: encounters between logical minimalism and computer design during the fifties, IEEE Annals of the History of Computing, vol. 40, issue 1, pp. 19-45, 2018, a version is available here: http://hal.univ-lille3.fr/hal-01345592v3/document

It studies how certain developments in computer design from the 1950s can be embedded into what are called minimalist traditions in mathematical logic and engineering. Both traditions could be termed logical minimalism, meaning the systematic use of (mathematical) logic in designing minimal systems and devices. These forms of logical minimalism were recast into a diversity of computing practices in the 40s and 50s. The logical tradition is part of the more general research programme into the foundations of mathematics and logic that was carried out in the beginning of the 20th century. The engineering tradition then emerged during the 1930s to design relay circuits and is part of a more general trend of using mathematical techniques in engineering. In the 1940s and 1950s, however, these traditions were redefined and appropriated when computer engineers, logicians and mathematicians started searching for 1the small(est) and/or simple(st) machines with an eye on engineering a small and relatively cheap digital computer. Of course, minimalism on one level does not imply overall simplicity, and nearly always, these logically small machines came with tradeoffs, mostly more involved and complex programming and a need for more memory for efficient operation. This paper studies the search for small machines, both physically and logically, and ties it to these older traditions of logical minimalism. Focus is on how the transition of symbolic machines into real computers integrates minimalist philosophies as parts of more complex computer design strategies. It also shows how the name of Alan S. Turing became affiliated with the idea that solving computational problems with machines do not require a series of computing machines of ever higher complexity but that a few operations suffice.

The logic of identity and copy for computational artefacts

What does it mean for two programs to be identical to each other and in what sense can one computational artefact be said to be a copy of another one? This is the fundamental question tackled in the following paper that is now on-line:

Nicola Angius and Giuseppe Primiero, The logic of identity and copy for computational artefacts, Journal of Logic and Computation, https://academic.oup.com/logcom/advance-article-abstract/doi/10.1093/logcom/exy012/4954042

The philosophical problem of identity has a long history which can be traced back to the work of people like Quine, Frege and Martin-Löf. In computing the problem of identity concerns the question when two programs are identical. The approach of this paper is to revisit the computational problem by (re-)connecting it to the more philosophical literature by studying in how far the different identity criteria from philosophy can be re-applied to the problem in the computational setting. The result is the determination and formal definitions using process algebras of several types of identity relations. The issues raised in this paper connect quite naturally to some other fundamental problems that came to the fore during the prelaunch roundtable of PROGRAMme at CNAM such as the questions of copyright; the relative difference between programs and algorithms and issues of simulation (see the report). Looking forward to more results in this direction!

An earlier version of the paper is available here.

Launch event – slides

The launch of the PROGRAMme project was an intense first meeting with some great discussions on a variety of topics. The slides of the talks on wednesday February 7 and thursday February 8 are now available here:

February 7, session of the HEPIC séminaire :

Cliff Jones, A brief history of formal methods
Samuel Goyet, Of Bits and Blocks : a historic and semiotic approach of web Application Programming Interface (APIs)

February 8, Workshop Models between structures and meanings of programs:
(Note that two talks were canceled due to circumstances)

Liesbeth De Mol, Introduction to the project and its members
Mark Priestley, Program structure and its graphical representation c. 1946
Tomas Petricek, The Inner Life of Programming Concepts. Also available here.
Edgar Daylight, Towards a History of Model-Modellee Conflations in Computer Science
Maël Pégny, Are machine learning algorithms programs?
Ray Turner, The Ways of Computational Abstraction

What is a computer program?

Welcome to the site of the ANR research project “What is a program? Historical and philosophical perspectives”. The aim of this project is to develop a coherent analysis and pluralistic understanding of “computer program” and its implications to theory and practice. On this site you can find all relevant information related to the project as well as other news, events and publications that are relevant to the project.

The site is currently under construction given that the project will start on February 1, 2018 but a pre-launch event is already planned on October 20, 2017.

More to follow soon…