Monday, 4 May 2015

logic - Was Smullyan really wrong?




EDIT: the OP has since edited the question fixing all the issues mentioned here. Yay!



There was a question asked on Puzzling recently, titled Knights, Knaves and Normals "(Smullyan's Error)" where OP claims claimed (this has been since fixed), quote




If you think the challenge [of proving you're a Knight by saying statements] is impossible, you are not alone. In What is the Name of This Book?, the esteemed Raymond M. Smullyan himself asserted (p. 97) that since Normals can both tell the truth and lie, they can say anything a Knight could. There was, however, a subtle error in his logic.




The OP selected an answer with a statement





"If I am not a knight, this is a lie"




, obviously hinting that's that he had in mind as "the error".



Frankly, after going through the book numerous times yesterday just for the sake of it, and reading Smullyan's writings for the last 20 years, I'm completely unconvinced by neither OP's claim nor the accepted answer. My rationale follows: (I'll use the convention of calling well-grounded sentences [i.e. statements] "grounded" and not well-grounded sentences "ungrounded"; most of the things I state here are also directly or indirectly mentioned in the book)





  1. a) ungrounded sentences have no truth values, b) somebody using ungrounded sentences is neither lying nor telling the truth; Smullyan has, numerous times, voiced that - perhaps the most relevant are the problems 70, and, later, entire Chapter 15, with IMO key related problem 255,

  2. for a statement to be true, it has to be provable in certain system to be true; for a statement to be false, it has to be provable to be false - i.e. a statement's logical value has to be provable somehow,

  3. for a statement to be provable in a system, there must be a clear and objective way to assert its sense and logical value,

  4. a logical statement can be either simple (we can assert its value directly) or complex (consisting of other statements bound by operators) - the operators are also a clear way of asserting if the compound expression is true, since they (like shown by e.g. Boole) can be translated to pure arithmetics,

  5. as such it follows, that for a complex statement to be grounded, it has to consist only of other grounded sentences (statements), and having at least one ungrounded statement in the statement's composition graph automatically makes it and any statement using it ungrounded,

  6. any statement that is neither provable true nor false in the given system is ungrounded within it, for example $p$ such as $p = "x * 2"$ is ungrounded, since it's unprovable by mathematics,

  7. there are two interpretations of what "Being a knight/knave/normal" means - one (possibly used by OP) that "knight can only say truth, that is he can only use grounded sentences (statements) which are true, that is he can use those statements which are true - he can't use ungrounded sentences, since they aren't true" (and so on for knave/normal), basically requiring all participants to only use grounded statements , and the second one being that "knight can only say truth, that is he can use those grounded statements which are true - he can still use ungrounded statements, since they make no logical assertion about their truth" (and so on for knave/normal)- however Smullyan shows multiple time throughout the book (see aforementioned problem 70, also problems 256 & 259), that he asserted the second case for the sake of the book,

  8. AFAIR from both formal logic & linguistic courses: imperatives, interrogatives, exclamations and statements (note: it's about linguistic "statement" here, not logical) with expressed modal doubt aren't grounded per se, only purely declarative statements without expressed modal doubt can be grounded. As an example, "I'm not sure if $x=2$" is ungrounded, $p = "maybe("x = 2")"$ is grounded when interpreted as there exists a provable possibility that x = 2, although x doesn't have to be equal to 2 in all cases, formally making (please excuse the abuse of notation) $maybe(x) \equiv \exists (x)\wedge \not\forall(x)$ (which can be obviously stated as $maybe(x) \equiv \exists (x)\wedge \exists \neg(x)$) and making the exemplary statement into $\exists x=2 \wedge \not\forall x=2$ (which can be obviously also stated as $\exists x=2 \wedge \exists x \not =2$),

  9. assuming first interpretation from my pt. 7, Knight couldn't say e.g. "Could you pass the salt?", since that is a logically ungrounded sentences. Yet, throughout the book, there are numerous examples of truth-value-bound people saying logically ungrounded sentences - e.g. Dracula asks questions, King expresses his doubt and asks rhetorical questions when talking to his daughter etc. - making only second interpretation (everyone that's truth-value-bound can still use ungrounded statements) valid,

  10. self-referencing statements aren't necessarily ungrounded, but recursive sentences (self-referencing statements of the form $p = "f(p)"$) are ungrounded (doesn't constitute a sentence in logical sense), because they can't be evaluated. The exceptional case Smullyan makes is by showing that if we can avoid recursion by making an objective statement that has a real, independent meaning, then we possibly can "ground" the statement.




As such, (assuming knight/knave only island, no normals)




I'm lying now.




is ungrounded. Would be a paradox if it were grounded!





I'm a knave.




is grounded, but, as Smullyan says (and I completely agree) it means that either a) knaves can sometimes tell the truth, and/or b) knights can sometimes lie. No paradox here!



NB.




I was lying yesterday.





is grounded. The fact can be verified.




I will be lying tomorrow.




