I'm not sure if this is a paradox or a nonsense or neither of both. Anyway this is the "problem" if we can call it like that:
A: B is True
B: A is False
How can you solve it?
I'm not sure if this is a paradox or a nonsense or neither of both. Anyway this is the "problem" if we can call it like that:
A: B is True
B: A is False
How can you solve it?
It is not much different from the plain liar paradox:
A: A is false
There are various more or less contrived "philosophical" attempts to resolve it, but by far the most common resolution is to deny that the statement means anything in the first place; therefore it is also meaningless to ask for its truth value.
The formalist mathematical approach to the paradox is to note that a sentence that speaks directly and explicitly about its own truth value (or, as in your original example, a set of sentences that speak mutually about each other's truth value) cannot be formalized in the systems that are commonly used as foundations for mathematics.
I fact, it is a classical result (by Tarski) that it is not possible for a sentence in formal mathematics to express "A is true" (at the same metalevel) of any (symbolically given) sentence $A$.
(See also here for additional discussion about the unwillingness of mathematics to deal with such self-reference).
This does indeed belong to the Liar-paradox family. But I'd dissent from Henning Makholm's rather quick remark that "by far the most common resolution is to deny that [Liar statements] mean anything in the first place". I don't think this is in fact at all common these days either among logically minded philosophers or among philosophically minded logicians. For some of the options for responding to Liar paradoxes, see e.g. http://plato.stanford.edu/entries/liar-paradox/
Here's one reason why the "meaningless" strategy looks difficult to consistently pull off. Consider the statements
These are surely, by any normal standards, perfectly ordinary statements, which are perfectly meaningful in English. And in benign circumstances (Nixon's and Dean's statements are clear, unambiguous, etc.) are straightforwardly true or false. Yet they can give rise to paradox. What if, most unfortunately, Dean says fifty one things about Watergate, namely he says (1) plus twenty five plain truths plus twenty five plain falsehoods. Meanwhile (you can see where this is going!) Nixon also says fifty one things about Watergate, he says (2) plus twenty five plain truths and twenty five plain falsehoods. In these circumstances, we cannot give stable truth-values to either (1) or (2) -- think about it!
Trouble! And the trouble can't plausibly be resolved by saying that (1) and (2) are meaningless, ill-formed claims. We'd understand them perfectly well in the newspaper. It is precisely because they are meaningful that we see that -- in these very special circumstances -- we can't assign them stable truth-values. (And it seems unattractive to suggest we should deal with the "classic" Liar paradox by the "it's meaningless" gambit, while giving a different resolution for this kind of more "accidental" paradox.)
The Nixon/Dean example is, of course, Saul Kripke's. Kripke's own response is described in §3.2.1 of http://plato.stanford.edu/entries/self-reference/
The fact that may be surprising at first is that natural-language methods for reasoning about truth values are just not consistent with the assumption that every sentence is either true or not true, but not both. For example, if we analyze the statement
This sentence is not true
we find that if it is true then, as it says, it is not true, and if it is not true then, because it says it is not true, it is in fact true. This is a genuine "semantic paradox": it shows that the usual way we would reason about truth values in English is problematic.
As Henning Makholm has explained, the way that we usually avoid this in mathematics is to use formal systems, rather than natural-language reasoning. These formal systems are more limited than natural languages in what they can express, but this limitation is sufficient to make them consistent.
There are two other paradoxes that are less well known but worth knowing:
Yablo's paradox obtains a semantic paradox without any self reference. The paradox consists of an infinite sequence of sentences each of which only refers to the later ones. But there is still no consistent way to assign truth values to all the sentences.
Curry's paradox uses a sentence of the form "If this sentence is true then P" where P can be an arbitrary (fixed) proposition. This sentence is actually provable using normal natural-language methods regardless of what proposition is used for P (which another sign that natural-language methods are inconsistent).
It is also worth knowing that the use of the word "this" can be eliminated. For example,
The result of appending the following phrase after itself in quotes is false: "The result of appending the following phrase after itself in quotes is false:"
This phrase does not directly refer to itself, but if you perform the construction that is described you will arrive at the sentence you started with. This general method was explored by Carnap and was used by Gödel to prove his incompleteness theorems.
There are several ways to "avoid" the paradoxes, but they all rely on somehow reducing the ability of a system to perform the paradoxical deductions that can be performed in usual natural-language reasoning. There are axiomatic theories of truth that keep classical logic but reduce the way the truth predicate ("X is true") can be used, and there are paraconsistent logics that, though they are classically inconsistent, prevent "local" inconsistencies from spreading elsewhere, by restricting the deduction rules that can be used. But there is no resolution of the paradoxes that maintains all the features of normal natural-language reasoning - this is why they are genuinely paradoxes.
As a programmer I would concluse this problem as following:
A: B is True
B: A is False
A = (B = TRUE)
B = (A = FALSE)
Let's try explaining it mathematically with solving A.
A = (B = TRUE) | INSERT B
A = ((A = FALSE) = TRUE)
A = A = FALSE = TRUE
A = FALSE = TRUE
... but A cannot be FALSE and TRUE at the same time. I.e.
A = FALSE ≠ TRUE
⇒ A CANNOT BE SOLVED.
If A cannot be solved, then B should also be unsolvable. Let's check:
B = (A = FALSE) | INSERT A
B = ((B = TRUE) = FALSE)
B = B = TRUE = FALSE
B = TRUE ≠ FALSE
⇒ B CANNOT BE SOLVED.
⇒ It's recursive. You have to go to the begin (1) again.
A refers to B, to its own referent. So A is referring to itself. This semantic paradox is also known as liar paradox.
A or B has to lie. Then the approach above is solvable. Or you have to spend the rest of your life searching for a mathematical solution. You won't find. ;-)
The combined statements do indeed form a paradox. To check that, note that if $A$ is true, then $A$ is false, and vice versa.
This kind of statements may look nonsense when you see first time. In mathematics these kind of situations occurs a lot of times. The famous Russell's Paradox contains this kind of argument and gets a paradox.
As a programmer I would explain this as a recursion. When you talk in B
about A
, you are calling function isTrue(A)
, which in turn calls isTrue(B)
. If you try to estimate from outside one of the two sentences, you have infinite recursion.
That is why I would say that the sentences are passing the functionality but not making statements by themselves. Therefore, they can not be taken as separated statements.
P.S. Reminds me about the card where you write "Turn the card around!" on the both sides of a card and give it to someone naive.
Allow me to interpretate your "problem"...
A: B is True
B: A is False
It says that A
has the same truth value of B is True
. That is, if B is True
is True then A
is True and if B is True
is False then A
is false. Also B
and A is False
have the same relationship.
Now, Of course, B is True
will be true, if and only if, B
is True. Similary A is False
will be True, if and only if A is False
.
By the above means we can restate the "problem" like this:
A <=> (B <=> True)
B <=> (A <=> False)
At this point, we could reduce B <=> True
to just B
and also reduce A <=> False
to ¬ A
. That will result in saying:
A <=> B
B <=> ¬A
And then:
A <=> ¬A
And that was a good experiment. Yet that only works if we are using only two truth values. Instead I want to solve this for any set of truth values that includes True and False. So let's get back to my original restatement:
A <=> (B <=> True)
B <=> (A <=> False)
And now, in the first expression we are going to replace B
by its equivalence:
A <=> ((A <=> False) <=> True)
Ah, that's a recursive expression. It says that in order to know the truth value of A
we first need to know the truth value of A
.
So, let's test possible truth values of A
:
A
is True, then A <=> False
is False and therefore (A <=> False) <=> True
would be False.A
is False, then A <=> False
is True and therefore (A <=> False) <=> True
would be True.Clearly, it can't be solve with only True and False. So, I'll turn to Three-valued logic. Let's call the third logic value Unknown and it is defined as follows:
(Unknown <=> ¬Unknown) <=> True
Yes, we are using Kleene's logic. Now if A
is Unknown, then A <=> False
would be Unknown and therefore (A <=> False) <=> True
would be Unknown.
So, in Kleene's logic the value of A
is Unknown (And B
is also Unknown).
Yet, actually what I have just demostrated is that the value of A
can't be True and that the value of A
can't be False. So we are left in the realm of Three-valued logic, fuzzy logic and similars to assert the matter.
Wait! the matter is not over. You'll see, I've expressed the problem using equivalence to avoid the matter that you are using expressions that talk about expressions. And there are other ways to resolve that...
A good way to solve this is by noting that any statement is automatically saying that itself is true. For example, if I say:
Dogs are animals
It is equivalent to say:
It is true that dogs are animals
And there I have an expression that talks about expression. It is saying that the expression dogs are animals
is true. Let me put it another way:
X: Dogs are animals
Y: "It is true that Dogs are animals" <=> X is True
X <=> Y
----------
X <=> X is True
By similar means we can also say:
What I say is True: dogs are animals.
And it should also be equivalent. Leading us to:
Z: What I say is True: dogs are animal
Z <=> X
Of course, Z in its current form isn't good to work with. We need to get rid of the colon (":") which actually is just enunciating what is being said:
Z: What I say is True AND I say dogs are animals
Now, we can replace X
Z: What I say is True AND I say X is True
And finally replace what is being said:
Z: (X is True) is True AND X is True
Since we have seen that X
is equivalent to X is True
, we can reduce it:
Z: X is True AND A is True
And reduce it again:
Z: X AND A is True
We could, evidently reduce it down to Z: X AND X
which shows that X <=> Z
(which is where we started). But that's not the intention of that exercise. The intention is to show that any statement X
can be reexpresed as X AND X is True
.
Thanks to that, we can restate your "problem" like this:
A: B is True AND A is True
B: A is False AND B is True
Should we replace in the first statement B
with its equivalence? Sure:
A: (A is False AND B is True) is True AND A is True
Now, let's reduce it:
A: A is False AND B is True AND A is True
Hmm... reorder it for clarity...
A: A is False AND A is True AND B is True
Ah, we have A is False AND A is True
which evidently is False, so let's replace it:
A: False AND B is True
That False nullifies the conjunction. So...
A: False
And now we can replace it in A is False AND B is True
:
A: False
B: A is False AND B is True
---------
B: False is False AND B is True
Well, False is False in deed. So:
B: True AND B is True
That's idempotence right there, so we can reduce it:
B: B is True
Well... I don't know if B is True. Let's try possible values:
B
is True then B
is True is True.B
is False then B
is True is False.So, B
can be either True or False. Or can it? Really B: B is True
is not giving us any useful information, it just like x = x
. Yet, we have showed that A
is False and sice A
is defined as B is True
we can deduce that B
is not True. If we are confined to only two truth values, then B
must be False.
In that case, we don't have a paradox, just a fallacy.
Still even if B
is not True it doesn't mean it is False because it may mean that you should use more truth values.
Wait again! At the first part we showed the value of A can't be False. Let's remember why...
If A were False that would mean that:
B: A is False
Is True, so:
A: B is True
Is also True, contradicting our initial assumptions. What does this mean?
This means that our mechanism to extend A: B is True
to B is True AND A is True
is flawed. And therefore our conclution that A is False
is also flawed.
At this point I could invoke the easy way out and say that A is Undefined, which just a way to say that asigning any value to it causes consistency problems (ie. It introduces contradictions).
But there is one more thing I want to do. Allow me to get back to this expression:
A: (A is False AND B is True) is True AND A is True
Now, What would happen to it if B
were Unknown?
A: (A is False AND Unknown) is True AND A is True
=>
A: A is False AND Unknown AND A is True
=>
A: A is False AND A is True AND Unknown
=>
A: False AND Unknown
=>
A: False
Does it mean that A
is False because B is True
is False because B
is Unknown?
I'll leave you at that.
There is a Calculus of Self Reference (CSR) in which this "problem" could be validly stated; the CSR (which is an extension to the Calculus of Indications (COI)) is a system for dealing with expressions, or systems/sets of expressions in which there is self reference -- as there is with your problem.
The calculus defines three states:
where the autonomous state is equal to its own complement.
These three states/values can be used as a three-valued logic (the COI can be used for boolean), but the CSR goes more in-depth than that, defining how nesting is handled. The marked state acts not only as the "true" value but also as the complement operator! The autonomous state acts similarly, but points inwards to the self-referenced value. It's crazy stuff.
If you're interested I'd start with the COI, but be prepared for a head trip!
The system of equivalences
$$A \equiv B$$ $$B \equiv \neg A$$
does not have a solution, let alone a unique one, so we cannot use these conditions to implicitly define $A$ and $B$.
I've found most satisfactory (i.e. true) the interpretation that each sentence implicitly states that is true.
Meaningful interpretation presumes true premises. The statement A:A is false converts to 'A is true and A is false' rendering it meaningless. In that sentence we are not talking about anything that exists. We are talking about nothing.
Sadly this interpretation also invalidates many branches of mathematics and e.g. the classical Banach-Tarksi -paradox, which btw was rejected by the founders due to the same idea that mathematical truths should also corresponds to reality.