One that I’m very tempted to — I know there’s a stock answer to this, although still I think that it’s a pretty good thought experiment — is, if the physics textbook is right, then you should be able to give me an exact prediction of exactly what I will do, unconditional. So you shouldn’t have to say, “I can only give you a conditional prediction” — you should be able to give me an unconditional prediction about whether I’m going to raise my arm in five seconds...
Now the thought experiment is to tell me that unconditional prediction — and you should be able to go and tell me the prediction in such a way that it incorporates all my reactions and secondary reactions and so on, all the way to infinity. And now guess what I’m going to do? I’m going to do the opposite of what you said I’m going to do. All right? Again, it’s not ironclad, and I know there’s a lot of people who say, no, no, no, feedback loops, and it doesn’t count. But it sure seems like if determinism was true, you should be able to give me unconditional predictions about what I’m going to do. And then intuitively, it seems like I could totally not do them.
At first I thought this argument was obviously misguided, because we can never do this for a simple program which takes in one bit as input and then prints its complement. There’s no reason that in general a computable function must have a fixed point[1], so even if we know the source code of a program perfectly we may not be able to come up with a way in which to tell the program what to do in a way that results in the program following the behavior we said it would follow. However, the issue actually turns out to be more subtle than this.
Let’s make this more formal. If we have a deterministic agent such that we tell the agent what we think it will do and then the agent takes an action conditional on that information, for the purposes of our little experiment we can abstract away from all other details and just represent the agent by a function f:A→A from a space of actions A to itself. If A is just some discrete space then f could just be an arbitrary fixed point-free permutation of A, and there will be at least one such permutation so long as |A|>1. Therefore it seems like the argument doesn’t work: here we have a completely deterministic agent, and yet it’s impossible for us to tell it what it will do in such a way that it does what we predicted in advance.
This is actually a standard problem in fixed point theory. Maps from discrete spaces to themselves can easily fail to have fixed points, much like how there’s no deterministic or pure strategy Nash equilibrium of a rock-paper-scissors game. To find the equilibrium, we need to expand the class of actions we permit the agent to take.
Suppose that instead of working with a deterministic agent, we’re working with a stochastic agent. The action space of the agent is now the space of probability distributions on A, say M. This is isomorphic to a simplex with |A| vertices, so we can realize it as a convex subset of R|A|+1.
If we now imagine we give the agent a probability distribution over the actions it could take, we’re in a situation where instead of a function f:A→A we have a function g:M→M. The agent reads the vector of probabilities we give it, and then decides on some probability distribution to sample its next action from.
Now the key observation: if g is continuous, then Brouwer’s fixed point theorem guarantees the existence of a fixed point! In other words, for stochastic agents who follow probability distributions that are continuous in the inputs they are given, we can always find a way to tell them what they will do in such a way that they will have to do what we said they would do. Of course, all of the work here is being done by the assumption that g is continuous. Without this assumption the topological structure of the set M becomes irrelevant so there’s no way to do better than what we could already do for the deterministic case.
Fortunately for the argument, the assumption of continuity for g is plausible in some real-world settings. For instance, if the agent were a quantum Turing machine that could take a wave-function as an input[2], we could communicate action probabilities to the agent by tuning the norms of the coefficients of the input wave-function in a canonical basis. In this case it’s easy to see from the properties of quantum mechanics that the agent would necessarily represent a continuous function M→M and the invocation of Brouwer’s fixed point theorem would therefore be valid.
If we take Caplan’s argument seriously, there might be a real “test” of libertarian free will here. More precisely, it’s a test that the input-output relation represented by the agent should be continuous as I’ve formalized it here. I think this is interesting because our understanding of physics seems to exclude effects that are truly discontinuous. For example, real-world transistors have resistance that depends continuously on the gate voltage, contrary to idealized models of transistors that people sometimes work with in textbooks.
In contrast, I think almost all proponents of libertarian free will would agree that their position predicts that an agent with such free will, such as a human, could always just choose to not do as they are told. If the distribution they are given looks like it’s roughly uniform they can deterministically pick one action, and if it looks like it’s very far from uniform they can just make a choice uniformly at random. The crux is that the function g this defines can’t be continuous, so I believe this forces advocates of libertarian free will to the position that agents with free will must represent discontinuous input-output relations.
This seems like it should be testable in theory, though in practice we may be blocked from testing it right now by our lack of understanding of how humans actually work. If libertarian free will advocates accept this framing of the problem, this hypothetical experiment might actually be a way to convince them to change their minds.
Sometimes people define a “fixed point” of a total computable function F by saying that it’s some e such that e and F(e) represent the same partial recursive function in some admissible numbering. Here I actually want e=F(e), which is a stronger condition and obviously there are computable functions F which admit no such e.
Some sources define quantum Turing machines to have discrete inputs and outputs, but allow arbitrary vectors in a Hilbert space on the tape and the states of the Turing machine, i.e. during the “internal computation”. This makes it infeasible to give continuously varying inputs to the QTM and is also physically unrealistic, so I don’t follow that approach here.
Fixed points and free will
In his most recent appearance on the 80,000 Hours podcast, Bryan Caplan gave the following argument in favor of libertarian free will:
At first I thought this argument was obviously misguided, because we can never do this for a simple program which takes in one bit as input and then prints its complement. There’s no reason that in general a computable function must have a fixed point[1], so even if we know the source code of a program perfectly we may not be able to come up with a way in which to tell the program what to do in a way that results in the program following the behavior we said it would follow. However, the issue actually turns out to be more subtle than this.
Let’s make this more formal. If we have a deterministic agent such that we tell the agent what we think it will do and then the agent takes an action conditional on that information, for the purposes of our little experiment we can abstract away from all other details and just represent the agent by a function f:A→A from a space of actions A to itself. If A is just some discrete space then f could just be an arbitrary fixed point-free permutation of A, and there will be at least one such permutation so long as |A|>1. Therefore it seems like the argument doesn’t work: here we have a completely deterministic agent, and yet it’s impossible for us to tell it what it will do in such a way that it does what we predicted in advance.
This is actually a standard problem in fixed point theory. Maps from discrete spaces to themselves can easily fail to have fixed points, much like how there’s no deterministic or pure strategy Nash equilibrium of a rock-paper-scissors game. To find the equilibrium, we need to expand the class of actions we permit the agent to take.
Suppose that instead of working with a deterministic agent, we’re working with a stochastic agent. The action space of the agent is now the space of probability distributions on A, say M. This is isomorphic to a simplex with |A| vertices, so we can realize it as a convex subset of R|A|+1.
If we now imagine we give the agent a probability distribution over the actions it could take, we’re in a situation where instead of a function f:A→A we have a function g:M→M. The agent reads the vector of probabilities we give it, and then decides on some probability distribution to sample its next action from.
Now the key observation: if g is continuous, then Brouwer’s fixed point theorem guarantees the existence of a fixed point! In other words, for stochastic agents who follow probability distributions that are continuous in the inputs they are given, we can always find a way to tell them what they will do in such a way that they will have to do what we said they would do. Of course, all of the work here is being done by the assumption that g is continuous. Without this assumption the topological structure of the set M becomes irrelevant so there’s no way to do better than what we could already do for the deterministic case.
Fortunately for the argument, the assumption of continuity for g is plausible in some real-world settings. For instance, if the agent were a quantum Turing machine that could take a wave-function as an input[2], we could communicate action probabilities to the agent by tuning the norms of the coefficients of the input wave-function in a canonical basis. In this case it’s easy to see from the properties of quantum mechanics that the agent would necessarily represent a continuous function M→M and the invocation of Brouwer’s fixed point theorem would therefore be valid.
If we take Caplan’s argument seriously, there might be a real “test” of libertarian free will here. More precisely, it’s a test that the input-output relation represented by the agent should be continuous as I’ve formalized it here. I think this is interesting because our understanding of physics seems to exclude effects that are truly discontinuous. For example, real-world transistors have resistance that depends continuously on the gate voltage, contrary to idealized models of transistors that people sometimes work with in textbooks.
In contrast, I think almost all proponents of libertarian free will would agree that their position predicts that an agent with such free will, such as a human, could always just choose to not do as they are told. If the distribution they are given looks like it’s roughly uniform they can deterministically pick one action, and if it looks like it’s very far from uniform they can just make a choice uniformly at random. The crux is that the function g this defines can’t be continuous, so I believe this forces advocates of libertarian free will to the position that agents with free will must represent discontinuous input-output relations.
This seems like it should be testable in theory, though in practice we may be blocked from testing it right now by our lack of understanding of how humans actually work. If libertarian free will advocates accept this framing of the problem, this hypothetical experiment might actually be a way to convince them to change their minds.
Sometimes people define a “fixed point” of a total computable function F by saying that it’s some e such that e and F(e) represent the same partial recursive function in some admissible numbering. Here I actually want e=F(e), which is a stronger condition and obviously there are computable functions F which admit no such e.
Some sources define quantum Turing machines to have discrete inputs and outputs, but allow arbitrary vectors in a Hilbert space on the tape and the states of the Turing machine, i.e. during the “internal computation”. This makes it infeasible to give continuously varying inputs to the QTM and is also physically unrealistic, so I don’t follow that approach here.