# Gödel Numbers and Lojban

Now we can construct Gödel numbers for any Lojban text.

Therefore, if we can prove that the lojban grammar & morphology is expressible using lojban MEX pertaining to the Gödel numbers, then, according to Gödel's proof (1931), it would be proven that there exist lojban sentences that cannot be proven grammatically/morphologically correct using a proof expressed in lojban. (not like na nei, mind you, correctness on the syntactical view is meant).

• OK, but na nei was the kind of sentence whose equivalent Gödel use to blow up sign systems semantically... And given that Lojban's grammar & morphology seems to be parsable using DFAs (Deterministic Finite Automaton), I am pretty sure that it is expressible with arithmetical statements and therefore MEX. Of course, this is an annoying conclusion, because we feel that Lojban is very able to fully express its own syntax. But on the other hand, if this conclusion proves to be false, then it would mean that Lojban's grammar & morphology is not fully parseable using DFAs. And because we already know that the grammar is (it is YACC-defined), it would mean that the morphology is problematic. (which I was already pretty sure of, dunno why ;-).
• Although I may have not been precise enough for a mathematical proof, I am sure that lojban's claim about being a "logical language" should entail discussions involving Gödel's statements about logic.
• xod:
Very interesting; the limits of Lojban! I lack the mathematical power to join the discussion, but I am extremely interested in the conclusions!
• Jay Kominek:
I believe Richard Curnow has mentioned before that the DFA for handling Lojban morphology has somewhere between 900 and 1000 different states, and can't reliably be human-generated. Instead, he describes it with a NFA (Non-Deterministic Finite Automaton) and then converts the NFA to a DFA. Lemme tell 'ya, the NFA is hideous, too. The whole point of this is to point out that while the grammar can be proven, nobody is seems sure about the morphology yet).
• Correct me if I misunderstand, but the conclusion would be that Lojban's grammar and morphology cannot be expressed by mekso or any other formal system, though the grammar and morphology could still be fully expressed using informal statements in Lojban.
• Of course, as well as with informal statements in any other language.
• But the point is, Lojban is supposed to be parseable using computers, which means that its syntax ought to be fully expressible in computer terms, and thus mekso. It would be a major lose (correct me if I'm wrong) in regards to Lojban's goals...
• rab.spir:
• So this seems to be saying that either Lojban's morphology is vague in some area, or there are grammatically correct sentences which cannot be proven to be grammatically correct. Why do you assume it is the first? Number theory, a very powerful language indeed, contains true statements which cannot be proven. Why should we expect Lojban to be different? Consider that these sentences which cannot be proven to be grammatically correct are going to be huge, monstruously long sentences. I don't think this defeats any of Lojban's goals.

More information and clear explanation about this stuff can be found in Gödel, Escher, Bach by Hofstadter (see previous paragraph)

The class of languages to which Lojban's grammar belongs is well

understood. Assuming you can properly decompose a string of sounds or

symbols into their separate words, there is no string of words for which

membership in the language is undecidable. Whether or not that holds for

the morphology seems to be unproven at this point. Maybe the LLG should

investigate this and maybe stick their seal of approval on something as

the official machine description of the morphology? Maybe I should snarf

the lexer out of the official parser and see what it looks like...

--Jay

The lexer in the official parser is weak: about all it can do is divide

compound cmavo. It is not a full implementation of the morphology

algorithm.

We can decide whether the string is grammatically correct using

YACC. However, in the situation which started this discussion, we

don't have the option of using YACC. You have to use the numerical

rules, expressed in mekso, which determine whether a sentence is

grammatically correct. The implication of this is that there exist

monstrous sentences, probably involving mekso which include the

Godel numbers of other Lojban sentences, which cannot be proven to be

grammatically correct using those mekso rules. If you don't believe me,

read Gödel, Escher, Bach and all will become clear. --rab.spir

...And is it possible to change the title of this discussion? Done

Now that I finally have my own copy of Gödel, Escher, Bach, I've

looked into how Gödel-incompleteness works - and I don't believe

Lojban is affected by it. Mathematics (and particularly systems such

as Typographical Number Theory) attempt to determine which statements

are true and which are not in a formal way; these systems are incomplete

because it is possible to create statements which imply their own

falsehood.

Lojban, on the other hand, does not attempt to distinguish the true from

the false mathematically. It only distinguishes the grammatically

correct from the grammatically incorrect. For Gödel-incompleteness to

apply to Lojban, there would need to be a sentence for which

demonstrating it to be grammatically correct somehow required that it is

grammatically incorrect - without any regard to the meaning of the

sentence. I don't think that grammar alone can imply anything of the

sort.

points to a theorem saying that the correctness of a theorem in a

sufficiently powerful system cannot be recognized by a Turing Machine.

We know that a YACC grammar can be recognized by a Turing

machine. I believe this proves that Lojban's grammar alone is not

"sufficiently powerful" to make statements about itself - which is a

good thing, because that is the job of semantics - and so is not

Gödel-incomplete.

Erm. Ok. Again, forget YACC, think LALR(1). Turing machines can

determine if any sentence does or does not belong to a LALR(1) language,

in polynomial time, given memory proportional to sentence length. The

question, then, is whether or not Lojban can express a Turing machine

for recognizing itself. C is capable of constructing a Turing machine

for recognizing itself, and thousands of other languages, and it has

significantly fewer primitives than Lojban. (Further, C can express

Turing machine rules for manipulating the semantics of itself) I'm

confident that if you were bored enough, you could describe, using

Lojban (and maybe even just MEX), a Turing machine which recognized

Lojban. Maybe, though, I'm misinterpreting what the conundrum is.

--Jay

Yes, and that is why neither C nor Lojban is Gödel-incomplete at this

level. Number theory is incomplete because it can mathematically

determine whether statements are true or false, which necessitates that

there are statements whose truth cannot be determined by number theory.

Lojban cannot mathematically determine whether statements are true or

false. Its mathematics only go as far as recognizing whether a statement

is grammatically correct or not. Hence, the mathematical structure of a

statement cannot make a statement about itself, and so no Gödel

sentence exists in Lojban. Similarly, it can be determined in C whether

a given C program (as long as it doesn't do weird stuff with the

preprocessor) will compile, because the act of being compiled does not

allow the program to make statements about itself.

You could go to a higher level and find incompleteness. For example, you

could set up a sub-grammar in MEX - not just the number subgrammar

we already have, but one which would sort out true mathematical

statements from false ones. This grammar would not be LALR(1). Then

if you tried to describe this system using itself, you would have a

Gödel-incomplete system. The system would be number theory, except

with Lojban cmavo instead of mathematical symbols.

On the same level, C (or any computer language) is

Gödel-incomplete when it comes to determining whether a program will

halt, because there the mechanism used to determine whether the program

halts is the same mechanism that the program uses.

It comes down to the grammatical/semantic distinction which is mentioned

at the very top of this discussion. If you take the semantics out of

Lojban (and assume that semantics includes the meaning of statements

made with mekso), you cannot express anything. So, in order for Lojban

to make statements about itself, it has to do so at the semantic level.

If you create a mathematical system which can process Lojban at the

semantic level, you have an AI, and no longer something which is defined

by the language itself; and to confuse this AI you might only need to

say na nei.

(If I were Hofstadter, I would be able to phrase this much more

clearly.)

Well, I've acquired GEB, will read that, and from there investigate the

original papers as needed to grok this topic, and then return. :)

--Jay