Berlin: Springer, 2018. — 248 p.
The philosophy of computer science is concerned with issues that arise from reflection upon the nature and practice of the discipline of computer science. This book presents an approach to the subject that is centered upon the notion of computational artefact. It provides an analysis of the things of computer science as technical artefacts. Seeing them in this way enables the application of the analytical tools and concepts from the philosophy of technology to the technical artefacts of computer science.
With this conceptual framework the author examines some of the central philosophical concerns of computer science including the foundations of semantics, the logical role of specification, the nature of correctness, computational ontology and abstraction, formal methods, computational epistemology and explanation, the methodology of computer science, and the nature of computation.
The book will be of value to philosophers and computer scientists.
Computer Science
Towards a Philosophy of Computer Science
Computational Artifacts
Logic Machines as Technical Artifacts
The Ontology of Programs
Software Systems as Technical Artifacts
The Languages of Computer Science
Programming Languages
Semantic Theories
Formal Semantics
Semantics and Implementation
Specification Languages
Software System Methodology
Specification
The Philosophy of Design
Simplicity
Modularity
Formal Methods
The Design of Programming Languages
Semantics and Design
Data Abstraction
Computability
Feasible Computations
Varieties of Correctness
Program Correctness
Types and Correctness
The Simple Mapping Account
Computational Explanation
Intention and Correctness
Rule Following and Correctness