To my mind, this paradox best serves to illustrate the perils of assuming a straightforward relation between natural language and logic.

The fact is (as pointed out in the formal discussion of the Sorites paradox) that the term heap does not unequivocally draw a clear boundary line, separating one set of objects (all of which are heaps) from everything else (which are non-heaps).

As there are no rigidly defined criteria for saying whether something is a heap or not, our best evaluative technique is to ask competent users of English whether the word is applicable in a given case (one of whom may be ourselves). Clearly, there are some collections of grains of sand we can unhesitatingly identify as heaps, and some as non-heaps. Between these, we may scratch our head for a while, and then issue a verdict (or admit ignorance). But another person, faced with the same decision, may go the other way. We ourselves, for a particular instance, may make the opposite decision at a different time. So we are looking at a statistical measure (how many people at a given time will say "heap") in these problem cases, at best.

Suppose we actually conducted an experiment - take 100 people, and some sand. One by one we add grains of sand to our collection, and at each turn we ask each of the 100 people to issue their verdict (keeping them from chatting to each other). We might tabulate the results, as follows (and I admit I'm guessing the results, not having done the experiment!):

number of grains       heap        non-heap    don't know
        1              0%            100%         0%
        2              0%            100%         0%
        3              0%            100%         0%
(everybody agrees these are not heaps!)
      m - 1            0%            99%          1%
      m                1%            99%          0%
      m + 1            2%            98%          0%
      m + 2            1%            99%          0%
      m + 3            1%            98%          1%
      m + 4            1%            99%          0%
(one of the subjects has thought about it, and decided that a really small heap counts as a heap, another subject considers the question, wavers, and then decides for the majority view)
      n               51%            34%          15%
      n + 1           50%            36%          14%
      n + 2           51%            29%          20%
(looking more like a heap ... n is the first number for which the majority of our subjects say "heap".)
      h - 1            99%           0&            1%
      h               100%           0%            0%
(h is the first number at which all subjects agree on "heap")
      h + 5            99%           0%            1%
      h + 6            99%           1%            0%
(It could happen!)
      i                100%          0%            0%
      i + 1            100%          0%            0%
      i + ...          100%          0%            0%
(Beyond i, there are no further waverings, and everyone agrees, as long as we conduct the experiment, that "heap" is correct - of course if we continued the experiment indefinitely, we'd find people thinking "that's not a heap, that's a mountain" (or a planet ...) and so the numbers would go down again. But never mind that!)

Well, it's an imaginary experiment, but I don't find the results implausible - I'm inferring and extrapolating them from my own experiences of the trickiness of certain aspects of language, and my observations of others. (Although the experiment is perhaps flawed - in real life, people do talk about the terms they use in language, and strive to agree about them. Also, the effect of all the heap-decisions on the behaviour (and sanity!) of the experimental subjects is ignored, though we could address this, perhaps, by getting a different group of 100 people to cast their verdict for each additional grain.)

We can see from these considerations, I hope, that there are at least two errors in the statement of the paradox. The first is the unspoken assumption that for any object and any language-user it is a case of either a strict heap, or a strict non-heap - this manifests in step 2, which might be true as far as it goes, but says nothing about objects which are neither (strict) heaps nor (strict) non-heaps. It is only in logic that the law of the excluded middle holds without fail - in real life, we may sometimes be unable to reach a decision.

The second flaw follows: in practice, in the case of an individual language user, there will indeed be some number (m, in the case of our first heap-sayer, above) where m grains strikes a person as a heap, and m - 1 does not. The number will differ for different people, and it may be that m + 1 will not strike the same person as a heap - because we simply do not work out whether something is a heap by counting the grains! We look it over and think "heap" or not, as the case may be.

Ok, we might then go on to say: "So which is the correct number, for which we should say that all heap-shaped collections of grains of sand, with that number of grains, is really a heap? Is it m, n, h, or i?"?

And here is the root of the problem. The paradox is taking the word 'heap' as representing an abstract reality which our real-world examples either conform to or don't, and therefore should properly be called heaps or not, as the case may be - which is to assume that there is some number before which is is simply incorrect to say "heap", and beyond which it is incorrect not to. Plainly, there is not such a number (bear in mind that the exact values of n, h, and i (which may seem plausible candidates) are all contingent - and will vary according to on which group of people, and on which day, we conduct the experiment).

This idea of a 'god-given' heapness is really just a Platonist folly stuck in the back of our understanding of language (Platonism may be taken more seriously where the objects of discourse are (or appear to be) explicitly defined at all points, like in mathematics - but natural language talk of heaps is not mathematics!) It's more accurate to view this kind of unequivocal clarity as a sort of aspiration of language.

If we accept that there is no universal god-given category of heapness against which all collections of grains of sand must be measured, things begin to make a little more sense.

Ludwig Wittgenstein used the phrase "penumbra of meaning" to point out this property of language - that though there are dark areas which are fully inside the denotation (shadow) of a term, and light areas which are fully outside it, there may well be areas which belong in a fuzzy border region (the penumbra).

Does this mean we can never correct anyone in their use of the word heap? No. Clearly, if someone calls 2 grains of sand a heap, they are wrong, and need correction, just as if they had called an elephant a heap. (In the one case we'd say "no, heaps are bigger than that", in the other case we'd say "not everything that's big is a heap!")

This kind of limited vagueness can sometimes be tremendously useful in language, as in another example, from Wittgenstein's Philosophical Investigations: if I say "stand roughly there" (pointing) you will likely know exactly what I mean!