this post was submitted on 18 Oct 2025
756 points (99.3% liked)

Programmer Humor

27048 readers
627 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 

Definitely a repost, but it fits the season

you are viewing a single comment's thread
view the rest of the comments
[–] NeatNit@discuss.tchncs.de 2 points 1 week ago (1 children)

The comment you replied to is my response to this. It's the only boolean operation that works this way. All the others are straightforward.

[–] Klear@quokk.au 2 points 1 week ago (1 children)

I think the problem is that you're thinking in terms of boolean algebra, while implication being implication comes from propositional logic.

[–] NeatNit@discuss.tchncs.de 3 points 1 week ago

That's interesting. I'll have to read up on that. You're right, I am thinking about boolean algebra.

In the mean time though, I'll note that Boolean algebra on Wikipedia also refers to this operation, so I'm not alone:

Material conditional

The first operation, x → y, or Cxy, is called material implication. If x is true, then the result of expression x → y is taken to be that of y (e.g. if x is true and y is false, then x → y is also false). But if x is false, then the value of y can be ignored; however, the operation must return some Boolean value and there are only two choices. So by definition, x → y is true when x is false (relevance logic rejects this definition, by viewing an implication with a false premise as something other than either true or false).

It also uses the second interpretation that I mentioned in my earlier comment (4 above this one), with true being default, rather than the one we've been discussing.