Here’s a thread from the end of last year trying to reframe the core question of the computational theory of mind. I’m still not entirely happy with the arguments sketched here, but it’s a good introduction to the way I think we should articulate the relationship between philosophy of mind and computer science. There are a lot of nuances hidden in how we define the terms ‘computation’, ‘information‘, and ‘representation’, if we’re to deploy them in resolving the traditional philosophical problems of mindedness, but these nuances will have to wait for another day.

There are many complaints made about classical computational theory of mind (CCTM), but few of them come from the side of computer science. However, in my view, the biggest problem with first and second generation computationalists is a too narrow view of what computation is.

Consider this old chestnut: “Gödel shows us that the mind cannot be a computer, because we can intuit mathematical truths that cannot be deduced from a given set of axioms!”

The correct response to this is: “Why in the ever-loving fuck would you think that the brain qua computational process could be modelled by a process of deduction in a fixed proof system with fixed premises?”

What this question reveals about those who ask it and those who entertain it is that they don’t really appreciate the relationship between computation and logic. Instead, they have a sort of quasi-Leibnizian folk wisdom about ‘mechanical deduction’.

(If you want an example of this folk wisdom turning up in philosophy, go read Adorno and Horkheimer’s *Dialectic of Enlightenment*, which contains some real corkers.)

Anyway, here are some reasonable assumptions about any account of the mind as a computational process:

1. It is an **ongoing** process. It is an online system that takes in input and produces output in a manner that is not guaranteed to terminate, and which for the most part has control mechanisms that prevent it behaving badly (e.g., catastrophic divergence).

Interestingly enough, this means that the information flowing into and out of the mind, forming cybernetic feedback loops mediated by the environment, is not data, but co-data. This is a very technical point, but it has fairly serious philosophical implications.

So much of classical computationalism works by modelling the mind on Turing machines, or worse, straight up computable functions, and so implicitly framing it as something that takes finite input and produces finite output (whose parameters must be defined *in advance*).

Everyone who treats computation as a matter of symbol manipulation, both pro-CCTM (Fodor) and anti-CCTM (Searle), has framed the issue in a way that leads directly to misunderstanding this fairly simple, and completely crucial point.

2. It is a **non-deterministic** process. When it comes to the human brain, this is just factually true, but I think a case can be made that this is true of anything worth calling a mind. It is precisely what undermines the Leibnizian Myth of mechanical deduction.

This non-determinism can be conceived in various ways, in terms of exploitation of environmental randomness, or in terms of probabilistic transition systems (e.g., Markov chains). The deep point is that any heuristic that searches a possibility space for a solution needs this.

Some problems are solved by *following* rules, but others can only be solved by *finding* rules. Any system that learns, which means everything system that is truly intelligent, requires essentially fallible ways of doing the latter. Indeed, it is an evolving collection of these.

I’ve said it before and I’ll say it again, what Gödel proves is that even mathematics is essentially creative, rather than mechanically deductive. Furthermore, it’s a creativity that in principle cannot be modelled on brute forcing. Why would we model *other* creativity this way?

Yes, mathematics does involve applying deterministic rules to calculate guaranteed results to well defined problems, but how do you think it finds these rules? Mathematicians search for well-formed proofs in a non-totalisable space of possible syntactic objects.

If we cannot brute force mathematics, why would we think that we could brute force the empirical world? Even if we could, there is not enough time nor enough resources. We are left to heuristically search for better non-deterministic heuristics.

3. It is a system of **concurrent **interacting subsystems. This is also an obvious fact about the human mind qua computational process, at least insofar as the structure of the brain and the phenomenology of our inner lives are concerned. However, it is the most contentious point.

There’s a good sense in which there is an intrinsic connection between concurrency and non-termination and non-determinism, at least insofar as the interactions with our environment just discussed suggest that we fit into it as an actor fits into a larger system of actors.

However, a skeptic can always argue that any concurrent system could always be simulated on a machine with global state, such as a Turing machine in which not just one’s mind but one’s whole environment had been unfolded onto the tape. Concurrency in practice, not principle.

This is where we get into the conceptual matter of what exactly ‘interactive computation’ is, and whether it is something properly distinct from older non-interactive forms. There’s a pretty vicious debate between Peter Wegner and Scott Aaronson on this point.

It all comes back to Samson Abramsky’s framing of the difference between two different ways of looking at what computation is doing, i.e., whether we’re interested in *what* is being computed or whether we’re interested in *how* a process is behaving. This is deeply philosophical.

Abramsky asks us: “What function does the internet compute?”

The proper response to this question is that it is nonsensical. But that means that we cannot simply pose the problems that computational systems solve in terms of those computable functions delimited by the equivalence between recursive functions, Turing machines, lambda calculus, etc.

This becomes *incredibly* contentious, because any attempt to say that (effective) computation as such isn’t defined by this equivalence class can so easily be misinterpreted as claiming that you are tacitly proposing some model of hypercomputation.

The truth is rather that, no matter how much we may use the mathematical scaffolding of computable functions to articulate our solutions to certain problems, this does not mean that those problems can themselves be defined in such mathematical terms.

Problems posed by an empirical environment into which we are thrown as finite creatures, and forced to evolve solutions in more or less systematic ways, no matter how complex, are not mathematically *defined*, even if they can always be mathematically *modelled* and analysed.

Solutions to such problems cannot be *verified*, they can only be *tested*. This is the real conceptual gulf between traditional programming and machine learning: not the ways in which solutions are produced, but the ways in which the problems are defined. The latter obviates specification.

For any philosophers still following, this duality, between verification and testing, is Kant’s duality between mathematical and empirical concepts. If one reads ‘testing’ as ‘falsification’, one can throw in Popper’s conception of empirical science into the mix.

My personal view is that this wider way of considering the nature of the problems computational processes can solve is just what used to be called cybernetics, and that the logic of observation and action is essentially the same as the logic of experimental science.

Adjusting one’s actions when *sensorimotor expectations* are violated is not different in kind from revising one’s theories when *experimental hypotheses* are refuted. At the end of the day, both are forms of cybernetic feedback.

So, where do these initial claims about what type of computational process a mind is lead us, philosophically speaking?

Here’s another philosophical question, reframed in this context. If not all minds necessarily have selves, but some certainly do, and these constitute control structures guiding the interactive behaviour of the overall cybernetic system, what kind of process is a self?

Is it guaranteed to terminate? Will it catastrophically diverge in a manner that is termination in all but name? Will it fall into a loop that can only be broken by environmental input? Or, is well-behaved but interesting non-termination possible?

What even would it mean for there to be well-behaved and interesting non-terminating behaviour in this case?

Isn’t that just the question of whether life can have purpose that isn’t a sort of consolation prize consequent on finitude? Are there sources of meaning other than our inexorable mortality?

I’d wager yes. But any way of answering this question properly is going to have reckon with this framing, for any less is to compromise with those enamoured of the mysteries of our meat substrate.