Ruby XOR operator
The ^ acts is a boolean XOR operator in Ruby when the arguments are boolean. It wants only one true value in an expression in order to be considered true:
true ^ false ^ false
# => true
true ^ false ^ true
# => false
Let's look at 5 trues:
true ^ true ^ true ^ true ^ true
# => true
How is this true?
Each ^ is evaluated one at a time. Since true ^ true is not exclusive, it is false. So after the first evaluation, we have:
false ^ true ^ true ^ true
# false ^ true is true
true ^ true ^ true
#true and true is false
false ^ true
# true
Using this same logic we can see why true ^ true ^ true ^ true is false.