Ok. I feel like I should have a further question about that but donât. Iâll think about it as just equivalent and simpler but not more fundamental.
Interesting. I think I wonât try again. But are there like, rules or methods of simplifying logic expressions like this? Iâm guessing some of the algebra knowledge Iâve got will come in handy with that somehow. Iâm wondering if someone like you who understands it better can see how my expression could be translated into the simpler way. Maybe Iâll find out as we go.
Iâm going to continue though Eternityâs thread.
Iâve skipped some questions you asked Eternity because they seemed more specifically targeted at them.
and(1, 1, 1, 1, 0, 1) = 0
and:
False unless all inputs are true.
or:
True unless all inputs are false
xor:
True unless all inputs are identical.
Actually xor I am unsure on for multiple inputs. Is xor only true if one input is true, or is it only true if the inputs arenât identical?
Xor or either-or means âeither input but not bothâ. âEitherâ seems to imply binary inputs to me. So Iâm not sure how this extends to multiple inputs. It could mean âsome inputs but not allâ, or it could mean âany one input but not moreâ.
I know that a negated xor gate is an equality(xnor) gate. If this is still true with multiple inputs then my one sentence description of xor is right.
I donât think trying to find out what âfundamentalâ means in this context is needed, nor determining which things are more fundamental.
There are some rules related to the not operator. But I donât know many rules like that.
ok
In English, xor means only (exactly) one but English is often ambiguous between (inclusive) or and xor so you have to use context to figure it out since they share one word (âorâ). The term âand/orâ is an unambiguous way to say inclusive or. In logic, xor can mean an odd number of true inputs.
Note that some operators treat their inputs symmetrically. Each input is treated the same and order doesnât matter. In other words: (xor x y) = (xor y x) This also works with âandâ and âorâ. What are some other operators it works and doesnât work with?
Extending operators to more inputs makes more sense with operators that donât care about input order. I donât think weâll attempt it with operators that give different outputs for different orders of the same inputs.
Make truth tables for these:
eq(x, eq(y, z))
xnor(x, xnor(y, z))
Do not jump to conclusions. There will be a followup.
Cool. I can see that itâs showing true for even inputs and false for odd (I actually wasnât aware of zeroâs evenness till now. What I read briefly about it made sense.)
Yeah I had noticed this âcommutativityâ of some operators. Cool. I can see that like multiplication and addition OR can be nested and give the same result.
So with these, the order doesnât matter for two inputs and above:
or
and
xor
equality
With these, it works with only two inputs. With more than two inputs it seems to care about the order:
nor
nand
e.g nand(x nand(y z)) and nand(z nand(y x)) have different truth tables. But nand(x y) and nand(y x) have the same truth table.
not(xor(x, xor(y, z))) has the same but negated output of eq(x, eq(y, z)) and xnor(x, xnor(y, z)).
That means xor(x, xor(y, z)) and xnor(x, xnor(y, z)) have the same truth table. Which is surprising. But I guess the implied NOTâs in xnor when nested cancel each other out like a double negative? That makes sense.
Some two-input operators have more than one reasonable way to extend them for more inputs. Strategies for dealing with this include: explicit definitions of what you mean, following conventions, or avoiding ambiguity (e.g. in many contexts you can just not use nand, nor or xnor, at all, or at least avoid using them with 3+ inputs, and just use combinations of unambiguous operators instead).
nand and xnor arenât English anyway so are less relevant to philosophy. Some common operators for expressing English are {not, and, or, xor, implies, equality, inequality}.
and(x, y, z) = and(x and(y z)) or and(y and(x z)) or and(z and(y x))
Okay nand in english would be: not a and b and c. Like âitâs not raining and cold and windy todayâ. In that case itâd be nand(raining, cold, windy) or not(and(raining and(cold windy))) etc. So itâs saying today the weather is not all of those things but could be any other combination of them (including none of them).
Actually thinking about it I think you mean to do the one sentence explanations like we did before? In that case:
nand:
True unless all inputs are true, then false.
nor:
False unless all inputs are false, then true.
But in logic with multiple inputs, it is true when the inputs are odd otherwise itâs false:
The difference for 3 inputs is that in logic, when all the inputs are true, xor is true. But in english, when all the inputs are true, xor is false. All the other cases with 3 inputs are the same.
I know you donât play video games in general but I think you should try Baba Is You unless that sounds bad to you. No experience with other games is needed, and thereâs no need to be good with button pressing and controls. Eternity Async Tutoring - #333 by Elliot