Derive all four propositional logic operators from nand

Click For Summary
All four propositional logic operators (negation, disjunction, conjunction, and implication) can be derived from the NAND operator alone. The derivations utilize the truth table for NAND, where negation is defined as P N P, conjunction as (P N Q) N (P N Q), disjunction as (P N P) N (Q N Q), and implication as (P N Q) N (Q N Q). The discussion highlights the significance of NAND gates in electronics, suggesting their prevalence may stem from their simplicity in circuit construction. Additionally, there is a contrast between the foundational components of logic viewed by philosophers and programmers versus the cost considerations of electronics. Overall, the versatility of NAND in logic and electronics is emphasized.
Uvohtufo
Messages
23
Reaction score
0
So I recently learned that you can derive all four of the propositional logic operators (~, V, &, →) from Nand alone.

As I have understood it, so long as you have negation, and one of the other operators, you can derive the rest. Like P → Q can be defined as ~P V Q.

However, I learned that if you start with the Nand (Not and) operator, you can derive all four. I'll use ' N ' to designate Nand.

The truth table for Nand being
P Q | P N Q
T T | F
F T | T
T F | T
F F | T

~P := P N P
P & Q := (P N Q) N (P N Q)
P V Q := (P N P) N (Q N Q)
P -> Q := (P N Q) N (Q N Q)

Isn't that cool?
 
Physics news on Phys.org
Yes, it's cool.

I wonder if that explains why NAND gates are common electronic components. But perhaps NAND gates are common only because the circuit is simple to construct.
 
Stephen Tashi said:
Yes, it's cool.

I wonder if that explains why NAND gates are common electronic components. But perhaps NAND gates are common only because the circuit is simple to construct.

Yeah I am not sure.

I think its interesting how when symbolic logic was being invented, implication and negation were viewed as the basic components of logic. Today it seems like programmers view and or or and negation as basic parts.

Unlike philosophers or programmers, electronics people have a cost constraint. Nand is simpler, but is it cheapest?
 
You have also NOR.
 
The standard _A " operator" maps a Null Hypothesis Ho into a decision set { Do not reject:=1 and reject :=0}. In this sense ( HA)_A , makes no sense. Since H0, HA aren't exhaustive, can we find an alternative operator, _A' , so that ( H_A)_A' makes sense? Isn't Pearson Neyman related to this? Hope I'm making sense. Edit: I was motivated by a superficial similarity of the idea with double transposition of matrices M, with ## (M^{T})^{T}=M##, and just wanted to see if it made sense to talk...

Similar threads

  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 7 ·
Replies
7
Views
2K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 7 ·
Replies
7
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 2 ·
Replies
2
Views
844
  • · Replies 16 ·
Replies
16
Views
3K