I’m already so done with this course.
My textbook:
p: “The weather is bad.”
Exercise:
Represent “the weather is good” using logical symbols.
Me: How am I supposed to answer that? You didn’t give me a letter for that. I guess I’ll use q?
Expected answer: ~p
THIS IS LITERALLY THE CLASS ABOUT LOGIC DHDJFBDHDJDHDHDH
Who let neurotypicals write a logic textbook istg
That’s not how it’s usually going to work in discrete - that’s the message the book is trying to communicate to you.
Think like an engineer designing a computer. The state of the weather is something that we are introducing as a binary here - bad or not bad, good or not good.
I’m sure the next few chapters will talk about things like truth tables, right? Try to imagine what those would look like with a “trinary” logic system. Remember math is a tool we use to abstract reality efficiently.
@andros_rex @SuperNovaStar Picking something as continuous as “the weather” to explain negation is just stupid.
Pick something like “locked” or “unlocked”.
Yes, there’s a transition, and we all wave our hands and pretend it isn’t there. The same thing happens in Boolean algebra, when negating something.
Best not to get involved with “all”, “none”, “null”. Because you’ve left out “some”, “many”, “any”, “few”, “more”, “less”, and a host of more subtle values.
@andros_rex @SuperNovaStar Programming languages do logic a lot of injustice, often assuming certain values are false, most values are true, and a few are weird (like “none”). Those are implementations for practical reasons, and not pure math.
Exactly. And sometimes you need to understand the underlying logic well before you even try to program anything. It is far easier to know set theory and then adapt that knowledge to programming than to learn a warped, trimmed down version of set theory just to fit programming languages and then try to derive the real thing once you run into a problem that needs it.
I tool a sql class, so if the trinary logic is True, False, and Null then I don’t have to imagine it, I already learned it.
I suppose you could have “true”, “false”, and “unknown” too. That could be interesting. But it wouldn’t look all that different - AND compares the values and returns the less certain of the two. OR compares values and returns the more certain of the two. Unknown inverted is still unknown. Not that hard.
Qbits have four states, I think? Now those are fun truth tables.
Can you construct a truth table for a trinary logic system half adder?
Probably? I don’t feel like doing homework rn, though, and what would be the point?
Some programs might have reasons to add an additional truth value, (for example, most databases include “NULL”) but trinary would be a terrible choice for hardware. The tolerances are just much more forgiving when you’re detecting the presence/absence of a charge than trying to measure multiple distinct states.