Philosophy of computer science

Overview of the philosophy of computer science

Not to be confused with Computational philosophy.

The philosophy of computer science is concerned with the philosophical questions that arise within the study of computer science. There is still no common understanding of the content, aims, focus, or topics of the philosophy of computer science,[1] despite some attempts to develop a philosophy of computer science like the philosophy of physics or the philosophy of mathematics. Due to the abstract nature of computer programs and the technological ambitions of computer science, many of the conceptual questions of the philosophy of computer science are also comparable to the philosophy of science, philosophy of mathematics, and the philosophy of technology.[2]

## Overview

[edit]

Many of the central philosophical questions of computer science are centered on the logical, ethical, methodological, ontological and epistemological issues that concern it.[3] Some of these questions may include:

* What is computation?
* Does the Church–Turing thesis capture the mathematical notion of an effective method in logic and mathematics?[4][5]
* What are the philosophical consequences of the P vs NP problem?
* What is information?

## Church–Turing thesis

[edit]

The Church–Turing thesis and its variations are central to the theory of computation. Since, as an informal notion, the concept of effective calculability does not have a formal definition, the thesis, although it has near-universal acceptance, cannot be formally proven. The implications of this thesis is also of philosophical concern. Philosophers have interpreted the Church–Turing thesis as having implications for the philosophy of mind.[6][7]

## P versus NP problem

[edit]

The P versus NP problem is an unsolved problem in computer science and mathematics. It asks whether every problem whose solution can be verified in polynomial time (and so defined to belong to the class NP) can also be solved in polynomial time (and so defined to belong to the class P). Most computer scientists believe that P ≠ NP.[8][9] Apart from the reason that after decades of studying these problems no one has been able to find a polynomial-time algorithm for any of more than 3000 important known NP-complete problems, philosophical reasons that concern its implications may have motivated this belief.

For instance, according to Scott Aaronson, the American computer scientist then at MIT:

> If P = NP, then the world would be a profoundly different place than we usually assume it to be. There would be no special value in "creative leaps", no fundamental gap between solving a problem and recognizing the solution once it's found. Everyone who could appreciate a symphony would be Mozart; everyone who could follow a step-by-step argument would be Gauss.[10]

## See also

[edit]

* Computer-assisted proof: Philosophical objections
* Philosophy of artificial intelligence
* Philosophy of information
* Philosophy of mathematics
* Philosophy of science
* Philosophy of technology

## References

[edit]

1. ^ Tedre, Matti (2014). The Science of Computing: Shaping a Discipline. Chapman Hall.
2. ^ Turner, Raymond; Angius, Nicola (2020), "The Philosophy of Computer Science", in Zalta, Edward N. (ed.), The Stanford Encyclopedia of Philosophy (Spring 2020 ed.), Metaphysics Research Lab, Stanford University, retrieved 2020-05-21
3. ^ Turner, Raymond (January 2008). "The Philosophy of Computer Science". Journal of Applied Logic. 6 (4): 459. doi:10.1016/j.jal.2008.09.006. hdl:2434/807648 - via ResearchGate.
4. ^ Copeland, B. Jack. "The Church-Turing Thesis". Stanford Encyclopedia of Philosophy.
5. ^ Hodges, Andrew. "Did Church and Turing have a thesis about machines?".
6. ^ Copeland, B. Jack (November 10, 2017). "The Church-Turing Thesis". In Zalta, Edward N. (ed.). Stanford Encyclopedia of Philosophy.
7. ^ For a good place to encounter original papers see Chalmers, David J., ed. (2002). Philosophy of Mind: Classical and Contemporary Readings. New York: Oxford University Press. ISBN 978-0-19-514581-6. OCLC 610918145.
8. ^ William I. Gasarch (June 2002). "The P=?NP poll" (PDF). SIGACT News. 33 (2): 34–47\. CiteSeerX 10.1.1.172.1005. doi:10.1145/564585.564599. S2CID 36828694. Retrieved 26 September 2018.34-47&rft.date=2002-06&rft_id=https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.172.1005#id-name=CiteSeerX&rft_id=https://api.semanticscholar.org/CorpusID:36828694#id-name=S2CID&rft_id=info:doi/10.1145/564585.564599&rft.au=William+I.+Gasarch&rft_id=http://www.cs.umd.edu/~gasarch/papers/poll.pdf&rfr_id=info:sid/en.wikipedia.org:Philosophy+of+computer+science" class="Z3988">
9. ^ Rosenberger, Jack (May 2012). "P vs. NP poll results". Communications of the ACM. 55 (5): 10.
10. ^ "Shtetl-Optimized » Blog Archive » Reasons to believe". 4 September 2006. Retrieved 2021-09-16.

