Black and White

Some people say that "Life is not black and white." I disagree. Life is black and white, it's just dithered.

Many people use phrases like that, but most of them probably don't realize that they are unconsciously appealing to a mode of thinking currently known as "fuzzy logic". I do not agree with fuzzy logic. I do not believe it is logical.

Fuzzy logic is derived from a worthy concern: circumstances where people try to apply simple solutions to complex problems. For example, trying to determine whether a glass is "full" or "empty". What if the glass is half-full? It which neither be quite full nor empty? What you took a drink out of a full glass? How many drinks would you have to take before it was considered empty? And would two people always agree on exactly whether a certain glass was full or empty?

A student of fuzzy logic would point out that such an endeavor involves much approximation and subjective judgment. A simple boolean statement cannot accurately summarize whether the glass is "full" or "empty". So fuzzy logic attempts to generalize the problem so that you can say things like:

Full Glass + Me drinking out of it = A Not as full glass

Some people consider fuzzy logic to be superior to boolean logic, and some even consider boolean logic to be a subset of fuzzy logic. Many programmers have implemented fuzzy logic in their software.

But there's a problem with that. All of those fuzzy programs are 100% built on top of boolean systems. At the atomic level all of those fuzzy programs are really just boolean. Fuzzy logic can be completely defined by boolean logic while boolean logic cannot be defined by fuzzy logic (because it wouldn't be fuzzy anymore.) So if anything, boolean is not a subset of fuzzy, fuzzy is a subset of boolean.

But the fundamental problem with fuzzy logic comes from its ignorance of complexity. As I said above, fuzzy logic is derived from a worthy concern: circumstances where people try to apply simple solutions to complex problems. The problem is that fuzzy logic commits the same error it is trying to correct. It too is trying to apply a simple solution to a complex problem.

A boolean value may be simple, but a boolean system is not. A boolean system is comprised of multiple boolean values. A boolean system is complex. Trying to precisely summarize whether a glass is full or empty by using a boolean value is not reasonable. That is a complex problem and it needs a complex solution. It needs a complex boolean system.

For example, if someone asks me if I could have lunch with them the next day but I was not sure if I was working that day and what you need to first check my schedule and my schedule is not presently with me, a simple "yes" or "no" would not be sufficient. I would need to respond with a more complicated answer like "I will be able to if I am not working tomorrow." or "I am not sure but I will know once I check my schedule." Thus I would be giving a complex answer to fit a complex question.

test
test 2

You can Log In using OpenID to comment.