1. If a proposition P is known, then P is true
2. If the conjunction P&Q is known, then P is known and Q is known
3. If P is true then it is possible to know P
4. If ~P is a logical tautology, then P is
Then you can prove:
5. If P is true, then P is known
In other words, if 1-4 are true, then all truths are known.
You can digest this result in at least two different ways:
1. It's formal proof of the existence of an omniscient being, i.e. God
2. The conclusion is clearly false, and so at least one of the premises must be false.
If, like me, you choose to cast your lot with option 2 then it makes a fun little puzzle to try to figure out which of the premises is (or are) false. You can read up on all of the different ways that philosophers have tried to resolve Fitch here (with some extra food for thought here). Personally, I think the answer is obvious and simple, and a good example of why modern philosophy needs to take computability and complexity theory more seriously than it does.
If you want to try to work it out for yourself, stop reading now. Spoiler alert.
It seems pretty clear to me that the problematic assumption is #3. There are a lot of ways to argue this, but the one that I find most convincing is simply to observe that the universe is finite while there are an infinite number of potentially knowable truths. Hence, there must exist truths which cannot even be represented (let alone known) in this universe because their representation requires more bits of information than this universe contains. QED.
But the problem actually runs much deeper than that. Notice how I had to sort of twist myself into linguistic knots to cast the premises in the passive voice. I started out writing premise #1 as, "If you know P, then P is true." But that raises the question: who is "you"? The modal logic in which Fitch's proof is conducted is supposed to be a model of knowledge, but it makes no reference to any knowing entities. KP is supposed to mean "P is known" but it says nothing about the knower. So in the formalism it is not even possible formulate the statement, "I know P but you don't." The formalism is also timeless. If KP is true, then it is true for all time. So it is not possible to say, "I learned P yesterday." If you start with an agent-free and time-free model of knowledge then it's hardly surprising that you end up with some weird results because what you're reasoning about is some mathematical construct that bears no resemblance at all to the real world.
Real knowledge is a state of an agent at a particular time, which is to say, it is a statement about physics. If I say, "I know that 1+1=2", that is a statement about the state of my brain, a physical thing, and more to the point, a computational device. Hence the theory of computation applies, as does complexity theory, and my knowledge is constrained by both. So premise 3 is not only false, but it is provably false, at least in this physical universe.
That would be the end of it except for two things: First, it is actually possible to carry out the proof with a weaker version of the third premise. Instead of "all truths are knowable" you can instead use:
3a: There is an unknown, but knowable truth, and it is knowable that there is an unknown, but knowable truthand still get the same result that all truths are known. That formulation seems much more difficult to dismiss on physical grounds. I'll leave that one as an exercise, but here's a hint: think about what 3a implies in terms of whether the state of knowledge in the universe is static or not. (If you really want to go down this rabbit hole you can also read up on possible-world semantics of modal logics.)
Second, there is this objection raised by Luke in our original exchange:
But one can just restrict the domain to those truths we think are knowable and re-state the entire paradox. When restricted to knowable truths, the axioms lead to the conclusion that all knowable truths are already known. Surely you don't wish to accept this conclusion?I'm going to re-state that with a little more precision:
One can just restrict the domain of the model of your modal logic to those truths that are tractably computable. Because the proof itself is formal, it is still logically valid under a change of model domain. When restricted to tractably computable truths, the axioms lead to the conclusion that all tractably computable truths are already known.Again, I'll leave figuring out why this is wrong as an exercise. Hint: look at the axioms of the modal logic of knowledge and think about whether or not the domain of tractably computable truths really is a valid model for them.