Imagine a heap of sand. You carefully remove one grain. Is there still a heap? The obvious answer is: yes. Removing one grain doesn’t turn a heap into no heap. That principle can be applied again as you remove another grain, and then another… After each removal, there’s still a heap, according to the principle. But there were only finitely many grains to start with, so eventually you get down to a heap with just three grains, then a heap with just two grains, a heap with just one grain, and finally a heap with no grains at all. But that’s ridiculous. There must be something wrong with the principle. Sometimes, removing one grain does turn a heap into no heap. But that seems ridiculous too. How can one grain make so much difference? That ancient puzzle is called the sorites paradox, from the Greek word for ‘heap’.

There would be no problem if we had a nice, precise definition of ‘heap’ that told us exactly how many grains you need for a heap. The trouble is that we don’t have such a definition. The word ‘heap’ is vague. There isn’t a clear boundary between heap and no heap. Mostly, that doesn’t matter. We get along well enough applying the word ‘heap’ on the basis of casual impressions. But if the local council charged you with having dumped a heap of sand in a public place, and you denied that it amounted to a heap, whether you had to pay a large fine might depend on the meaning of the word ‘heap’.

More important legal and moral issues also involve vagueness. For instance, in the process of human development from conception to birth to maturity, when is there first a person? In a process of brain death, when is there no longer a person? Such questions matter for the permissibility of medical interventions such as abortion and switching off life-support. To discuss them properly, we must be able to reason correctly with vague words such as ‘person’.

You can find aspects of vagueness in most words of English or any other language. Out loud or in our heads, we reason mostly in vague terms. Such reasoning can easily generate sorites-like paradoxes. Can you become poor by losing one cent? Can you become tall by growing one millimetre? At first, the paradoxes seem to be trivial verbal tricks. But the more rigorously philosophers have studied them, the deeper and harder they have turned out to be. They raise doubts about the most basic logical principles.

Traditionally, logic is based on the assumption that every statement is either true or false (and not both). That’s called bivalence, because it says that there are just two truth-values, truth and falsity. Fuzzy logic is an influential alternative approach to the logic of vagueness that rejects bivalence in favour of a continuum of degrees of truth and falsity, ranging from perfect truth at one end to perfect falsity at the other. In the middle, a statement can be simultaneously half-true and half-false. On this view, as you remove one grain after another, the statement ‘There is a heap’ becomes less and less true by tiny steps. No one step takes you from perfect truth to perfect falsity. Fuzzy logic rejects some key principles of classical logic, on which standard mathematics relies. For example, the traditional logician says, at every stage: ‘Either there is a heap or there isn’t’: that’s an instance of a general principle called excluded middle. The fuzzy logician replies that when ‘There is a heap’ is only half-true, then ‘Either there is a heap or there isn’t’ is only half-true too.

At first sight, fuzzy logic might look like a natural, elegant solution to the problem of vagueness. But when you work through its consequences, it’s less convincing. To see why, imagine two heaps of sand, exact duplicates of each other, one on the right, one on the left. Whenever you remove one grain from one side, you remove the exactly corresponding grain from the other side too. At each stage, the sand on the right and the sand on the left are exact grain-by-grain duplicates of each other. This much is clear: if there’s a heap on the right, then there’s a heap on the left too, and vice versa.

Now, according to the fuzzy logician, as we remove grains one by one, sooner or later we reach a point where the statement ‘There’s a heap on the right’ is half-true and half-false. Since what’s on the left duplicates what’s on the right, ‘There’s a heap on the left’ is half-true and half-false too. The rules of fuzzy logic then imply that the complex statement ‘There’s a heap on the right and no heap on the left’ is also half-true and half-false, which means that we should be equally balanced between accepting and rejecting it. But that’s absurd. We should just totally reject the statement, since ‘There’s a heap on the right and no heap on the left’ entails that there is a difference between what’s on the right and what’s on the left – but there is no such difference; they are grain-by-grain duplicates. Thus fuzzy logic gives the wrong result. It misses the subtleties of vagueness.

There are many other complicated proposals for revising logic to accommodate vagueness. My own view is that they are all trying to fix something that isn’t broken. Standard logic, with bivalence and excluded middle, is well-tested, simple and powerful. Vagueness isn’t a problem about logic; it’s a problem about knowledge. A statement can be true without your knowing that it is true. There really is a stage when you have a heap, you remove one grain, and you no longer have a heap. The trouble is that you have no way of recognising that stage when it arrives, so you don’t know at which point this happens.

A vague word such as ‘heap’ is used so loosely that any attempt to locate its exact boundaries has nothing solid and reliable to go on. Although language is a human construct, that does not make it transparent to us. Like the children we make, the meanings we make can have secrets from us. Fortunately, not everything is secret from us. Often, we know there’s a heap; often, we know there isn’t one. Sometimes, we don’t know whether there is one or not. Nobody ever gave us the right to know everything!