I understand what the phrase and the pairing of the two phrases is meant to demonstrate. However, I would have to say that I think that understanding is derived and consequently artificial.

Take the second phrase. "Fruit flies like a banana" and your two interpretations of it.

A type of insects called fruit flies that like a banana (so 'like' is used a a verb).

Can you really relate to anyone actually using that phrase to achieve that meaning?

I know we might say that "People like a drink", where the singular usage "a drink" does not imply that they only like one, but "Fruit flies like a banana"?

They might say "Fruit flies like bananas".

A kind of fruit that flies like a banana. ('flies' used a verb and 'like' as a conjunction).

Hmm. A banana is fruit. Soooo, fruit flies like fruit?

But fruit doesn't fly. It falls. I can be thrown. And if you put it on an aeroplane, it can be flown somewhere.

I seriously doubt that either an ornithologist or an aerospace engineer would recognise any of those situations as being "flight".

About the best interpretation of "Fruit flies like a banana", related to flight, that I can come up with is that:

Like bananas, fruit doesn't fly.

Something along the lines of "Flies like a lead ballon", but if that's the meaning that is being conveyed, then the latter is a much better way of conveying it.

I guess the point I am making is that both phrases are tortuously derived to make the point that natural language processing is hard--but neither are exactly "natural language".

It's a bit like saying that you cannot make a return trip to the Sun, so therefore space travel, whilst not impossible, is totally unworthwhile. Or building a bridge across the Atlantic is practically impossible, therefore building bridges is a waste of time.

If you set the goals (for anything) artificially high, then you can render the problem insoluble.

There are many problems that are generically insoluble in practical time frames, but that doesn't prevent partial solutions to subsets of the generic problem being used every day to good effect.

As given, ie. without context, either interpretation of either phrase is equally valid. And that is for a human being!

The problem then is not how to make a program that can disambiguate the possible interpretations. It's simply one of: How to disambiguate the possible interpretations. Not so much an AI problem as an HI problem.

If we had some context, like an earlier reference to "the man with the telescope", or "John was using his telescope", then human beings easily make the correct interpretation. Programming that is hard, but far from impossible. Given enough examples of it, a NN could probably make pretty good guesses much of the time.

As originally stated though, without context, the problem is impossible, but it is equally impossible for the human as it is the computer.

Humans can use lots of contextual cues to disambiguate the particular meaning of a sentence. For instance, if "John saw the man with a telescope" were to appear in the context of a photograph with a man holding a telescope and looking at the distance, it would easy for humans to associate John with the man holding the telescope.

There are some things which computers can't do too well because they are missing a human understanding of context and how the world works. Since computers tend to rely on syntax to "understand" language, but don't have any concept of what would be the most "logical" interpretation of a given sentence, they tend to fail at this point. I guess my point is that you need some knowledge about the world to be able to intelligently disambiguate synactically ambiguous sentences. What most linguistic researchers have done up to now is use a hand-tagged training corpus to disambiguate and give filter out unlikely (atypical) interpretations of a syntactic structure.

The idea of dealing with typical cases is basically what you're suggesting here, I think.