Logic and Language

Logic and Language

Copyright © James R Meyer 2012 - 2016 www.jamesrmeyer.com

This page is keyboard accessible:

• Use**Tab**, **Shift + Tab **keys to traverse the main menu. To enter a sub-menu use the **Right Arrow** key. To leave a sub-menu use the **Left Arrow** or the **Escape** key.

• The**Enter** or the **Space** key opens the active menu item.

• To skip the menu and move to the main content, press**Tab** after the page loads to reveal a skip button.

• To get back to the top of the page anytime, press the**Home** key.

• For more information, click here: Accessibility Close this tip.

• Use

• The

• To skip the menu and move to the main content, press

• To get back to the top of the page anytime, press the

• For more information, click here: Accessibility Close this tip.

Note: Full functionality of this web page requires JavaScript to be enabled in your browser.

Here we will show that it is possible to have a list of real numbers where there is no logical reason to suppose that a Diagonal number can be defined from that list. Before we get into the details, we will first have a short digression on functions. Consider a simple example of a function that maps every natural number to an even number. The expression ‘**2 × x**’ is such a function, where **x** is the free variable of the function. When we substitute the variable **x** by a specific number, then we get another expression, for example:

for **x** substituted by **3**, we have the expression ‘**2 × 3**’

for **x** substituted by **7**, we have the expression ‘**2 × 7**’

for **x** substituted by **23**, we have the expression ‘**2 × 23**’

Now, as long as we correctly use the rules of the mathematical language to which these expressions belong, there are other expressions that have equivalent values, for example:

**2 × 3 = 7 - 1 = 6**

**2 × 7 = 11 + 3 = 14**

**2 × 23 = 23 + (4 × 5) + 3 = 46**

In common mathematical parlance, we might write:

**f****(2) = 2 × 3 = 6**

**f****(7) = 2 × 7 = 14**

**f****(23) = 2 × 23 = 46**

where ** f(23)** is simply an expression that also represents the expression ‘

A crucial point to note here is that, of itself, *in isolation*, the expression ‘**2 × 23**’ does ** not necessarily** have a value of

We now proceed with the Diagonal argument, without including any Platonist assumptions that there ‘exist’ any ‘actual’ real numbers or ‘actual’ lists of numbers. First we describe a function that defines all of the real numbers that are expressible in some specific language. This language is a mathematical language with a well defined alphabet of symbols, and is capable of expressing real numbers, some of which will be irrational numbers. We are going to call this the language ** L**. Given the complete alphabet of language

Obviously this list includes every expression of language ** L** that evaluates in language

As is demonstrated in Real numbers and Language, such a function cannot be defined in the language ** L** itself. However, we can have a meta-language that can make statements about the language

And provided the language ** H** has sufficient expressiveness, there can be an expression of language

We will call this partial list ** List** and we call the

For the language ** H**, this is a simple expression, since it follows a simple pattern and ignores any meaning that is attached to the symbols by the language

Now consider what happens if we try to apply the Diagonal argument to this partial list. Central to the Diagonal argument is the assertion that if there is a list of real numbers, then the Diagonal argument defines a Diagonal number, a number that is not in the list. Logically, it must be possible to clearly define that definition of the Diagonal number in some specific language; otherwise it cannot be a logical definition. It might be worth noting that Cantor himself accepted that definitions of numbers must be unambiguous. (Footnote: ‘*One is only obliged with the introduction of new numbers to give definitions of them through which they achieve such a definiteness and possibly such a relation to the older numbers that in given cases they can be distinguished from one another. As soon as a number fulfills all these conditions, it can and must be considered in mathematics as existent and real.*’ Georg Cantor: ‘Über unendliche lineare Punktmannigfaltigkeiten’, Mathematische Annalen 5, 21 (1883) pp 545-586.)

Clearly, in this case, the Diagonal number is not defined in language ** L**, since the Diagonal number is defined in terms of the list and the list is defined in language

*The Diagonal number is defined by defining its **n*^{th} digit to be**0** *if the n^{th} digit of List(n) in binary notation is*

This may appear quite convincing at first glance. But in such a glance we are making a Platonist assumption that every ** List(n)** is referring to some ‘actual’ real number that ‘exists’ independently of

