Over-thinker wrote:I think the way you explained it is the most logical way we can reach from a programming point of view
if we let 0='false' and 1='true'
the statement is as the following
A='A=0';
notice that
...
A = A = 0;
Over-thinker wrote:the logical misconception that makes us think that this is a paradox is that we are trying to equate between A inside the statement which has no meaning because it's a part of a sentence, and A outside the statement which is a variable
So the two A's are two different kinds of inputs! which can't be equated logically
it looks like programming teaches us how to think right !
Over-thinker wrote:This is the MATLAB language , and in MATLAB language to add a text , quotation marks are used according to this:
http://www.mathworks.com/help/techdoc/ref/strings.html
in C language i think text is added as in the following link
http://cplus.about.com/od/learningc/ss/strings.htm
i think saying A=A=0 is meaningless since we could have said A=0
on the other hand the best way to express the statement of the paradox in a program is by making the statement itself a text (string), which is done by by adding two quotation marks in MATLAB language:
'A=0'
#include <stdio.h>
int eubulides() {
return ! eubulides();
}
int main(void) {
printf("0 && eubulides() is: %i\n", 0 && eubulides());
return 0;
}
Over-thinker wrote:Unfortunately, I work only on MATLAB language.
Over-thinker wrote:but i think it's not a problem of the program as it is of the philosophy of it.
The program is so simple. It's just putting the statement in a text 'A=0' and then calling this text A.
A='A=0' don't you agree?
function [o] = eubalides()
~ eubalides()
>> true || eubalides()
Over-thinker wrote:I haven't been into details of the kisper's theory yet but i have read tht it is an opposition to the Tarski's theory.
I think what iam saying is a little bit comparable to the tarski's theory though they are not the same
Tarski believes that language is an heirarchy system and only the higher in this heirarchy can evaluate the truth of the lower.
However, what iam saying is that when evaluating the truth, only one level of language has a meaning at a time, all other levels are meaningless. and as i mentioned b4 the A inside the statement and the A which is the whole statement belong to two different levels of language.
Over-thinker wrote:I think it's all a matter of ordering information and this what programming is all about: we first said that A=0 and then we called the whole statement A. so A NOW is the last A which is the whole statement and which can be true or false regardless of the statement
that's why the truth evaluation inside the text (between quotaion marks 'A=0' )is meaningless for the computer, unlike the real truth evaluation A=0 or A=1
Do you find that convincing?
xcthulhu wrote:. Suppose you declare a function like this:
- Code: Select all
function [o] = eubalides()
~ eubalides()
Now try at the prompt:
- Code: Select all
>> true || eubalides()
What will it say?
eubalides = not eubalides
main = putStrLn $ show $ True || eubalides
a = f && e
b = not (True && e) || (False && f) || d
c = not (True || a) && (b || e)
d = c || (not (c && not d) && (False && not b))
e = f || not d || not (b && not b) || b
f = not (c || d) && True
main = putStrLn $ show $ a
xcthulhu wrote:
What do you think it means for a variable in a system of equations like this to be behaving "like a liar sentence"?
B = ~ B;
xcthulhu wrote:@Over-tinker: First, you didn't answer my first question: What is the truth value of "a" in my puzzle? What are the truth values for the other variables?
I'll try to work in MATLAB for you. Like I said, I don't have MATLAB in front of me, but can you tell me if this is valid syntax?
CODE: SELECT ALL
B = ~ B;
A=1; B=1;
while(1)
if A==1;B=0,A=B,end
if A==0;B=1,end
if A==B,break;
else A=B,end
end
Over-thinker wrote:xcthulhu wrote:@Over-tinker: First, you didn't answer my first question: What is the truth value of "a" in my puzzle? What are the truth values for the other variables?
this is the way i though of it...i supposed that order is not important as could be if this is a loop (is that what you mean)
Over-thinker wrote:
- Code: Select all
A=1; B=1;
while(1)
if A==1;B=0,A=B,end
if A==0;B=1,end
if A==B,break;
else A=B,end
end
running this program on an m-file will make matlab go crazy giving an infinite series of
B=0, A=0, B=1, A=1, (u can stop it by ctrl+c)
...
i believe this program is exactly what goes on in our mind when thinking of the paradox. Do you agree?.. that's why i think that making a recursive program won't solve the misconception.
Over-thinker wrote:and for this reason, i preffered using the if statement as i did b4:
if B=1 ; A=(0&&B) ; end which gives an error if B=1 and ends the statement if B=0
xcthulhu wrote:Well, it's a programming language... so you can run the program to find out the answer:
http://codepad.org/NFoK1CQS
.
a = not a
b = b
B =
1
A =
1
B =
0
A =
0
B =
1
A =
1
B =
0
A =
0
.
.
.
??? Operation terminated by user during ==>paradox at
7
There's no one way to understand the paradox.
Over-thinker wrote:I tried to put the code i did on codepad. I wrote it in perl language which is similar to MATLAB
http://codepad.org/OM0cSaOG
but i got a (timeout) i think this is due to the infinite loop and the fact that codepad doesn't handle infinite loops.
xcthulhu wrote:I hacked your code a bit. I turned your while(1) loop into a for(;;) loop, and put in print statements so you can see that state of A and B (and I cleaned up your indentation for my own readability). As you can see your code doesn't seem to be getting the alternating truth values right:
http://codepad.org/o0YJYKTd.
Here's a simpler program that I believe does a better job of representing the paradox:
http://codepad.org/9GQNvh4j
Over-thinker wrote:I think your program is smart ! but it looks at the paradox from outside.. it's like a summary to the paradox. on the other hand mine goes through the steps that human mind passes when reading the paradox, taking into account that i used 2 variables and then made them equal since i think this is how it happens in our mind.
Over-thinker wrote:So i think each of the programs suggests a different type of solution; since each of them looks at the paradox from a different perspective.
Over-thinker wrote:regarding kripke's theory. so do you believe it solves the paradox by the third value of truth or by suggesting that the statement is (either true or false) or are both equivalent?
Owen wrote:'This statement' is an incomplete description which has no reference.
'This statement' is not a statement at all. Therefore it cannot have the property of 'truth' or 'falsity'.
Thus: there is no paradox either.
0oqpo0 wrote:False as a concept is loosely, "Other than what it is actually concluded to be".
0oqpo0 wrote:This is about evidence based common usage. We know from evidence based common usage that "this statement" refers to itself.
Martin Castro-Manzano wrote:Take the following statement, S1:
<<P and ~P>>
Is S1 false? Of course it is, for its output, using a truth table, is the vector: [0 0]. Now, take the following, S2:
<<Q if and only if ~Q>>
Is S2 false? Of course it is, for its output, using a truth table, is the vector: [0 0]. Then, S1 and S2 are equivalent. And we know both statements are false. There is no paradox in them.
DEVELOPMENT
Now take S3:
<<This statement is false if and only if it is true>>
Which is an instance of the liar paradox; however, what is the big deal about S3? Consider the following argument, A1:
1. S2 is false (just as S1).
2. S3 is equivalent to S2.
C. S3 is false.
However, it is a common assumption that S3 is a paradox. But then, we have the next argument A2:
1. S3 is a paradox.
2. S3 is equivalent to S2.
3. S2 is equivalent to S1.
C. S1 is a paradox.
CONCLUSION
Thus, if S3 is a paradox, then S1 should be a paradox, but S1 is not paradoxical at all, it is simply a well defined contradiction.
So, what is the big deal about S3, if it is a plain contradiction just as S1? What I suspect is that "paradox" is a psychological term rather than a logical one.
Lomax wrote:Hello 0oqpo0,0oqpo0 wrote:False as a concept is loosely, "Other than what it is actually concluded to be".
Would you accept Tarski's criterion of truth: that
"Snow is white" is true in English if and only if snow is white.
?
I think this is compatible with yours, it just seems a bit clearer to me.
Lomax wrote:0oqpo0 wrote:This is about evidence based common usage. We know from evidence based common usage that "this statement" refers to itself.
It might depend on quite how we define "statement"; many philosophers take a statement to be a sentence with a truth-value, or something like that. In such a case
1. "this statement"
refers only if
2. "this statement is false"
has a truth value, so I think we get ambivalence: if we take (2) to be a statement then (1) refers, and if not, not. So I actually don't mind whether to take your approach or Owen's.
[/quote]Lomax wrote:Anyway, my preferred explaining-away of the paradox owes to my friend Martin Castro-Manzano, who believes that such paradoxes are just camouflaged contradictions:Martin Castro-Manzano wrote:Take the following statement, S1:
<<P and ~P>>
Is S1 false? Of course it is, for its output, using a truth table, is the vector: [0 0]. Now, take the following, S2:
<<Q if and only if ~Q>>
Is S2 false? Of course it is, for its output, using a truth table, is the vector: [0 0]. Then, S1 and S2 are equivalent. And we know both statements are false. There is no paradox in them.
DEVELOPMENT
Now take S3:
<<This statement is false if and only if it is true>>
Which is an instance of the liar paradox; however, what is the big deal about S3? Consider the following argument, A1:
1. S2 is false (just as S1).
2. S3 is equivalent to S2.
C. S3 is false.
However, it is a common assumption that S3 is a paradox. But then, we have the next argument A2:
1. S3 is a paradox.
2. S3 is equivalent to S2.
3. S2 is equivalent to S1.
C. S1 is a paradox.
CONCLUSION
Thus, if S3 is a paradox, then S1 should be a paradox, but S1 is not paradoxical at all, it is simply a well defined contradiction.
So, what is the big deal about S3, if it is a plain contradiction just as S1? What I suspect is that "paradox" is a psychological term rather than a logical one.
This, to me, seems satisfactory, and saves us the pains of a theory of types, or stratification, or trying to figure out just what the hell Wittgenstein meant anyway.
Lomax
Lomax wrote:S1 is not paradoxical at all, it is simply a well defined contradiction.
Positor wrote:Why is it not paradoxical? How do you define "paradoxical"?
Stanford Encyclopedia of Philosophy: "Most paradoxes – but not all – involve contradictions; for such cases, we often use the word "contradiction" as well."
Wikipedia: "The word paradox is often used interchangeably with contradiction."
Positor wrote:For what it is worth, here is my take on the liar paradox:
1. The sentence "This statement is false" has a grammatical subject and predicate, so (in common parlance at least) it is a statement, regardless of whether it has a truth-value or not. It may be a nonsensical statement, but it's still a statement.
2. Hence it is legitimate to construe "This statement is false" as being equivalent to "The statement 'this statement is false' is false". This, I suggest, is how it is usually construed in discussions of the liar paradox.
3. At the first stage of the analysis, there are no existing facts to make "This statement is false" either true or false. Hence its initial truth-value is "neither"; or, alternatively, it can be said to have no truth-value at the initial stage.
4. Hence it falsely implies that it is false-at-the-first-stage. But it consequently acquires a truth-value, i.e. "false". So now there is a second stage, at which it is false. But the fact still remains that it was not false at the first stage; therefore there is no contradiction.
5. Because it was false at the second stage, it correctly states its second-stage truth-value, so it now acquires a third-stage value of "true". And so on, with infinite oscillation between "true" and "false". But the facts about any particular stage do not retrospectively alter those about previous stages. So, no contradictions.
To sum up:
(a) the statement is neither true nor false given the pre-existing facts;
(b) it is false in implying that it is false given the pre-existing facts;
(c) it is true in implying that it is false in implying that it is false given the pre-existing facts;
and so on. Statements (a), (b), (c) etc are all simultaneously true.
I don't know if I'm trying to reinvent the wheel here. Can you point me to any published 'solution' similar to the above?
Lomax wrote:Xcthulhu pointed me to a work by Belnap and Gupta (which I haven't read, and forget the name of) that suggested the truth-value of the liar paradox oscillates in the way you suggest. Also, Douglas Hofstadter considers it a"strange loop" which is true when false and false when true. Those are the only similar positions I know of but Xct is obviously much better acquainted with the literature.
My only concern with your position is: if the first stage is meaningless and the second stage is false, then surely they are not equivalent statements, even if they seem to be? I'm assuming some kind of truth-conditional semantics though.
Users browsing this forum: No registered users and 8 guests