## Further reading

[edit]

* Matti Tedre (2014). The Science of Computing: Shaping a Discipline. Chapman Hall.
* Scott Aaronson. "Why Philosophers Should Care About Computational Complexity". In Computability: Gödel, Turing, Church, and beyond.
* Timothy Colburn. Philosophy and Computer Science. Explorations in Philosophy. M.E. Sharpe, 1999. ISBN 1-56324-991-X.
* A.K. Dewdney. New Turing Omnibus: 66 Excursions in Computer Science
* Luciano Floridi (editor). The Blackwell Guide to the Philosophy of Computing and Information, 2004.
* Luciano Floridi (editor). Philosophy of Computing and Information: 5 Questions. Automatic Press, 2008.
* Luciano Floridi. Philosophy and Computing: An Introduction, Routledge, 1999.
* Christian Jongeneel. The informatical worldview, an inquiry into the methodology of computer science.
* Jan van Leeuwen. "Towards a philosophy of the information and computing sciences", NIAS Newsletter 42, 2009.
* Moschovakis, Y. (2001). What is an algorithm? In Enquist, B. and Schmid, W., editors, Mathematics unlimited -- 2001 and beyond, pages 919–936. Springer.
* Alexander Ollongren, Jaap van den Herik. Filosofie van de informatica. London and New York: Routledge, 1999. ISBN 0-415-19749-X
* Tedre, Matti (2014), The Science of Computing: Shaping a Discipline, CRC Press, ISBN 9781482217698 Taylor and Francis.
* Ray Turner and Nicola Angius. "The Philosophy of Computer Science". Stanford Encyclopedia of Philosophy.
* Matti Tedre (2011). Computing as a Science: A Survey of Competing Viewpoints. Minds & Machines 21, 3, 361–387.
* Ray Turner. Computational Artefacts-Towards a Philosophy of Computer Science. Springer. [1]

## External links

[edit]

* The International Association for Computing and Philosophy
* Philosophy of Computing and Information at PhilPapers
* Philosophy of Computation at Berkeley
* Rapaport, William J. (2020-07-27). "Philosophy of Computer Science (draft version)" (PDF). Archived from the original (PDF) on 2021-10-26.

* v
* t
* e

Computer science

Note: This template roughly follows the 2012 ACM Computing Classification System.

Hardware|

* Printed circuit board
* Peripheral
* Integrated circuit
* Very Large Scale Integration
* Systems on Chip (SoCs)
* Energy consumption (Green computing)
* Electronic design automation
* Hardware acceleration
* Processor
* Size / Form

Computer systems organization|

* Computer architecture
* Computational complexity
* Dependability
* Embedded system
* Real-time computing

Networks|

* Network architecture
* Network protocol
* Network components
* Network scheduler
* Network performance evaluation
* Network service

Software organization|

* Interpreter
* Middleware
* Virtual machine
* Operating system
* Software quality

Software notations and tools|

* Programming paradigm
* Programming language
* Compiler
* Domain-specific language
* Modeling language
* Software framework
* Integrated development environment
* Software configuration management
* Software library
* Software repository

Software development|

* Control variable
* Software development process
* Requirements analysis
* Software design
* Software construction
* Software deployment
* Software engineering
* Software maintenance
* Programming team
* Open-source model

Theory of computation|

* Model of computation
* Stochastic
* Formal language
* Automata theory
* Computability theory
* Computational complexity theory
* Logic
* Semantics

Algorithms|

* Algorithm design
* Analysis of algorithms
* Algorithmic efficiency
* Randomized algorithm
* Computational geometry

Mathematics of computing|

* Discrete mathematics
* Probability
* Statistics
* Mathematical software
* Information theory
* Mathematical analysis
* Numerical analysis
* Theoretical computer science

Information systems|

* Database management system
* Information storage systems
* Enterprise information system
* Social information systems
* Geographic information system
* Decision support system
* Process control system
* Multimedia information system
* Data mining
* Digital library
* Computing platform
* Digital marketing
* World Wide Web
* Information retrieval

Security|

