82:1 January 1999
Philosophy of Computer Science 

Advisory Editor: Giuseppe Longo, Paris

Computer science largely originated from mathematical logic in the thirties and forties, and it has to some degree retained - through logic - its links to philosophy. In the last few decades, however, computer science has become a firmly established discipline in its own right. New tasks of language- and system-design have meant that relevant areas of logic have been revitalized: computability and proof theory, especially, but also category theory, universal algebra and other areas of mathematics, as tools for semantics. Concrete problems have raised new abstract challenges which go well beyond the logical frame at the basis of early computer science. Thus the prevailing sequential view of logical reasoning seems no longer to be the core paradigm for computing, and parallelism and concurrency, distributed or asynchronous systems are affecting our understanding of both logic and computation.

It is time, then, to deepen our philosophical reflections on the methods, tools and aims of computer science as this has grown out of a blend of mathematical developments and engineering tasks. Logic in computer science has played the double role of foundation and tool. How has this modified our views about the foundations of knowledge and deduction or our understanding of constructive systems? Beyond logic, is mathematics or its philosophy affected?

Table of Contents:

Timothy R. Colburn 

Software, Abstraction, and Ontology 

  

J. H. Fetzer 

The Role of Models in Computer Science


V. Schachter 

A Change in Paradigms of Computation: How about Concurrency?


Peter Wegner 

Observability and Empirical Computation


William J. Rapaport 

Implementation is Semantic Interpretation 


Oron Shagrir 

What is Computer Science About?


Wilfried Sieg and John Byrnes 

An Abstract Model for Parallel Computations: Gandy's Thesis


Graham White 

Simulation, Theory, and Cut Elimination