The Roony Puzzle (Easy Mode)
This one is actually quite fun. We’re not going to use any “logic” in the traditional sense and in doing so use a method that I think makes the result fall out naturally.
A liar who always lies says, “all my hats are green.”
Before we get to the question being asked about this statement let’s
formalize it. Define a set โ
(hats) which is the set of all hats in the
universe. Now define a set ๐
(liar’s) which is the set of hats owned in some sense by
the liar. Define a set โ
(colors) containing seven elements ROYGBIV
.
Good, now how to we know what color a hat is? Posit the existence of a function
f: โ โฆ โ
which maps every hat to a color. Let’s prove to ourselves that such a
function could exist by giving an example. Represent colors as wavelengths w
.
Unless a physicist breaks down the door like The Kool-Aid man as I’m writing
this we’re going to say that w โ โ
. Define f
as follows: arbitrarily choose distinct
wavelength numbers to represent each element in โ
. If those choices match the human
perception of the colors then so be it, it doesn’t affect the result either way.
Then measure the average wavelength w
coming off the hat h
and define f(h)
to
be the color in โ
whose chosen wavelength is closest to w
.
Since the wavelengths are distinct and real numbers the measured wavelength must either have a single color it’s closest to or be equidistant to exactly two colors. If that’s the case then we arbitrarily choose color that corresponds to the smaller wavelength number. And we’re done, we can now tell you what color your hat is.
So in this universe we’ve constructed, the statement made by the liar is as follows.
โ h โ ๐ โ โ : f(h) = GREEN
Let’s state this in a different way. Define a function F: ๐ซ(โ) โฆ ๐ซ(โ)
where
๐ซ
denotes the power set. We’re basically making a function that doesn’t take
hats but sets of hats. If you have a hat h1
such that f(h1) = GREEN
and a
hat h2
such that f(h2) = RED
then F({h1, h2}) = {GREEN, RED}
. And this new
function is great because it has an inverse. Fโปยน({GREEN})
is defined and
equals the set of all hats in โ
such that โ h โ Fโปยน({GREEN}) : f(h) = GREEN
. This means that another way to phrase the liar’s statement is as
follows.
๐ โ Fโปยน({GREEN})
Great! That means that since the liar is a liar who lies that the true statement is as follows.
๐ โ Fโปยน({GREEN})
Man that was easy. One simple negation. Onto the question that’s being asked of
us. What can we say about the set ๐
?
Can ๐
be the empty set? Well โ
is a subset of every set so if ๐ = โ
then
๐ โ Fโปยน({GREEN})
which we just established is false. Nice! So ๐
has at least
one element in it. If all the elements in ๐
map to GREEN
then we hit that
same contradiction again so at least one of the elements in ๐
must not map to
GREEN
.
Okay back to English: the liar has at least one hat, and at least one hat that isn’t green. โป