In This Article Expand or collapse the "in this article" section Philosophy of Computer Science

  • Introduction
  • General Overviews
  • Textbooks
  • Anthologies
  • Research Monographs
  • Computability
  • Complexity
  • Algorithms
  • Ontology
  • Semantics of Programming Languages
  • Specification
  • Design
  • Computational Abstraction
  • Correctness of Programs
  • Verification
  • Physical Computation
  • Computational Explanation
  • Computer Ethics
  • Philosophy of Artificial Intelligence

Philosophy Philosophy of Computer Science
Raymond Turner
  • LAST REVIEWED: 13 December 2022
  • LAST MODIFIED: 29 May 2019
  • DOI: 10.1093/obo/9780195396577-0224


The subject matter of computer science encompasses a large number of different activities that range from abstract mathematical topics through core engineering practices and scientific investigations. Subsequently, the philosophy of computer science overlaps with the philosophies of mathematics, science, and technology, and the central philosophical concerns of these disciplines all have computational analogues. The ontological status of programs, the nature of computational abstraction, and the kind of knowledge delivered by correctness proofs are central instances. In addition, because of the focus of computer science on formal languages and their semantic interpretation, the philosophy of computer science draws in topics and inspiration from the philosophies of language and mind.

General Overviews

The majority of general overviews cover a broad range of applications and concerns connecting philosophy and computing. However, Turner and Angius 2017, Colburn 2000, and Brey and Søraker 2009 are more focused on computer science and jointly provide a balanced introduction to the subject. Floridi 1999 also includes much relevant material.

  • Brey, Philip, and Johnny H. Søraker. “Philosophy of Computing and Information Technology.” In Philosophy of Technology and Engineering Sciences. Edited by Antonie Meijers, 1341–1407. Amsterdam: Elsevier, 2009.

    DOI: 10.1016/B978-0-444-51667-1.50051-3

    This introduction addresses many of the same issues and questions. What kind of things are programs: are they concrete or abstract? What are the main methodologies used in programming and software development? How are they to be evaluated? Is computer science a science, a branch of mathematics, or an engineering discipline? How do the methodologies of computer science compare to the methods used in natural science or in other scientific fields?

  • Colburn, Timothy R. Philosophy and Computer Science. Armonk, NY: Sharpe, 2000.

    The first two parts are devoted to the philosophical concerns of artificial intelligence. The author explores the relationship between artificial intelligence, logic, and its connections with issues in the philosophy of mind. The final section is more narrowly focused on the philosophy of computer science, and, in particular, on the nature of computer science, the ontological status of programs, the role of abstraction in computer science, the methodology of computer science, and the nature of software correctness.

  • Floridi, Luciano. Philosophy and Computing. New York: Routledge, 1999.

    Provides a conceptual analysis of Turing machines and the importance of Turing for the development of computer science. The author introduces computers, programming languages, the internet. He explores databases and their connections with epistemology, and provide an insightful introduction to artificial intelligence via its philosophical implications.

  • Turner, Raymond, and Nicola Angius. “The Philosophy of Computer Science.” In The Stanford Encyclopedia of Philosophy. Edited by Edward N. Zalta. Stanford, CA: Stanford University, 2017.

    The Stanford Encyclopedia article introduces the central concerns of the subject: the ontology of programs, the correctness debate, physical computation, semantics of programming languages, specification, computational explanation and abstraction, methodological and ethical issues associated with programming and software development, and the nature of computer science as a discipline.

back to top

Users without a subscription are not able to see the full content on this page. Please subscribe or login.

How to Subscribe

Oxford Bibliographies Online is available by subscription and perpetual access to institutions. For more information or to contact an Oxford Sales Representative click here.