consciousness

Some time ago I read Susan Blackmore’s excellent book, The Meme Machine, and while I can’t say that it changed my life, I will say that it changed the way that I understand my life. And yours, for that matter. Of course, this change is difficult to articulate and to put into effect, and its compounded by a few other books I read at the time.

This is just as I was starting my Graduate Studies, and I read Complexity. And it worked really well with Blackmore’s work, to the extent that it just sort of slotted in what I had been thinking about what she had been writing with what Stuart Kaufmann and various other people had been on about for the better part of a decade. In other words, I realized I was right about something.

And I think I’m fortunate that I was right about this at the beginning of my graduate studies rather than later, for reasons that will become apparent shortly. But first, I want to talk about the halting problem.

The Halting Problem is one of the basic principles of computer science, and it has to do with the theoretical limits of the computer you’re using to read this. Basically, the problem is this: given a web browser, and a web page, will that page ever stop loading?

This seems like a trivial problem from one point of view. For example, the W3C markup validation service can assure you that a particular page is correct, and has no open tags, and is a properly constructed web page. And you would think that therefore, the page will load in a browser.

But of course, every page has the potential to contain some arbitrary commands in PHP or Javascript or other langauges, and while those programs may be correctly constructed, they may or may not ever finish loading. It just depends on the content of the script.

It seems like it should be easy to find this out. After all, if you can scan the program to make sure that it doesn’t contain any open tags, you should be able to find out if it has an ifinite loop in it. And for trivial situations this is true, and most modern coding tools will actually warn you if you create a loop with no end conditions.

But for non-trivial cases, there is the halting problem.

The halting problem was a big deal back when Turing introduced it. Like Gödel’s incompleteness proof, it was revolutionary. People at the time assumed that the limits of human understanding and the limits of our formal inventions, like mathematics, were of the same order. And that just turns out not to be true. There are things that we just can’t do.

But to the next generation of scientists, this is just part of the way the world is. We can’t write a special tester that will look at web pages and know whether they load before actually loading them in a browser. Fine.

I had a point here, that has to do with expectations and exploration, but I need to come back to it tomorrow.

Tags: , ,

Leave a Reply

You must be logged in to post a comment.