* Cryptography
* Formal methods
* Security hacker
* Security services
* Intrusion detection system
* Hardware security
* Network security
* Information security
* Application security

Human–computer interaction|

* Interaction design
* Social computing
* Ubiquitous computing
* Visualization
* Accessibility

Concurrency|

* Concurrent computing
* Parallel computing
* Distributed computing
* Multithreading
* Multiprocessing

Artificial intelligence|

* Natural language processing
* Knowledge representation and reasoning
* Computer vision
* Automated planning and scheduling
* Search methodology
* Control method
* Philosophy of artificial intelligence
* Distributed artificial intelligence

Machine learning|

* Supervised learning
* Unsupervised learning
* Reinforcement learning
* Multi-task learning
* Cross-validation

Graphics|

* Animation
* Extended reality
* Augmented
* Mixed
* Virtual
* Rendering
* Photograph manipulation
* Graphics processing unit
* Image compression
* Solid modeling

Applied computing|

* Quantum Computing
* E-commerce
* Enterprise software
* Computational mathematics
* Computational physics
* Computational chemistry
* Computational biology
* Computational social science
* Computational engineering
* Differentiable computing
* Computational healthcare
* Digital art
* Electronic publishing
* Cyberwarfare
* Electronic voting
* Video games
* Word processing
* Operations research
* Educational technology
* Document management

* Category
* Outline
* Glossaries

* v
* t
* e

Philosophy of science

Concepts|

* Analysis
* Analytic–synthetic distinction
* A priori and a posteriori
* Causality
* Mill's Methods
* Commensurability
* Consilience
* Construct
* Correlation
* function
* Creative synthesis
* Demarcation problem
* Empirical evidence
* Experiment
* design
* Explanatory power
* Fact
* Falsifiability
* Feminist method
* Functional contextualism
* Hypothesis
* alternative
* null
* Ignoramus et ignorabimus
* Inductive reasoning
* Intertheoretic reduction
* Inquiry
* Nature
* Objectivity
* Observation
* Paradigm
* Problem of induction
* Scientific evidence
* Evidence-based practice
* Scientific law
* Scientific method
* Scientific pluralism
* Scientific Revolution
* Testability
* Theory
* choice
* ladenness
* scientific
* Underdetermination
* Unity of science
* Variable
* control
* dependent and independent
* more...

Theories|

* Coherentism
* Confirmation holism
* Constructive empiricism
* Constructive realism
* Constructivist epistemology
* Contextualism
* Conventionalism
* Deductive-nomological model
* Epistemological anarchism
* Evolutionism
* Fallibilism
* Foundationalism
* Hypothetico-deductive model
* Inductionism
* Instrumentalism
* Model-dependent realism
* Naturalism
* Physicalism
* Positivism / Reductionism / Determinism
* Pragmatism
* Rationalism / Empiricism
* Received view / Semantic view of theories
* Scientific essentialism
* Scientific formalism
* Scientific realism / Anti-realism
* Scientific skepticism
* Scientism
* Structuralism
* Uniformitarianism
* Verificationism
* Vitalism

Philosophy of...|

* Biology
* Chemistry
* Physics
* Space and time
* Social science
* Archaeology
* Economics‎
* Geography
* History
* Linguistics
* Psychology

Related topics|

* Criticism of science
* Descriptive science
* Epistemology
* Exact sciences
* Faith and rationality
* Hard and soft science
* History and philosophy of science
* Non-science
* Pseudoscience
* Normative science
* Protoscience
* Questionable cause
* Relationship between religion and science
* Rhetoric of science
* Science studies
* Sociology of scientific ignorance
* Sociology of scientific knowledge

Philosophers of science|

| Precursors|

* Roger Bacon
* Francis Bacon
* Galileo Galilei
* Isaac Newton
* David Hume

|

* Auguste Comte
* Henri Poincaré
* Pierre Duhem
* Rudolf Steiner
* Karl Pearson
* Charles Sanders Peirce
* Wilhelm Windelband
* Alfred North Whitehead
* Bertrand Russell
* Otto Neurath
* C. D. Broad
* Michael Polanyi
* Hans Reichenbach
* Rudolf Carnap
* Karl Popper
* Carl Gustav Hempel
* W. V. O. Quine
* Thomas Kuhn
* Imre Lakatos
* Paul Feyerabend
* Ian Hacking
* Bas van Fraassen
* Larry Laudan

* Category
* Philosophy portal
* Science portal
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template