I've rarely encountered a case where it is isnt an extreme lack of self-awareness in the questioner -- eg., being extremely overfit to language/notation/etc. localised to their own area of expertise.
I agree that puzzles alone shouldn’t e.g. determine whether you’re a good fit for a job, though. That’s one of the more annoying parts of software interviewing.
Eg., rather than asking about the risks of A,,B,C given various probabilities etc. ask them to make bets in a highly familiar environment with a resource that has uniform marginal utility to them... so eg., "suppose you were at home and your friend does..., how much of your time on a sunday would you bet to do... "
You find that when "the very same question" is asked in highly familiar terms people get it right.
Then this investigator-academic should ask: what features of their own puzzle induce the kind of mistakes they see?
In my experience its often that people are far less socially incompetent than questioners, so put "interpretation & trust" priors on terms/presentations of questions that mean they don't parse the presentation into the problem the investigator has in mind.
People who write puzzles tend to be the most bureaucratic sort of literalists who have profoundly eccentric modes of interpretation
The problem that most people are solving is: "what do i say to make this person/question go away"
This is it.
Never attribute to incompetence that which can be readily attributed to apathy.
No, because the point is that they always hinge on an arbitrary distinction to give one answer. But if you made a different arbitrary distinction you'd get a different answer. And the arbitrary distinctions are, well, arbitrary. They reflect neither truth nor capability. Just whether you can read the questioner's mind as to what arbitrary and intentionally unstated assumptions they are making.
No thanks.
That said, if someone can't fathom the most widely used symbolic languages humans use (math, logic, language, etc) they probably do have a cognitive deficit of some sort when compared to those who can.
If you are a primitive farmer abstract thinking isn't really useful to you. Everything you deal with in your life, except religion, can almost entirely be dealt with absolutes with little in the way of abstractions.
If it rains at the right time then you can have a good harvest. If the weather is bad then it sucks. If there is animals threatening your crops or herd you need to take steps to deal with them.
There is a lot of logic in dealing with these things. You have to know the seasons, know the stars, know the dirt, etc. You have to understand the life cycle and manipulate the behavior and biology of plants and animals at the right stages in their lives. Things have a logical sequence and there are direct consequences that are predictable from events and your actions.
Where as in modern society you have been conditioned to think in terms of hypothetical and abstractions through being exposed to testing your entire life.
You first need to know how test questions work before you are able to answer them accurately.
For a person who isn't exposed to this then the whole affair of asking hypotheticals and assuming imaginary situations with specific rules that don't actually apply to the present reality is very confusing.
They don't even understand the question. So, of course, they are going to suck at answering them.
And ultimately that is all IQ testing measures.. your ability to take tests.
I agree, but would also say that you should be capable of learning to understand those questions. For example, If you can't speak English, you'll be bad at reading books in English. If you were never taught math, you'll be bad at math. Similarly, If you never learned to reason you'll be bad at solving logic puzzles. It's almost tautological.
However, if a person is incapable of learning to do one of those things, despite the majority of the world being fully capable of doing it, they probably have a cognitive deficit.
> And ultimately that is all IQ testing measures.. your ability to take tests.
I disagree. I think it measures how well you've learned to reason, though I do agree that reasoning is a learned skill for most people.
To speak in your analogy, people walk around with different maps of the same territory and realizing this is the self-awareness mjburgess is talking about.
- the local Russell hater
I used that phrasing to drive home the idea that logic is not some inherent aspect of nature, or even fundamental to the way humans perceive the world.
"All" bring a common colloquial term doesn't have a strict set theory definition here. It is reasonable many people think zero hats is means the lie is in this very first word.
A lot of people will consider "all" to implicitly mean 1 or more, while I think strict logicians will map colloquial all to 0 or more.
All mat imply colloquially 2 or more as well, as why bother say "all" if you had one hat in the truthful sense
"My hats" contrasts with the "has a hat" because having a hat in your possession that you could have borrowed does not confer ownership that the word "my" can imply.
So great, a three letter word and a two letter word and we are knee deep in ambiguity.
They could be wearing the hat to try to publicly locate the true owner who might say "hey I lost that hat at x".
"Are green"... Green as in vegetable? Green as in the specific wavelength defined as green and not lime or some other named shade? Completely green dyed being undermined by a black spot or a pattern on the hat?
Imo zero hats of ownership is a viable lie to the statement, as is having one red-green hat.
Does that actually happen in academia? It seems to mostly be a social media thing.
Suppose you're writing a paper what do you write: option A) Average People Cannot Understand Probaility!?!?!, option B) Inexperienced test takers with unfamiliar notation fail to grasp meaning of a novel question; option C) survey participants on technical questions often do not adopt a literal interpretation of question; D) etc. etc.
In general researchers are extremely loath to, or poor at, recognising there's 101 alternative explanations for any research result using human participants and 99.99% of the time just publish the paper that says the experiment evidences their preferred conclusion.
The contrapositive is a rule that says that "A => B" is the same as "not B => not A". This is very confusing to people, and few can follow verbally why it works.
But here is a fun experiment. People are presented with a selection of envelopes, all face down, and are asked to verify the fact that, "All unstamped envelopes are small." They immediately begin turning over the large envelopes, then have trouble explaining their (correct) reasoning!
Here is a correct implication process for their actions.
"All unstamped envelopes are small." => "unstamped envelope => small envelope" => "not small envelope => not unstamped" => "large envelope => stamped"
At which point it is easier to just check the large envelopes!
It really isn't. The problem is usually given in this form:
> Suppose you're on a game show, and you're given the choice of three doors: Behind one door is a car; behind the others, goats. You pick a door, say No. 1, and the host, who knows what's behind the doors, opens another door, say No. 3, which has a goat. He then says to you, "Do you want to pick door No. 2?" Is it to your advantage to switch your choice? [1]
The only correct ansewr to this question is "I don't know." People who answer yes are just taking way too many standardized tests.
The green hat problem hinges on subjective interpretations of the meaning of both "liar" and the different ways in which the liar's sentence may be false. It may be false because the liar owns many hats, none of which are green. Or they own many hats, only some of which are green. Or they own no hats. These are all reasonable interpretations of how the sentence might be false, and the answers presented are not necessarily mutually exclusive.
If Monty knows the door with the prize and is aiming for the game to continue, then you should switch. (This is the usual argument.)
If Monty doesn't know where the prize is, then you learned nothing. (Monty's result was luck, and he can't impart information that he doesn't have.)
If Monty knows where the prize is and wants you to lose, absolutely don't switch. (Monty will only drag the game out as a way to try to make you lose.)
The reasoning behind these statements is completely solid, and there are no hidden assumptions being snuck in.
You can't just sneak in the assumptions. You have to state them somewhere.
You specifically need information that we haven't been given about the counterfactuals. What might Monty have done in other scenarios that we have not yet observed? We don't know. And we're not actually told. That makes that an implicit assumption that wasn't specified.
Edit: Furthermore, I don't think that author's solution to the Crawl problem is correct. When the host eliminates a door, either you will get information that says you should switch, and you'll win 100% of the time; or you won't get information, and you should still always switch and win 2/3 of the time.
That's the missing assumption. I would say assuming that people are perfectly random falls into the "standardized test" category.
> you won't get information, and you should still always switch and win 2/3 of the time.
You always get some information, the set of possible results becomes narrower, so saying the probabilities don't change is not sufficient. Not a good idea to discuss the problem in informal language though.
That was when I realized many people just memorize the Monty Hall's solution without understanding it, a.k.a. "standardized tests".
Edit: from your other reply I see your beef is more with the wording.
Edit edit: although I disagree with your point even then. But it seems to lead to rather fruitless argument, so let's leave it here.
Yes, it's also correct that you don't "know" the result, and you might prefer goats to cars (even then you should probably sell the car and buy several goats), but there's a reasonable enough interpretation of "advantage" that you shouldn't dismiss the problem outright.
But anyway I'll link the relevant section from Wikipedia:
https://en.wikipedia.org/wiki/Monty_Hall_problem#Other_host_...
> The version of the Monty Hall problem published in Parade in 1990 did not specifically state that the host would always open another door, or always offer a choice to switch, or even never open the door revealing the car. However, Savant made it clear in her second follow-up column that the intended host's behavior could only be what led to the 2/3 probability she gave as her original answer. (emphasis mine)
My point was that when people ask this question, they often word it like the very 1990 version did, lefting out this critical statement (which Savant considered needed as well, therefore she clarified in the follow-up column), making the question ambiguous.
(Although Savant also said "Very few (out of people who said is 2/3 is wrong) raised questions about ambiguity"... so perhaps people are actually just bad at probablity...?)
The problem is that you're presented with two envelopes with 2 real numbers inside. You randomly select one, then look, and try to guess if you got the larger number. It doesn't seem like you can do better than even, but you can!
Unfortunately everyone hates the answer. Which is that you make up a random number and pretend it is the other one. Your odds of being right are
50% + (probability of choosing between the numbers) / 2
Which can always be strictly bigger than 50%. (Though possibly by only a little amount.)
Special case. If those numbers and yours were all independently randomly chosen from the same distribution, you'll be right 2/3 of the time.
The question leaves that distribution completely hidden, and your answer smuggles it back in. That feels less like a counter-intuitive math/stats question and more like a badly worded gotcha.
We can't have an uniform distribution over all real numbers, so it's quite pointless to discuss if looking into the envelope gives any new information, cause we don't even know the distribution yet.
There are no hidden conditions. It is just a shocking result that we don't expect.
If your solution is the same as this article's, it's plain wrong. Even the natural number case is plain strong.
It's very easy to demostrate as well: consider a trivia case where the distribution is just {P(1)=1/3, P(2)=1/3, P(3)=1/3} and you see 2 in the first envelope. There is no strategy to get a better chance than 50%. Therefore, any strategy that gives a better chance than 50% must implicitly make an assumption over the initial distribution (and therefore excludes a distribution like {P(1)=1/3, P(2)=1/3, P(3)=1/3})
Actually the article is even "wronger" than this, because "started A" and "switched" aren't independent and one can't simply use the product of their probability. The above example is a quick way to demonstrate it's not a general strategy without assumption to get >50% winning chance. Similarily, one can just use {P(1)=1/3, P(2)=1/3, P(3)=1/3} (this is a valid distribution over real numbers!) to demonstrate the real number strategy isn't general.
Again, for both natural number and real number case, the discussion over strategies is only meaningful is we know something about the distribution.
Interestingly, this article is wrong more or less in the same way as believing switching does give you more expected value in the original "twice money in another envelope" variation.
Edit: For people who are interested in the switching strategy, check Randomized Switching in the Two-Envelope Problem (2009). Spoiler: full of discussion over the initial distribution.
Seeing 2 is only one of the many possible cases. You haven’t calculated the total probability.
I don't actually care how you convince yourself. But the explanation is right. If your random number is outside of the range, you've got even odds. If it is inside of the range, you've got 100% odds. As long as there is a positive probability of being between, you've got strictly better than even, by half of the probability of being between.
Many, many distributions guarantee positive odds of being in between. The one I chose for my program was:
(log(rand) * (flip_coin() ? 10 : -10 ))
Which is the log of a random number between 0 and 1, times 10 times + or - with even odds. The various factors were chosen to fit well with normal human choices that most seek to test it with.The strategy is straightforward and bulletproof (if you allow a random generator of real numbers, otherwise you may keep tossing coins indefinitely): keep tossing coins until you get tails. If the number you saw is less than the number of heads you got, you don't switch.
For the simplest case assume that one envelope always contains 1 and another always contains 2. You choose one envelope randomly, so in 50% of cases you get 1, which you switch in 50% of cases. And in 50% of cases you get 2, which you switch in 25% of cases. Hence, you pick the higher number in 62.5% of cases. The same works with any numbers N, M; or any complex distributions; or even real numbers with a bit more complicated strategy. You don't have to know whether you are between two values in advance, you just have to guess.
In other words, I'm merely trying to be informative.
I thought you meant the strategy can make the winning chance always >50% even after the player opens the first envelope, which isn't possible.
However you actually meant the strategy can make the expected winning chance >50% before the player opens the first envelope, for any well-defined distribution of real number, even the distribution is not known to the player, which now I realize is true.
(I haven't thought through some edge case like Cantor distribution, but now I incline to it's true not just for "many distributions". Of course for a discrete distributions, we need to specifiy the two envelopes can't have the same number. Besides that, it seems to hold true for any distribution?)
But before you pick, your odds were still bigger than 50%. Just not by much.
It's not saying that after the player see the number in the first envelope, the strategy guarantees a >50% outcome.
It's saying that give any distribution, over all possible outcomes, >50% times the strategy will end up pick the larger number. You can say this >50% is the expected winning chance before the player see the number in the first envelope.
I'd say this is "intuitve" because, if your strategy can guarantee "when the player see a large number in the first envelope, he's less likely to switch than if he saw a small number", it would be better than blindly switching by coin toss. So intuitively such a strategy exists.
The only "trick" here is that since the player doesn't know the initial distribution, they can't tell "how large counts as large?" therefore they needs something that preserves some property over the whole real number line. That's why the strategy involves sampling from a another distribution whose PDF is non-zero everywhere.
Let's play this game exactly once.
You choose two unequal real numbers. I don't know what they are, and I don't know the distribution from which you choose them. You write them down and put them in separate envelopes.
I'm allowed to choose one envelope and open it to see the number inside, and my job is then to say which envelope holds the larger number.
I claim I have a strategy now which lets me win strictly more than 50% of the time. My strategy is this.
I choose a real number R at random from a distribution that has dense support. In other words, for any two reals, L and U with L<U, P(L<R<U) > 0. This is easy to do ... one method is to list the rationals, positive and negative, then roll a die, discarding numbers until you get a 6.
Now I flip a coin and thereby choose an envelope at random. I proceed by assuming my chosen number is between your two numbers. There is a non-zero chance this is true ... call it e. So e>0.
If I'm wrong then my choice is 50% ... probability is 1-e.
If I'm right then my choice is 100%. ... probability is e.
Combined, my chance of being right is 0.5(1-e) + e = 0.5+e/2, which is strictly greater than 50%.
You can make it as small as you like, and if we play the game repeatedly then you can make it approach 50%. But as it stands, with a one-off game, I can win with a probability that depends on your chosen numbers, but which is strictly bigger than 50%.
I am a mathematician, so please bear with me when I try to explain how this can work.
The rational numbers are countable, and that means that I can write a list of them. There are several ways of doing this, but personally I like the Calkin-Wilf tree[0]. That only gives the positive ones, but we can include zero and the negative ones by interleaving them.
So, whatever interval you choose, there are infinitely more reals outside the interval as inside (by that I mean that you can fit an infinite number of copies of that interval up to infinity). So the probability e is not >0, it is effectively 0.
One you have chosen the two numbers, L and U, I note that there are rational numbers in between. Choose one of those numbers, call it M.
M is in my list above. Now I roll a die, discarding numbers from the list until I get a 6. There is a non-zero probability that the number retained is M, so there is a non-zero probability that my chosen number is between L and U. So e is definitely non-zero.
The second problem is, what does it mean to choose a real at random?
It doesn't have to be uniformly at random -- that's the mistake nearly everyone makes -- and the above process does it perfectly well. It only ever chooses a rational number, but that's OK. It's still a real number, it's still a random number, and for any non-empty interval, there is a non-zero chance the chosen number is inside.
... as a human living in the finite universe there are limitations to your choice.
Yes, but that is accounted for in the explicit description of how to choose the number.
Any number you can write using all the atoms in the universe is infinitely outnumbered by all numbers that you can't.
Again, this is accounted for by the fact that we are not choosing uniformly at random.
So ... yes, choose from a Gaussian, but then you have to tell me exactly how.
That's tricky.
Yes, it's established there isn't "uniform distribution over all real numbers" without violating axiom of probability. You're 100% correct on this.
But it doesn't make Colin's solution wrong, because e > 0 for any* well-defined distribution.
> Which is a different problem than stated originally
There are two ways to inteprete the original problem:
A. The numbers are truly randomly picked over all real numbers.
B. The numbers are picked from a well-defined distribution which is unknown to the player.
Since A. is invalid mathematically speaking (without changing the commonly accepted definition of probability), it's reasonable to only consider B., in which case, Colin's solution is correct.
I made a more intuitive explantion on why a strategy better than coin toss exists here: https://news.ycombinator.com/item?id=42372972
*: More strictly, any distribution that guarantees the probability that the two numbers in envelope are the same = 0.
This is one reason that probability theorists have learned to be more careful in stating the double money version to rule out the solution that I gave. But my version has been in the literature since, I believe the 1950s. Under, as I first encountered it, the same exact name. (I encountered it from Dr Laurie Snell at Dartmouth College in the mid 1990s.)
You need to (at least) add this statement to the original question:
> The host must open a door in any situation, and you know this rule.
Because "host" in daily language is a human being with agency to choose whether to not open a door. Without this statement, the original problem is actually a game theory problem with two players. The host might be playing a strategy where he only opens the door when he knows you picked the car at the first place, or any other strategy.
The above statement removes the ambiguity and that's what the original author meant (but failed to put in words).
(If you're interesting in this, the wikipedia page linked above actually contains a quite extensive discussion in history over it)
https://web.mit.edu/rsi/www/2013/files/MiniSamples/MontyHall...
In the case of a logician and the properties of the elements of the empty set the frame of mind of the examiner is probaly going to be about using algebraic logical connectives.
For another nice example I can quote [0] via [1]
> Luria: All bears are white where there is always snow. In Novaya Zemlya there is always snow. What color are the bears there?
> Peasant: I have seen only black bears and I do not talk of what I have not seen.
> Luria: What what do my words imply?
> Peasant: If a person has not been there he can not say anything on the basis of words. If a man was 60 or 80 and had seen a white bear there and told me about it, he could be believed.
This is a more extreme case, but in my opinion it is the same phenomenon of being asked to take external things as true and work on them.
[0] https://languagelog.ldc.upenn.edu/nll/?p=481
[1] https://www.astralcodexten.com/p/somewhat-contra-marcus-on-a...
Just like the barber paradox isn't literally Russell's paradox, but it made more people to look up the history of it and perhaps learned what Russell's paradox is. Hopefully 0.1% of them turn out to be mathematicians.
My point is that not everyone who understands barber paradox (in plain english) has to understand formal logic, and not everyone who understands formal logic has to become a mathematician. However I still believe the existing of the plain english puzzle is a net positive for humanity's collective mathematical comprehension.
Some is good, but more isn’t necessarily better.
I welcome puzzles, but I also think we need to shed some of the exclusionary aspects of mathematics/compsci, the brunt of which are far too known: inaccesible formalisms, leetcode, competitive grants/hackathons, steep admission requirements, code bounties, interview puzzle rounds, etc.
Some necessary and organised in good faith I'm sure, but I hope we can move past the implicit assumption that 'maths/code isn't for everyone' and self-select based on that, as that doesn't further the cause.
I think it meant "hopefully at least 0.1%." (I can imagine someone who feels that it's hopefully at most 0.1%, but probably that person wouldn't be kindly disposed towards efforts to fool people into being interested in complex mathematical topics, as your parent seems to be.)
Not to mention that a liar doesn't necessarily have to mean someone who tells a falsehood in every single statement. It could just mean someone who frequently tells falsehoods. Or, more deviously, someone who wants to cause maximum uncertainty in his listeners, in which case some mix of true and false statements would probably be the way to go.
"I never make a true statement" says the liar.
I’ve never seen one of this puzzles phrasing it like that. With good reason, that would break the puzzle.
I agree with the first stipulation, but, outside of Lewis Carroll's puzzles, I think that the second isn't true. For example, I believe you'll find just the opposite in Raymond Smullyan's books.
FTA: >Note: this question was originally set in a maths exam, so the answer assumes some basic assumptions about formal logic. A liar is someone who only says false statements.
I think it's pretty clear how on definitions
Trying to return to your more naive understanding of logic not only helps understand the intent of the puzzle, it also makes the puzzle more fun.
No; it makes the puzzle illogical and thus about as much fun, for those who prefer logical outcomes, as discussing religion or politics.
Just for example I play a game with my children where we tickle each other when we see a yellow vehicle. Is a yellow tractor a vehicle for purpose of the game? How about a yellow baby cart. How about a billboard with a photograph of a yellow baby's toy car?
We honestly have more fun discussing what is a vehicle for purpose of the game than we do tickling. Especially when it becomes clear that a yellow baby carriage is a vehicle only if it is daddy to be tickled... Honestly a good lesson to learn early that life is not fair and that rules are subjective.
It’s why puzzlemaking a truly challenging and impressive skill. It must be fair, a challenge, and obvious in retrospect.
I think it’s why the twist in Bioshock worked so well for me: it was right there in plain sight numerous times, while other twists in mystery games/films elicit a groan.
If it's a formal logic problem it should be presented in formal logic terms (presumably that only those with formal logic training would even understand) so then there is no possibility of language ambiguity.
I'm not trying to be argumentative, but this is just how this come across to me, and I am pretty confident most humans would consider it a lie which I think would count for something given the place and the way in which the question was presented.
If we reframe it using C++ "std::all_of" function over an array of strings called "hats", and say that the following must be false (because he is a liar):
std::all_of(hats.begin(), hats.end(), [](std::string hat) { return hat == "green"; })
Then we can answer the questions without ambiguity:A) The liar has at least one hat. Yes, because std::all_of returns "true" on an empty list
B) The liar has only one green hat. Unsure, because { "green", "green", "red" } is false, and { "green", "red" } is also false
C) The liar has no hats. No, it is the opposite of A
D) The liar has at least one green hat. Unsure, because { "green", "red" } is false and { "red" } is also false
E) The liar has no green hats. Unsure, for the same reason as in D
[1] https://www.boost.org/sgi/stl/MonoidOperation.html
[2] note: Monoid, not Monad, and yes, category theory left its mark in C++ as well.
For example, you may want to use all_of to check if all the preconditions are met before running a command, is there are no preconditions, then you can run the command.
Or, in a test report, a test case is successful if it and all of its sub-cases are successful, if there are no sub-cases, then that part is considered successful.
Or, you are making a task runner, you exit if all the tasks are completed, if there are no tasks, then you can exit immediately.
Saying that all of nothing is true is the most appropriate behavior, both in theory and in practice.
Yes! Before it became a programming problem, I considered the implications of this decision for common speech. In that case, it will generally be expected that when someone says "all my hats are green", they have at least one hat, probably because otherwise it doesn't hit the relevance threshold to make such a statement worth saying.[1]
Based on this, with my younger, hornier mind, I would joke that, "I have gone on a date with every female cheerleader at my university." (All the cheerleaders at my university are male.)
The idea being, an equally valid convention would be to read the statement as "there exists no element violating all the predicates" i.e. no one who is both a "female cheerleader at my university" and "someone I have not gone on a date with".
And this convention, it turns out, is what C's all_of (and Python's all()) uses.
But I'd still balk at someone using that trick in common speech -- it's at least an attempt to be misleading.
[1] See the "Maxim of Relevance": https://en.wikipedia.org/w/index.php?title=Cooperative_princ...
Because it is, if you'll forgive my Haskell-ese, the only implementation that means that `all_of $ l1 ++ l2 == (all_of l1) && (all_of l2)` for all lists `l1` and `l2`, including empty ones.
This is almost certainly not what the author will say, and it does have some tangential connections to computing so it's worth expanding on briefly.
In computing you often reduce problems to smaller problems, this can be done with recursion but it doesn't have to be, dynamic programming kind of is the reverse of it; whatever. When you do that though, you get these questions about really small collections, sets, lists, data structures.
Just for a quick concrete example so that we're not an abstract theory land, is a one-element list sorted? Is a zero element list sorted? Is [5, 5, 5] sorted ascending, descending, both, or neither? If you choose the wrong answer, then it means that your algorithm needs to be more complex, you don't trust zero-element lists to be sorted so your quicksort HAS to pivot on a median of 3, you don't trust one-element lists to be sorted so your quicksort HAS to pivot on a median of 5, or maybe when you see that you would recurse into a list of size 1 you generate a new median-pivot or something.
In mathematics, there is a convention which attempts to generalize this idea that an empty list is always sorted. In fact, an empty list is also always randomly sorted. It is always sorted descending, too. If it's an empty array of ints, all of those ints are greater than 1000—and they are also less than 50.
The mathematical convention is, in lay speak, “if you are talking about nothing, pretty much anything you say is going to be true unless it's gibberish.” If I said every int is green, well, synesthesia excepted ints don't really have colors, that's crap.
Everything else is “trivially true.” More formally, any predicate of the form {for all elements in S, this is true of that element} is taken to be “trivially true” when S is an empty set. It is something like the code,
let agg = true
for (const element of mylist) {
agg = agg || f(element)
}
where no matter what f is, if mylist was empty, agg is true. (“Trivial” here is sometimes replaced with the word “vacuous” because “trivially” is also a common English word meaning “easily,” so something “trivially true” might also by normal English rules mean “is easily seen to be true, is easily proven to be true, we can debunk the opposite with a 5 second look at the Wikipedia page,” etc.)So that's the convention and besides making base cases much easier, one reason to do this is that the negation of any “for all Xs in the set, Y” is always perfectly specified as “there exists an X in the set such that not-Y.” The other convention you'd have to negate as “Either the set is empty or (...)”.
So the claim is that the perfect Liar is lying according to mathematical rules of Truth and falsehood, and according to those rules, this statement “all of my hats are green” can only be false if there exists at least one hat belonging to the liar which is not green. If there are no hats then the statement was trivially true.
It reminds me of the math "puzzles" on Twitter which go:
1 shoe + 1 shoe = 2
2 shoes + 2 shoes = 4
3 shoes + 2 shoes = ???
And the answer isn't 5 because a) we're not counting shoes and b) the shoe laces were different colors. There's nothing clever, it just teaches you to be hyper cynical and question every little detail which isn't relevant to either Math or the real world.
It's a handy stance because I'm no good at either solving logic problems or getting inside other people's heads!
Another on that really irritates me is the kind that presents a series of integers and asks which integer comes next. Any integer will do, you just have to fit the appropriate polynomial.
This one bugs me to no end because it's part of the standard elementary school curriculum, for example here: https://byjus.com/maths/patterns-questions/
But surely someone with a strong imagination could come up with a pattern to fit any number as the next in the sequence. I doubt most elementary educators even grasp the issue.
That is an excellent way to put it!
It explains why it appeals to non-math people. They are (usually) better at these more verbal-based games ime.
The solution article also discusses vacuous truths ("all my hats are green" is true if you have no hats, vacuously). Truth has a definition in formal logic too, but we've gotten far enough that this problem is already solvable and unambiguous.
the one I hate the most is the Monty Hall Problem.
but you realize that it's unambiguously mathematically true without gimicky word-play or puns or other logic puzzle trickery.
it's just simply an un-intuitive result. most statistics really is.
curious: why the hate for the monty-hall problem?
The reason I hate it is that it's a example of how to lie and mislead using statistics and that the only reason it exist is that a content creator in the print media wanted to give an edgy true answer to farm engagement, and now as a consequence many introductory statistics course make students suffer for the same reasons. The assumptions made to reach that answer are not made explicit and it changes the response. And teachers mess it up a lot of the time which lead to a lead of head-scratching (or sometime just leave under-specified on purpose).
It was the right answer to a question that wasn't asked. the host opens the door before giving the choice and the door he's choosing isn't random.
Wikipedia explains this better than I would be here's the part I'm talking about:
> In Morgan _et al four university professors published an article in _The American Statistician_ claiming that Savant gave the correct advice but the wrong argument. They believed the question asked for the chance of the car behind door 2 _given_ the player's initial choice of door 1 and the game host opening door 3, and they showed this chance was anything between 1/2 and 1 depending on the host's decision process given the choice. Only when the decision is completely randomized is the chance 2/3 .
[Monty Hall problem - Wikipedia](https://en.wikipedia.org/wiki/Monty_Hall_problem)
The game theoretic explanation (in the same page) as to why you should switch is more convincing and less click-baity though without needing to give a specific probability value or assume the host strategy.
i think Savant was 100% correct and the original stating of the problem was clear enough. it's not really about torturing students or trying to be tricky or edgy - it's meant to be an important lesson about independence in statistics. it's more of an example of the kind of real problems that are torture. statistics is the torture, not the exposition of it...
> content creator in the print media wanted to give an edgy true answer to farm engagement
this was 1975 and the fight didn't break out until 1990. using terms like "content creator", "farm engagement", etc. gives a vibe that i guarantee was not the case at the time. yes, it was meant to be an engaging puzzle, but back then it didn't have those highly negative connotations.
from wiki: "Several critics of the paper by Morgan et al.,[38] whose contributions were published along with the original paper, criticized the authors for altering Savant's wording and misinterpreting her intention"
if anything people with an axe to grind like the Morgan et. al. analysis were the one twisting words around.
as far as instructors (and many other people) having a bad time explaining it, well... that's not a problem with the puzzle is it? bad teachers are a real thing.
for me the very best most direct way to understand the puzzle and the solution is to look at the decision tree diagram next to "Conditional probability by direct calculation" on the wikipedia page [1]. with only 3 doors and 3 possible first choices and a single 2nd chose (switch or not), you can easily fully directly compute every possible scenario. draw that picture 3 times (one for each initial door chosen) and count up the wins and losses for strategy switch vs no-switch.
[1] https://upload.wikimedia.org/wikipedia/commons/thumb/d/de/Mo...
Which is another listener’s bias: is lying by omission a lie?
All my horses are unicorns. I don’t have any horses, nor unicorns. So it’s true but also not.
The article mentions a maths exam, and of course the answer to the hats puzzle is very straightforward if you convert to statements about sets and logic in the way the teacher expects.
But converting ambiguous language into logical statements by taking everything extremely literally is the opposite of a useful life lesson, so I think it's a terrible exam question.
"The liar says All my hats are green" becomes "¬∀x|x∈hat,OWNS(x) (GREEN(x))" or similar.
And then from there you can also translate the five provided answers and try to find a contradiction.
If the liar owns no hats the statement “All my hats are green” would be true. Under the parameters of the question it must be a lie and therefore cannot be true. So the liar owns at least one hat which is not green. They may own additional hats which can be of any colour.
People who are saying “if they are a liar they might not even be talking about hats” are somewhat missing the point:
1) Whether or not they are talking about hats they have made a statement about hats and under the “rules of the game” of formal logic it must be untrue because we are given they are a liar. That’s enough to answer the question.
2) The “rules of the game” are about predicates and properties and inference. The language is plenty precise enough to convey both the question and to deduce the solution.
Edit to add: if you find this problematic consider that the statement “All my hats are green” in formal logic is identically equivalent to
For all hats h in my hats, h is green.
So for this statement to be false there needs to be a hat in the set “my hats” which does not have the property that it is green. If “my hats” is empty or indeed if somehow contrary to the rules of the game “my hats” only contains things which are not hats or all the hats it contains are green then the statement is true.
Since the speaker is a liar the statement cannot be true. Therefore there is at least one hat in “my hats” which does not have the property that it is green.
The maths students will be learning this in the context of negation and will have learned that the negation of a universal (“for all”) statement in predicate logic is an existential (“there exists”) statement. Since we have a liar we have to negate what the liar says so since the liar says
“For all hats h in my hats, h is green.”
We negate this and deduce
“There exists at least one hat h in my hats such that h is not green.”
In the context of old-fashioned predicate logic this is not ambiguous.
This is why the problem statement bothers me. If you're going to contrive a puzzle out of pure logic, you had better constrain the world (ie, what logic system the "liar" uses). It's like formulating a geometry problem (behavior of parallel lines, sum of angles of a triangle, etc) and just assuming Euclidian space.
[].all(x => whatever(x)) == true
At least that's how math usually thinks about it.Color of non existing object is undefined.
The correct solution is:
!(all && my && hats && are && green) == !all || !my || !hats || !are || !green.
He’s a liar so his statement has to be specifically false.
Well yea, that's the fun part! Logic puzzles without interaction with language are dull affairs indeed, basically just computation.
When you’re writing functions that work on lists or sets, you need to decide what to do about statements that are vacuously true. Call it out in the documentation? Put in a special case? Assert that the set is non-empty? Or maybe even create a new datatype to make the corner case unrepresentable. These design choices have side-effects, making a function easier or harder to use, more or less error-prone.
Recognizing vacuous statements is pattern recognition, but it’s sometimes useful pattern recognition, and for children, learning about it might even be fun.
>Note: this question was originally set in a maths exam, so the answer assumes some basic assumptions about formal logic. A liar is someone who only says false statements.
In js if I write:
const allHatsGreen = hats.every(hat => hat.color === 'green');
it will be true if hats is empty. Same thing for C# Linq. Imo this makes sense, because if I write: const matchAllConditions = conditions.every(condition => condition.matches(item))
In some condition matcher (lets say I want to check rules before an user is allowed to post), the correct behavior is the result to be true, when the array is empty.I'm not well versed, in functional programming, but in Ocaml (of F#, hehe) it would be
let rec all_hats_green = function
| [] -> true
| hat::rest -> hat.color = "green" && all_hats_green rest
so in a recursive implementation, this is the behavior that makes sense.1. A deceit is an attempt to make somebody believe something false.
2. A falsehood is a statement which is false.
3. A lie is a deceitful falsehood.
Regardless of whether they miscommunicated about hats vs cats, and regardless of whether they were being deceitful in the process, for the statement to be a lie it would also have to be a falsehood, implying they have at least one hat which is not green.
Yes, these problems require suspension of disbelief, especially given the shorthand "he's a liar" always meaning that the person is often deceitful (usually with other negative implications), but the problem statement being that the "person always lies" is pretty clear and doesn't require special pattern recognition or other mental gymnastics, and it's not that different from the suspension of disbelief you invoke when playing a game of chess and not literally sending a knight to murderously dethrone your opposition.
Unfortunately, there are some obvious discrepancies. My favorite is that "can't" really means something closer to "not can".
This can be demonstrated with a close analysis of the statement, "I can't not do that." To get our usual understanding of the sentence we need to parse it as, "I (not can) (not do that)." And then turn that into, "I must not (not do that)." And now cancel the double negative to get, "I must do that."
Suppose that you try to parse it as, "I can not not do that." You quickly get, "I can do that." Which is not at all what that sentence actually means.
We know this is occurring on a math exam, so it must be a logic puzzle. The exam-taker would've probably known this refers to a first-order logic question, and have been taught a certain way of translating sentences like this into first-order logic.
This is true of all word puzzles that they need to be mapped to math in a way that assumes knowledge about the world and context.
In fact, I would extend this to arguments as well: Let's be clear up front what we mean by important words and go from there. Too often people ending up arguing about definitions, but in roundabout ways.
Someone who always lies means in the purest sense means you cannot trust anything they say. Even the word “hat” could mean they are talking about their pet cat that they like to carry on their head.
What the author would probably say is “All my hats are green” means the liar is either lying about All or Green. Either all their hats are some other color or only one hat is green. This means you have to assume the liar has a hat. How do we know that?
We only know that because of similar puzzles that came before. In other words this is not logic but more pattern recognition.