As everyone knows, knights tell the truth all the time, and liars lie all the time. At least, this is what evenly
behaved knights and liars do.
Less known is that there are also odd knights, who on odd-numbered days lie all the time. (On even-numbered days, however, they behave evenly, and tell the truth.) Also, there are odd liars, who on odd-numbered days, tell the truth about everything, while they lie the rest of the days.
Someone said: "Today's the 3rd. Trust me, I'm telling the truth. I'm odd. I didn't lie yesterday. I'm not a knight."
At first, this seemed illogical, and I thought he couldn't be either a knight or a liar, even or odd, but after a while the solution dawned on me and I found the error in my reasoning. What is he?
No even person would say "I'm not a knight", so the speaker must be odd. As the speaker does say "I'm odd", it follows he's telling the truth, so he's an ODD LIAR.
Thus, there's no problem with "Today's the 3rd" (in fact, it must be) or "I'm telling the truth" (he is), but there's a contradiction with "I didn't lie yesterday" unless he didn't speak at all on the 2nd!
If he is a knight or liar, even or odd, he must be an ODD LIAR who didn't say a word yesterday.