# Something that looks like a contradiction in ZF

## Recommended Posts

This shows something that appears to be a contradiction in ZF:

(Note that by set-definition I mean it's numeric code, in an encoding such as Godel's encoding.)

What the heck? What's wrong?

---

It seems I understood why the error:

S is a function in a model of ZF, not in the formal system the proof is written. So, it's illegal to use it in the proof.

That's a very beautiful sophism.

What happens if we try to define S inside ZF? It should fail (unless ZF is contradictory). But how does it fails?

That is an practically useful question, because I really made this error today.

---

Digging deeper: If we would be able to prove that S exists, this would be enough to trigger the contradiction in ZF.

If we attempt to prove its existence, we try to map the set definition { x in A | P(x) } into the corresponding set, but we to fail to do that.

Note that this paradox is pertinent not to only to ZF but even to predicate logic:

Let P be encoding of a one-variable predicate. Then define the one-variable predicate S(Q) encoded by Q as S(Q)(P) <=> not (S(P))(P). Then S(Q)(Q) <=> not S(Q)(Q).

Oops! Mathematicians commonly do this trick: Let S be a function from some expression X of our formal system to another expression S(X) of our formal system. It is pertinent to logic studybooks! And that was an error! Possibly millions of math logic articles are wrong!

##### Share on other sites

Posted (edited)
On 6/24/2021 at 6:13 PM, porton said:

This shows something that appears to be a contradiction in ZF:

Looking at your paper, I see some issues.

1. What is a "set definition?" Do you mean a predicate? But predicates don't define sets, that's Russell's paradox. So what do you mean by a set definition?

2. You have the expression $X \notin S(X)$. But $X$ is a "set definition," whatever that is, and NOT a set; and $S(X)$ is a set. So your expression makes no sense, it's neither true nor false.

3. Likewise $M \in S(M)$, has the same problem. $M$ is a set definition and not a set; and $S(M)$ is a set.

Perhaps you can clarify, starting with what you mean by a "set definition."

Or perhaps a set definition is a specification like $\{n \in \mathbb N : n \text{ is prime} \}$. But in that case a set definition is a piece of syntax, a string in the formal language. It can't be an element of some set that the language is talking about. You're mixing syntax with semantics, formal strings with models.

On 6/24/2021 at 6:13 PM, porton said:

Possibly millions of math logic articles are wrong!

It's a plot by the publishers to sell more books.

Or: Have you seen viXra lately?

Edited by wtf
##### Share on other sites

I messed the terminology: I should have said "set comprehension" instead of "set-definition". My paradox with set comprehensions is an "improved" form of Russell's paradox. Russell's paradox applies to the pre-ZF wrong "native" set-theory, my paradox applies to the metalogic commonly used together with ZF.

BTW, a paradox similar to this applies to predicate theory, too:

Moreover, even if we consider just predicate logic rather than ZF, the error is still here:

Let P be Godel's (or other) encoding of a one-variable predicate. Then define the one-variable predicate S(Q) encoded by Q as S(Q)(P) <=> not (S(P))(P). Then S(Q)(Q) <=> not S(Q)(Q). Contradiction!

"But is a "set definition," whatever that is, and NOT a set" (should be "set comprehension"). You are wrong, because in ZF every object is a set.

"Or perhaps a set definition is a specification like {nN:n is prime}." Yes!

"But in that case a set definition is a piece of syntax, a string in the formal language. It can't be an element of some set that the language is talking about. You're mixing syntax with semantics, formal strings with models." In ZF strings are defined as a kind of sets. So it can be an element of some set that the language is talking about. I do mix syntax with semantics, formal strings with models; but that math logic authors do the same is a security hazard.

BTW, I found this "error in logic" while trying to solve P = NP. I proved P = NP, but soon found that I use this erroneous logic.

Well, then I rewrote my proof of P = NP without this error and... proved P = NP again!

Here is my proof of P = NP (please check for errors):

Humorously, I needed to edit my erroneous (by using the logic error) proof of P = NP rolling changes back after I "simplified" it using this logic error, before I produced the above (probably correct, in my opinion) proof of P=NP.

"Accordingly the legend, the way to proof of P=NP passes through a logic error."

If it happens that my proof of P=NP is correct, I did two great discoveries at once: bug report to logic textbooks and proof of P=NP.

Well, at least about the bug report, I am sure it is a correct bug report.

##### Share on other sites

Posted (edited)
1 hour ago, porton said:

You are wrong, because in ZF every object is a set.

