Computers don't think. Thinking requires semantics, and computers lack any sense of meaning. Computers operate by logical implication; thinking operates by semantic entailment.

There are two kinds of languages, formal and informal. Informal languages rely on both semantics and syntax to construct intelligible thoughts. Formal languages have a special property which allows us to use either syntax or semantics to get a sentence. But that’s a long way from a thought expressed in a natural language. Let’s take a little trip through mathematical logic, the linguistics of mathematics.

A formal language is defined by three things:

  • lexicon which unambiguously defines the set of ‘words’ in the language. We call these words symbols. A formal lexicon completely defines the symbols allowed in the formal language.
  • We also need a notion of sentences derived by syntax rules. A sentence of a formal language constructed properly according the the grammar rules of the syntax is called a formula.
  • Finally, we require a semantics which correlates symbols and their meanings.

Mathematical logic considers two fundamental questions about such formal languages.