-
15Central Themes and Open Questions in the Philosophy of Computer ScienceGlobal Philosophy 33 (6): 1-14. 2023.This paper introduces the _Global Philosophy_ symposium on Giuseppe Primiero’s book _On the Foundations of Computing_ (2020). The collection gathers commentaries and responses of the author with the aim of engaging with some open questions in the philosophy of computer science. Firstly, this paper introduces the central themes addressed in Primiero’s book; secondly, it highlights some of the main critiques from commentators in order to, finally, pinpoint some conceptual challenges indicating fut…Read more
-
17From Coding To Curing. Functions, Implementations, and Correctness in Deep LearningPhilosophy and Technology 36 (3): 1-27. 2023.This paper sheds light on the shift that is taking place from the practice of ‘coding’, namely developing programs as conventional in the software community, to the practice of ‘curing’, an activity that has emerged in the last few years in Deep Learning (DL) and that amounts to curing the data regime to which a DL model is exposed during training. Initially, the curing paradigm is illustrated by means of a study-case on autonomous vehicles. Subsequently, the shift from coding to curing is analy…Read more
-
7On the Experimental Foundation of ComputingAxiomathes 32 (3): 1221-1236. 2022.This paper offers a review of Giuseppe Primero’s (2020) book “On the foundations of computing”_._ Mathematical, engineering, and experimental foundations of the science of computing are examined under the light of the notions of formal, physical, and experimental computational validity provided by the author. It is challenged the thesis that experimental computational validity can be defined only for the algorithmic method and not for the software development process. The notions of computationa…Read more
-
29On the Mutual Dependence Between Formal Methods and Empirical Testing in Program VerificationPhilosophy and Technology 33 (2): 349-355. 2020.This paper provides a review of Raymond Turner’s book Computational Artefacts. Towards a Philosophy of Computer Science. Focus is made on the definition of program correctness as the twofold problem of evaluating whether both the symbolic program and the physical implementation satisfy a set of specifications. The review stresses how these are not two separate problems. First, it is highlighted how formal proofs of correctness need to rely on the analysis of physical computational processes. Sec…Read more
-
37Infringing Software Property Rights: Ontological, Methodological, and Ethical QuestionsPhilosophy and Technology 33 (2): 283-308. 2020.This paper contributes to the computer ethics debate on software ownership protection by examining the ontological, methodological, and ethical problems related to property right infringement that should come prior to any legal discussion. The ontological problem consists in determining precisely what it is for a computer program to be a copy of another one, a largely neglected problem in computer ethics. The methodological problem is defined as the difficulty of deciding whether a given softwar…Read more
-
45Qualitative Models in Computational Simulative Sciences: Representation, Confirmation, ExperimentationMinds and Machines 29 (3): 397-416. 2019.The Epistemology Of Computer Simulation has developed as an epistemological and methodological analysis of simulative sciences using quantitative computational models to represent and predict empirical phenomena of interest. In this paper, Executable Cell Biology and Agent-Based Modelling are examined to show how one may take advantage of qualitative computational models to evaluate reachability properties of reactive systems. In contrast to the thesis, advanced by EOCS, that computational model…Read more
-
42Computational Idealizations in Software Intensive Science: a Comment on Symons’ and Horner’s paperPhilosophy and Technology 27 (3): 479-484. 2014.This commentary on John Symons’ and Jack Horner’s paper, besides sharing its main argument, challenges the authors’ statement that there is no effective method to evaluate software-intensive systems as a distinguishing feature of software intensive science. It is underlined here how analogous methodological limitations characterise the evaluations of empirical systems in non-software intensive sciences. The authors’ claim that formal methods establish the correctness of computational models rath…Read more
-
551Discovering Empirical Theories of Modular Software Systems. An Algebraic Approach.In Vincent C. Müller (ed.), Computing and philosophy: Selected papers from IACAP 2014, Springer. pp. 99-115. 2016.This paper is concerned with the construction of theories of software systems yielding adequate predictions of their target systems’ computations. It is first argued that mathematical theories of programs are not able to provide predictions that are consistent with observed executions. Empirical theories of software systems are here introduced semantically, in terms of a hierarchy of computational models that are supplied by formal methods and testing techniques in computer science. Both deducti…Read more
-
27Model-based abductive reasoning in automated software testingLogic Journal of the IGPL 21 (6): 931-942. 2013.Automated Software Testing (AST) using Model Checking is in this article epistemologically analysed in order to argue in favour of a model-based reasoning paradigm in computer science. Preliminarily, it is shown how both deductive and inductive reasoning are insufficient to determine whether a given piece of software is correct with respect to specified behavioural properties. Models algorithmically checked in Model Checking to select executions to be observed in Software Testing are acknowledge…Read more
-
57Explaining Engineered Computing Systems’ Behaviour: the Role of Abstraction and IdealizationPhilosophy and Technology 30 (2): 239-258. 2017.This paper addresses the methodological problem of analysing what it is to explain observed behaviours of engineered computing systems, focusing on the crucial role that abstraction and idealization play in explanations of both correct and incorrect BECS. First, it is argued that an understanding of explanatory requests about observed miscomputations crucially involves reference to the rich background afforded by hierarchies of functional specifications. Second, many explanations concerning inco…Read more
-
112Scientific Theories of Computational Systems in Model CheckingMinds and Machines 21 (2): 323-336. 2011.Model checking, a prominent formal method used to predict and explain the behaviour of software and hardware systems, is examined on the basis of reflective work in the philosophy of science concerning the ontology of scientific theories and model-based reasoning. The empirical theories of computational systems that model checking techniques enable one to build are identified, in the light of the semantic conception of scientific theories, with families of models that are interconnected by simul…Read more
-
129Abstraction and Idealization in the Formal Verification of Software SystemsMinds and Machines 23 (2): 211-226. 2013.Questions concerning the epistemological status of computer science are, in this paper, answered from the point of view of the formal verification framework. State space reduction techniques adopted to simplify computational models in model checking are analysed in terms of Aristotelian abstractions and Galilean idealizations characterizing the inquiry of empirical systems. Methodological considerations drawn here are employed to argue in favour of the scientific understanding of computer scienc…Read more
-
61The Problem of Justification of Empirical Hypotheses in Software TestingPhilosophy and Technology 27 (3): 423-439. 2014.This paper takes part in the methodological debate concerning the nature and the justification of hypotheses about computational systems in software engineering by providing an epistemological analysis of Software Testing, the practice of observing the programs’ executions to examine whether they fulfil software requirements. Property specifications articulating such requirements are shown to involve falsifiable hypotheses about software systems that are evaluated by means of tests which are lik…Read more
Areas of Specialization
Philosophy of Computing and Information |
Areas of Interest
Philosophy of Computing and Information |