Chameleon (sometimes penguin or dog) furry artist and shitposter. Like airplanes, chemicals, theme parks, music, Yu-Gi-Oh, baking, and baths but isn't good at any of those. Super busy at work all the time.

More active on FA or Fediverse

Posts may contain strong language or mature references. VIOWER EXCRETION ADVISD.

Icon by https://www.furaffinity.net/user/klaora
Header image by https://www.furaffinity.net/user/charmersshelter/

posts from @Miff tagged #miff thinks they know stuff

also:

Material nonimplication (aka "abjunction" or "implies not") is my favorite boolean operator because, while it's pretty much useless for electronics or computing, you can build a complete functioning circuit using NIMPLY logic, which I will now ramble about.

I'll be using ⥇ to represent the operation here since the Unicode symbol that looks closest to the mathematical one (U+219B) has some rendering issues on my machine.

First off, what the operator means is that A ⥇ B is true if and only if B is true but A is false. So it's essentially an odd AND. This also means it's not communitive like most boolean operators since swapping A and B get different results.

ABA ⥇ B
000
011
100
110

So with a constant B = 1, we can get NOT.

A ⥇ 1 ⇔ ¬A

Then since it's just an odd variant of AND, we can negate A to turn it into an actual AND.

(A ⥇ 1) ⥇ B ⇔ ¬A ⥇ B ⇔ A ∧ B

By inverting B instead of A, we get a NOR gate instead.

A ⥇ ¬B ⇔ A ⥇ (B ⥇ 1) ⇔ A ↓ B

Interestingly, the NIMPLY operator works great for defining XOR as "A OR B but not A AND B".

(A ∧ B) ⥇ (A ∨ B) ⇔ A ⊕ B

In summary:

NOT: ¬A ⇔ A ⥇ 1

OR: A ∨ B ⇔ (A ⥇ (B ⥇ 1)) ⥇ 1

NOR A ↓ B ⇔ A ⥇ (B ⥇ 1)

AND: A ∧ B ⇔ (A ⥇ 1) ⥇ B

NAND: A ↑ B ⇔ ((A ⥇ 1) ⥇ B) ⥇ 1

XOR: A ⊕ B ⇔ ((A ⥇ 1) ⥇ B) ⥇ ((A ⥇ (B ⥇ 1)) ⥇ 1)

XNOR: A ⊙ B ⇔ (((A ⥇ 1) ⥇ B) ⥇ ((A ⥇ (B ⥇ 1)) ⥇ 1)) ⥇ 1

In conclusion, it's likely I got some math wrong somewhere and TIL what the mathematical symbol for exclusive nor is.