is grounded if and only if it's about habit (possible to verify), not the actual action (impossible to verify, since it hasn't happened yet).





  1. the accepted answer would be thus ungrounded regardless is the person saying it is knight, knave or normal, and would be an invalid solution to the puzzle, because literally everyone can make ungrounded sentences (see my pt. 9); there are similar problems for other answers, which try to succeed in the "challenge" by either using ungrounded sentences or changing the setting of the question completely (e.g. by calling on 3rd party that can verify the truthfulness of the person - which is completely against the setting of that specific problem, since you're an outsider there, and also against the original intent of the author, because it would trivialize all and every possible logical problem, since saying "the way to prove you're not a normal is to have a knight to say you're not a normal" is equal to saying "every statement can be proved by truthfully stating with utmost certainty whether it is true of false" - well, duh... except it's actually impossible to do that with any nontrivial thesis - that's why we have to prove things),

  2. mathematically/logically speaking, IMO formulation of problem 106/107 goes along this lines: (this mirrors the subjects discussed by Smullyan in couple of last chapters of the book; excuse me for any possible errors in transcription)




let $A$ be an infinite set of possible grounded statements verifiable in system $S$ an inhabitant can make, all with definite truth value $1$, $B$ a set of such statements with definite truth value $0$, set $V$ be a set of all possible verifiable grounded statements and $C$ a set of all possible grounded statements, regardless of their verifiability in system $S$. Obviously, $A$ & $B$ are disjoint, $V$ is a strict sum of $A$ and $B$ and $C$ is a strict sum of set $V$ and set $U$, describing all the possible grounded statements that are unverifiable in $S$. Select a random one set out of $\{A,B,C\}$ and call it $X$, not knowing which one you selected. You can now select any number of statements $a_1, a_2, ... a_n$ from $C$ (i.e. you can pick any grounded statement possible) and check the value of $p(a_n) = b(a_n,Z)$. $b$ is a Boolean function here corresponding to the set $X$ you selected, being just a known $b = x$ if you selected $A$, a known $b = \neg x$ if you selected $B$, and some completely unknown $b(x,Z)$ function if $X = C$. $Z$ is an unknown function of unknown parameters. Also, we define $q$ to be verifiable in $S$ if and only if we either know a priori the logic value of $q$, or $p(q)$ is grounded and allows us to clearly say if $q$ is true or not, regardless if $X$ is $A$, $B$ or $C$.




For example, "I'm a knight." is unverifiable (could've been true & said by knight or false and said by knave/normal), while "I'm a knave and 2+2=4" is obviously verifiable, since it's false and the speaker is a normal.




It follows that verifiable statements can be only built on verifiable statements, and any composite statement that has a unverifiable statement as a part is unverifiable itself when it's logical value is dependent on the unverifiable statement - see the discussion about being grounded above, replacing "grounded" with "verifiable". Thus, for $u \in U, v \in V$, we have $"\neg u" \in U, "\neg v" \in V, "1 \vee u" \in V, "0 \vee u" \in U, "0 \wedge u" \in V, "1 \wedge u" \in U$ etc.



The question is:




a) is there any number $n$ of $a_n$ statements from $X$, that can definitely prove that $Z$ is $C$?



b) is there any number $n$ of $a_n$ statements from $X$, that can definitely prove that $Z$ is not $C$?





The obvious solution for a) is to take any $a_n \in U$ - since neither $A$ nor $B$ have no element from $U$, it proves that $X = C$.



As to b), there is no way to check if $X$ strictly ain't $C$ - if $X \not =C$, then because you can only select a statement from $X$, you have to select a verifiable statement. On the other hand, each and every verifiable statement may be present both in $X$ (be it $A$ or $B$) and in $C$.



Of course, there's a difference between e.g. a statement being in set $A$, and being possible to be said by a knight - knights can say everything from $A$ and all true things from $U$ - but since nothing from $U$ can be used to prove anything, the analogy stands - knight would have to use statements only from $A$ to prove anything, knave would have to prove things using only statements from $B$, and normal could've used both statements from from $A$ and $B$ to prove things. To prove you're a normal, it'd thus be enough to use two statements, one from $A$ and one from $B$ - since only a normal can do that, that would be a proof enough. You could also do that by saying e.g. "I can only use false statements to prove things.".




  1. Also, AFAIK, in general any proof requires that all the statements used in it are grounded - for me it seems obvious (from Godel & Hilbert for example - but it also follows common logic) that we can't prove a statement (thus making it grounded) using any combination of ungrounded sentences, since to prove a statement you can only use statements grounded within the system in which you're proving. Using ungroundability in a proof of groundability seems like trying to reinvent the Russell's paradox to me.


  2. thus it would follow that OP hasn't found "Smullyan's Error", he just made an error himself by not completely understanding a) the context of the book, and/or b) formal logic behind it.





The question is:



Am I doing it wrong, or is OP wrong on this one?


Answer



Since OP fixed the question along the lines from my question here , I think I can assume the reasoning proposed in the question was correct. Prof. Smullyan is now officially "no longer in error" chuckle.


No comments:

Post a Comment

real analysis - How to find $lim_{hrightarrow 0}frac{sin(ha)}{h}$

How to find $\lim_{h\rightarrow 0}\frac{\sin(ha)}{h}$ without lhopital rule? I know when I use lhopital I easy get $$ \lim_{h\rightarrow 0}...