Strings talking about sets are not sets.

1 hour ago, porton said:

"Or perhaps a set definition is a specification like {nN:n is prime}." Yes!

Well the set of primes is a set. But the string "n in N such that n is prime" is not a set! I agree that the string has a Gödel number, and you can assert that collections of Gödel numbers are sets, but I don't think you can ask if "n in N such that n is prime" is an element of the set of primes.

1 hour ago, porton said:

In ZF strings are defined as a kind of sets.

Well yes all the statements have Gödel numbers but I don't think it works this way. I'm out of my depth on Gödel numbering here so maybe you can explain why you think it works this way.

1 hour ago, porton said:

If it happens that my proof of P=NP is correct, I did two great discoveries at once: bug report to logic textbooks and proof of P=NP.

I hope you get the million dollars. I confess that I'm annoyed at myself that I can't say exactly why your argument is wrong. If only I'd worked harder studying Nagel and Newman back in the day.

Edited by wtf
##### Share on other sites

"Strings talking about sets are not sets."

String talking about sets are sets in a metalogic, that is in another "instance" of ZF. So, it seems that we need to differentiate between different instance of ZF... Math logic book authors don't enforce this rule in their metalogic. This is an error. Error of them.

"But the string "n in N such that n is prime" is not a set!"

True, but the string "{ n in N : n is prime }" is a set comprehension.

"I don't think you can ask if "n in N such that n is prime" is an element of the set of primes."

The string "n in N such that n is prime" is an element of the set of numbers (if we encode strings in numbers). So, in this sense, we indeed can ask if "n in N such that n is prime" is an element of the set of primes. So, the issue is in which logic we can and in which logic we can't ask this. Textbook authors assume we can ask questions like this in ZF metalogic, and that leads to a contradiction, as I showed below.

"Well yes all the statements have Gödel numbers but I don't think it works this way. I don't think my knowledge of Gödel numbering is good enough to point out exactly what's wrong with your argument."

I don't understand you.

"If I help you can I share the million dollars?"

How are you going to help? If the help is great, sharing say $500000 may be reasonable. ##### Link to comment ##### Share on other sites Posted (edited) 12 minutes ago, porton said: How are you going to help? If the help is great, sharing say$500000 may be reasonable.

You replied before I edited that out. I actually don't think I can help. I agree with you that $\{n \in \mathbb N : n \text{ is prime}\} has a Gödel number, which in fact is not prime (since it will be the product of a bunch of prime powers). Aha I have a bit of insight. if [math]S$ is a statement in the language of set theory, let $G(S)$ be its Gödel number. Let $P$ be the set of primes.

Then $G(\{n \in \mathbb N : n \text{ is prime}\}) \in P$ is a valid statement with a definite truth value, which in fact we can determine to be False.

But $\{n \in \mathbb N : n \text{ is prime}\} \in P$ is NOT a valid statement, because it mixes up the metalanguage with the model. I think if you rewrite your argument, including the notation $G(S)$ whenever you intend to take some sentence's Gödel number, the error in your argument will be more clear.

So I can restore my edit. I think I did help you. Let me know when you get the million. My contribution is worth at least a few bucks.

Edited by wtf
##### Share on other sites

"But {nN:n is prime}P is NOT a valid statement, because it mixes up the metalanguage with the model."

You are wrong: $X\in Y$ where $X$ and $Y$ are sets is always a valid statement.

##### Share on other sites

Posted (edited)
4 minutes ago, porton said:

"But {nN:n is prime}P is NOT a valid statement, because it mixes up the metalanguage with the model."

You are wrong: $X\in Y$ where $X$ and $Y$ are sets is always a valid statement.

Aha. I did help you. I am pointing out your specific error. You are not asserting the question of whether one set is an element of another. You are interpreting the left hand side as a string that specifies a set. That's your error. You're equivocating "n in N such that n is prime" as a specification, on the one hand, and as a set, on the other. That is YOUR error, not an error in logic books. The logic books DON'T make that error.

If it's a string, then you have to take its Godel number to ask if it's prime. If it's a set, you don't. But you can't have it both ways at the same time.

Edited by wtf
##### Share on other sites

@wtf You misunderstood me, I do not want spend time to explain why it is correct.

You can check yourself by writing a first-order predicate calculus software.

I don't want to spend time on explaining this.

## Create an account or sign in to comment

You need to be a member in order to leave a comment

## Create an account

Sign up for a new account in our community. It's easy!

Register a new account