Guided Tour in BioBIKE

What is a Formal Language?


You are sitting in your isolated Antarctic work station monitoring the size of the atmospheric ozone hole. Truth be told, this doesn't occupy a whole lot of your attention, and you are without much enthusiasm twiddling the dial on your short-wave radio, hoping to pick up something to get you to the next hour. You're about to settle into a Chilean weather report when the radio suddenly stops working -- just static.

Then through the clicking and squealing you hear quite distinctly:

"Greetings, carbon-based creature!"

The surprising part is that the voice is a dead-on match for Mr. Rogers.

First contact! You grab your microphone. What can you say now, at perhaps THE critical juncture in human history? Amazingly, you can still think logically, and you consider that if "carbon-based" is worthy of alien comment, then ....

"Greetings," you respond, "non-carbon-based creature!"

"Very good!" chuckles Mr. Rogers.

Now what? Should you try to reach the Strategic Air Command to warn about flying saucers soon to hover over Washington? You decide to take instead the historic path towards friendly encounter.

"How is it going on Alpha Centauri?" A wild guess, you admit, but who knows?

"I am sorry," the alien responds. "Please provide the missing antecedent of the impersonal pronoun you used and I will be able to describe its mechanism of locomotion."

Hmmmmm. This is going to be more difficult than you thought.

"Never mind... How are things on your end?"

"Anterior or posterior?"

"...???."

Commentary

As you can see, English may not be the language of choice for a first encounter with ETs. You may consider this an insight of little practical value, but no, we face a similar problem all the time, even now: How do you communicate with computers?

Note that this is a more difficult problem than the one you faced in the Antarctic. The alien, one would suspect, accepted that you were conscious being and could use that fact to try to figute out what you mean. Computers - at least at present - have no internal model for your mind, and without one, understanding natural human languages is impossible.

And yet, we must communicate with computers, because we need them to do what we can't do by ourselves: direct complex manufacturing processes, coordinate sprawling communication systems, analyze huge sets of biological data. You might respond, "Why do I have to communicate with a computer? I don't communicate with my toaster.. I just put in the bread and push the button. " That would be fine if we could build a machine for every task at hand. But there are too many tasks, tasks whose processes must be continuously modified. Instead we have built a general machine - the digital computer - and are left with the problem of how to tell it what we want it to do.

We need a well-defined, formal language.


 

To some extent, English is a formal language. It has forms. For example:

It is also recursive - forms can lie within forms - leading to the possibility of endless variation. For example:

Nonetheless, English is a mess. To talk to a computer, we need something much more regular and unambiguous. Let's start small, building a language that ought to provide the best chance of allowing humans to speak to computers. It will have the following properties:

  1. It will be English-like (to accomodate us)
  2. It will have strict syntax (so the computer knows exactly where to find the subject, where to find the verb)
  3. It will be allow recursive forms (so we can express thoughts of some complexity)
  4. It will not require of the computer any background knowledge outside of simple addition.

From this groundwork, we'll build a language through which we can talk arithmetic to the computer. If we can't do even that, we're doomed.

Let's do it.

To be continued