Well, ** List(**1

Now, according to the rules and grammar of language ** H**, the symbol combination of language

The important point here is that when we talk about the ‘**n**^{th} digit of ** List(n)** in binary notation’, we are not actually referring to the

Now, ** List(**1012581

Clearly, whatever way we might be trying to define the Diagonal number, we aren’t actually defining the Diagonal number in terms of the **n**^{th} digit of that particular symbol combination of language ** L**. No, we are trying to define it in terms of the

For example, in our standard mathematical language, **1.34656**, ** ^{36}⁄_{59} + 37^{5}**, and

It can be very difficult to shake off the normal assumption that every mathematical expression is intended to be an expression of our standard mathematical language. But what, for example, might an alien visitor make of such expressions on his first acquaintance? To him they would just be meaningless squiggles; in the language of the alien visitor, those expressions have no mathematical value whatsoever - neither as a rational nor as an irrational number.

In precisely the same way, symbol combinations of language ** L** are, as seen by the syntax of language

*‘the numerical value in the syntax of the language H of the numerical value of the symbol combination of the language L (according to the syntax of language L) that is represented by List(n)’.*

Yes, this is starting to get rather convoluted, but if we are to give a proper logical analysis of the Diagonal proof and the associated secondary argument we cannot simply ignore inconvenient details, however intricate they may be. If an analysis turns out to be complicated, we have to follow through on the details, rather than simply ignore them.

Assuming that there is such a function as referred to above, we will call this hypothetical function ** Translate[x]**, where

It might now appear that the Diagonal number can now finally be defined in terms of the **n**^{th} digit of ** Translate[List(n)]**. But that assumes that there can always be a valid definition of a function

We note at this point that presentations of the Diagonal proof and the associated secondary argument make no mention of such a function, nor how one might begin to make a precise definition of such a function.

And we note at this point that in this analysis we are merely demonstrating that there can be a partial list of real numbers for which the Diagonal proof, * as it stands* and without invoking Platonist assumptions, fails to define a Diagonal number. Since the Diagonal proof and the associated secondary argument fail to provide any logical proof of the existence of such a function

We can see now that the secondary argument of the Diagonal proof, which is commonly referred to as a simple and trivial proof, is in fact a proof that hides a mass of complexity behind a facade of simplicity. When divested of its Platonist assumptions, the secondary argument fails to define the Diagonal number, and it fails to give the commonly accepted result.

It may appear counter-intuitive that the Diagonal proof fails to provide a logical definition of the Diagonal number for our function ** List(n)**. But the history of mathematics teaches us that we should never ignore logic in favor of intuition. Looking at it objectively, we can see that there are simple reasons why it appears counter-intuitive.

One reason is that it appears counter-intuitive is that we can look at some expression of a language such as language ** L**, and we can work out what the equivalent value is in some other language. But, and this is the all-important but, we only ever do this with a finite number of expressions, and when we do this we move in and out from one language to another. Which is all very well for a finite number of instances, but defining that for infinitely many instances is a different matter completely. So, yes, we can process part of some list of real numbers, and we can produce some rational number from part of that list. So what? That isn’t producing the desired Diagonal number from

Another reason is appears counter-intuitive is that the idea of actually providing valid logical definitions rather than relying on intuitive notions about limitless amounts of information is probably quite a novel concept to many people. This is the result of years of Platonist mathematicians disseminating Platonist beliefs rather than strict logic. The bottom line is that regardless of intuition, we have shown that the secondary argument that is commonly attached to the Diagonal argument does not stand up to logical scrutiny, and it cannot provide logical definitions for its vaguely described notions.

If a Platonist might try to rescue the situation by claiming that a hypothetical function ** Translate[x]** (as discussed above) might ‘exist’, and which would match up every item in

This appendix gives a further analysis of the hypothetical Translate function referred to above, and is intended to be read in conjunction with the above.

The reason why such a function is very implausible is similar to the reason that we can’t have an expression in a language which is a function that lists all the irrational numbers of that language.

Recall that irrational numbers are defined by expressions that include non-digit symbols, and that for any given language, there is no inherent limit to the quantity of non-digit symbols that there might be required to define an irrational number.

If there could be an expression that is the function ** Translate[x]**, it would be an expression that has a finite quantity of non-digit symbols as well as the free variable

To prove that it must always be possible to define a ** Translate** function in a meta-language

It might also be noted that would be straightforward to define a ** Translate** function in a language that is a meta-language to

It might be speculated that perhaps there might be some other function, rather than the ** Translate[List(n)]** function, that could calculate the

Footnotes:

Diverse opinions and criticisms are welcome, but messages that are frivolous, irrelevant or devoid of logical basis will be blocked (comments will be checked before appearing on this site). Difficulties in understanding the site content are usually best addressed by contacting me by e-mail. Note: you will be asked to provide an e-mail address - this will only be used to notify you of replies to your comments - it will never be used for any other purpose, will never be displayed and does not require verification. Comments are common to the entire website, so please indicate what section of the site you are commenting on.

If you cannot see any comments below, it may be that a plug-in on your browser is blocking Disqus comments from loading. Avast anti-virus in particular is known to do this, especially with Internet Explorer and Safari. See Disqus Browser plug-in/extension conflicts or Why isn’t the comment box loading?.

Please wait for comments to load …

There is a new addition to the page Yet another flawed incompleteness proof, where Berto’s proof of incompleteness in his book *There’s something about Gödel* comes under scrutiny.

I found that making, adding or deleting footnotes in the traditional manner proved to be a major pain. So I developed a different system for footnotes which makes inserting or changing footnotes a doddle. You can check it out at Easy Footnotes for Web Pages (Accessibility friendly).

I have now added a new section to my paper on Russell O’Connor’s claim of a computer verified incompleteness proof. This shows that the flaw in the proof arises from a reliance on definitions that include unacceptable assumptions - assumptions that are not actually checked by the computer code. See also the new page Representability.

There is now a new page on Chaitin’s Constant (Chaitin’s Omega), which demonstrates that Chaitin has failed to prove that it is actually algorithmically irreducible.

Flawed proofs of the Diagonal Lemma by Panu Raatikainen and Vann McGee have been added to the Diagonal Lemma web page.

16th Mar 2015 Bishops Dancing with Pixies?

23rd Feb 2015 Artificial Intelligence

31 Mar 2015 Cranks and Crackpots

For convenience, there are now two pages on this site with links to various material relating to Gödel and the Incompleteness Theorem

– a page with general links:

– and a page relating specifically to the Gödel mind-machine debate:

All pages on this website are printer friendly, and will print the main content in a convenient format. Note that the margins are set by your browser print settings.

Note: for some browsers JavaScript must be enabled for this to operate correctly.

Comments on this site are welcome, please see the comment section.

Please note that this web site, like any other is a collection of various statements. Not all of this web site is intended to be factual. Some of it is personal opinion or interpretation.

If you prefer to ask me directly about the material on this site, please send me an e-mail with your query, and I will attempt to reply promptly.

Feedback about site design would also be appreciated so that I can improve the site.

Copyright © James R Meyer 2012 - 2016

www.jamesrmeyer.com