Art Electric
Fuzzy Logic
Carpet Gallery
partly true story
fuzzy logic is...
Computer Recreations

by Ian Stewart

A Partly True Story

Allow me to introduce myself: Epimenides, professional liar. Well, that's not quite true. My name is really Herman Fenderbender, and I work for a car insurance company. But my friends at the Paradox Club call me Epimenides, and when I'm with them, I always lie.
Last Thursday it was raining, so I got to the club a bit late. Socrates and Plato were leaning against the bar, and next to them was a chubby little fellow.
"This is our newest member, Lukasiewicz," Plato chimed.
Horrified to meet you," I said in disgust. My name's Zeno.
"He means he's delighted to meet you, and his name is Epimenides," Socrates explained. "Epimenides always tells lies."
"That's not true," I said. I opened my wallet and took out my business card. "This isn't my card," I commented and handed it over. Lukasiewicz read one side of the card: The sentence on the other side of this card is true. He turned the card over and saw: The sentence on the other side of this card is false.
"Socrates is right, however, I always tell lies," I boasted.
Lukasiewicz shook my hand warmly. "It's one third false that I'm pleased to meet you, and both sides of your card are half true."
"Pardon?" I said.
"Lukasiewicz is interested in fuzzy logic," Plato explained.
"Instead of just the truth values 1 for a true statement and 0 for a false statement," Lukasiewicz said, "I am prepared to consider half-truths with truth value 0.5 or near-falsehoods with value 0.1—in general, any number between 0 and 1."
"Why would anyone want to do that?" I asked, bemused.
Lukasiewicz smiled. "Suppose I said the club president looks like Charlie Chaplin. Do you think that's true?"
"Of course not!"
"Not even his feet?"
"Well, I guess they do rather—"
"So it's not completely false, either."
"Well, he does look a bit like Chaplin."
Lukasiewicz leaned toward me. He had very penetrating eyes. "How much like him?"
"Around 15 percent I'd say."
"Good. Then my statement, 'the club president looks like Charlie Chaplin' is 15 percent true. It has a truth value of 0.15 in fuzzy logic."
"That's just playing with words. It doesn't mean anything."
Lukasiewicz grasped my arm. "Oh, but it does. It helps to resolve paradoxes. For instance, you claim to be a complete liar. Let's think about your statement 'I am lying.' Or, more simply, 'this statement is false.' In classical logic, it is a paradox, yes? If it is true, then it is false; if it is false, then it is true. To put it another way, you have a statement P with truth value p, which is 0 or 1, and P says the truth value of this sentence is 1 - p."
"Sorry, I didn't quite get that."
"Ah. If P is true, then its negation, not-P, is false, and its truth value is 0. And conversely. Now, 1 - 0 = 1 and 1 - 1 = 0, so if the truth value of P is p, then the truth value of not-P is 1 - p."
 "Oh. I see."
 "Right. Now the problem is that 'this statement' is P, so P is telling us that the truth value of P is 1 - p. That's where the paradox comes from. If p = 0, then P tells us that p = 1 - 0 = 1. And if p = 1, then P tells us that p = 1 - 1 = 0. Neither choice is consistent."
 I gave him a condescending smile. "Luke, all you've done is reformulate in complicated algebraic language what was obvious all along."
 He smirked. "Maybe. But in fuzzy logic, there is a consistent solution to the equation p = 1 - p, namely, p = 0.5. So your claim to be a permanent liar is a half-truth, and everything works out fine. Your own statement leads inevitably to fuzzy logic." Plato slapped him on the back, and Socrates nearly knocked his cocktail over laughing. My face went red, but I saw the point.
 "What about his business card?" Plato asked. Lukasiewicz was about to speak, but I stopped him. "Let me answer that. Seems to me I have two statements P and Q with truth values p and q. Moreover, P says Q is true, and Q says P is false. So the corresponding truth-value equations are

p = q for P

q = l - p for Q.

These make no sense if p and q can only be 0 or 1. But there's a unique solution in fuzzy logic: p = q = 0.5. So each side of my card is a half-truth, and there's no paradox anymore."
"Precisely," Lukasiewicz said. "But it goes further than that. What we've been discussing is the beginnings of a whole new theory of dynamic logic, invented by Gary Mar and Patrick Grim in the department of philosophy of the State University of New York at Stony Brook. It provides a link between semantic paradoxes and chaos theory."
It was Socrates' turn to look puzzled.
"Oh, wake up. You know what chaos is. Simple deterministic dynamics leading to irregular, random-looking behavior. Butterfly effect. That stuff."
"Of course, I know that," Socrates said in irritation. "No, it was the idea of dynamic logic that was puzzling me. How can logic be dynamic?"
 Lukasiewicz looked surprised. "How can it be anything else when discussing self-referential statements? The statement itself forces you to revise your estimate of its truth value. That revised value has to be revised again and again. Consider the Paradox of the Liar , your statement P: 'this statement is false'. Earlier I wrote an equation for its truth value: p = 1 - p. But what I should really have written was a process that forces constant revision of your assessment of its truth value, p ← 1 - p. If you assume that P has a particular truth-value p, then P itself tells you to replace that truth value by 1 - p. For example, if you started out thinking that P was 30 percent true, so that p = 0.3, the revision rule implies that p = 0.7, which in turn implies that p = 0.3 again...and you get an infinite sequence of truth values, oscillating periodically between the two values 0.3 and 0.7. The classical paradox, with p = 0 or 1 , leads to the sequence 0, 1, 0, 1,...which faithfully reflects the logical argument if P is false, then P is true, so P is false, so P is true, so.... the logical oscillations of the paradox are captured by the dynamics of the truth value."
"And p = 0.5 is the only value that doesn't lead to an oscillation," Plato mused.
"Precisely. Now, the Dualist Paradox on your business card is really a logical dynamic:

p ← q

q ← l - p

Suppose you start out by estimating p = 0.3, q = 0.8. Then your first revision is to p = 0.8, q = 0.7. A further revision leads to p = 0.7, q = 0.2, a third to p = 0.2, q = 0.3. A fourth revision gives p = 0.3, q = 0.8, and you're back where you started. It cycles with period four—unless you start at p = 0.5, q = 0.5, when everything stays unchanged."
"Okay, I'll buy that," I said. But what about the chaos?"
Lukasiewicz's face went very serious.
"Before I can explain that, I must be more precise," he said. "If you want to play around with these ideas for yourself, I'd better tell you how to calculate fuzzy truth values for combinations of logical statements [see box below]. Although all you really need to know at the moment is that not-P has truth value 1 - p if P has truth value p. Second, you must know how to assess the truth value of statements about statements.

Fuzzy Logic

In classical logic,a statement has a truth value of either 1 for true or 0 for false. The statement "the sun is shining" has a truth value of 0 if it is cloudy. In general, statement P has a truth value p equal to 1 or 0. In fuzzy logic, a statement can have a truth value of between 1 and 0. If a cloud obscures a quarter of the sun, then statement P has a value of 0.25.
In fuzzy logic, like the classical theory, the truth value of a statement will change when applying the operators NOT, AND, OR, IMPLIES and IF AND ONLY IF.

NOT-P has a truth value of 1 - p.
EXAMPLE: If the sun is shining with a truth value of 0.25, then the sun is NOT shining with a truth value of 0.75.

P AND Q has a truth value equal to the lesser of p and q where q is the truth value of statement Q. EXAMPLE: The sun is shining with a truth value of 0.25, AND Jane is getting tan with a truth value of 0.10. The value of the example is 0.10.

P OR Q has a truth value equal to 1 the greater of p and q. EXAMPLE: The sun is shining with a truth value of 0.25, OR Jane is getting tan with a truth value of 0.10. The value of the example is 0.25.

P IMPLIES Q has a truth value equal to the lesser of 1 and 1 - p + q.
EXAMPLE: If the sun is shining with a truth value of 0.25, then Jane is getting tan with a truth value of 0.10. The value of the example is 0.85.

P IF AND ONLY IF Q has a truth value equal to 1 - |p - q|, that is, one minus the absolute value of p minus q.
EXAMPLE: The sun is shining with a truth value of 0.25 IF AND ONLY IF Jane is getting tan with a truth value of 0.10. The value of the example is 0.85.

"I'd like an example," Socrates said.
"Okay.Suppose I said Plato is a good golfer. How true do you think that is?"
"Ooooh—about 40 percent," Socrates said. Plato gave him a nasty look. Well, Epimenides usually beats you, and he's pretty mediocre." I gave him an even nastier look.
"Fine. Let's call that statement S. It has a truth value s = 0.4. suppose I make a statement about the statement S. Suppose I utter statement T: 'S is 100 percent true.' How true is statement T?"
I thought for a moment. "Well, it's certainly not 100 percent true itself. Otherwise S would be 100 percent true, and we've already decided it isn't."
"Right. The degree of truth of my statement T, which is about S, depends on the actual truth value of S and on the truth value attributed to S by T. Here s = 0.4, but the value that T leads me to assess is 1. So T will be untrue to the extent that these two values differ, yes? The more inaccurate my assessment, the falser my statement becomes. Because they now differ by 0.6, T is false to the extent 0.6. That is, it is true to the extent 0.4."
"What if you'd said S is half true?"
Lukasiewicz nodded happily. "You'll see how nicely it works. That statement assesses the truth value of S as 0.5, but the actual value is 0.4. The difference is 0.1 , which is how false your statement is, so its truth value is 0.9. Because your assessment is only wrong by 10 percent, you're 90 percent correct."
"Ah. And if I'd said S is 40 percent true, I'd have been 100 percent right. So the truth value would have been 1. I've got it."
"Good. In general, suppose I have a statement P with truth value p and a statement Q that leads you to assess the truth value of P to be p'. Then the argument we've just been through says the truth value of Q is q = 1 - |p - p'|, where |x| means the absolute value of x (equal to x when x is positive, -x when x is negative). Let me call this the assessment formula."
Lukasiewicz thought for a moment. Now I can show you what I call the Chaotic Liar, statement C:

This statement is as true as it is assessed to be false.

If its truth value is c, then it instructs you to assess a truth value of 1 - c. So by the assessment formula, its truth value is 1 - |c - ( 1 - c)| = 1 - |1 - 2c|.
In short, there is a dynamic process

c ← l - | 1 - 2c |

of reassessment of the truth value c. Choose any starting value for c, say c = 0.12345, and calculate successive values. You'll find they are chaotic. Actually, I should warn you that because of round-off errors in your calculator or computer, the process may appear to settle down to either 0 or 1. It may help to replace the dynamic by c <- 1 - | 0.999999 - 2c|. You can even observe the famous butterfly effect of chaos theory-if a butterfly flaps its wings, it can cause a hurricane a month later. More prosaically, small changes in initial conditions make big changes to the subsequent dynamics. If you use a start value of 0.12346 instead, you get a different image."
Lukasiewicz paused. "Next there is the Chaotic Dualist, which involves two statements:

X: X is as true as Y is true

Y: Y is as true as X is false

"It's rather like your business card, Epimenides. The dynamics are

x ← l - |x - y|

y ← l - |y - (1 - x)|

To see what it does, you choose an initial pair of values, say, (x,y) = (0.2, 0.9), and calculate successive pairs of values. Think of them as coordinates and plot them in the plane. You get a geometric shape, called the attractor of the dynamic system. In this case, you get a triangle, densely filled with points [see right illustration below]. This representation can be transformed into a beautiful and intricate image known as an escape-time diagram. To create it, temporarily relax the conditions that x and Y lie between 0 and 1. The idea is to watch how far (x,y) moves from the origin (0,0) and to count how many calculation steps are needed before it goes beyond some threshold value. Then the point (x,y) is plotted in a color that depends on the number of steps required. To start, you should try a threshold value just larger than 1 [see left illustration below].

escape-time diagram logical attractor
comparison mouseover & link to program
comparison mouseover & link to program

DIAGRAMS OF "ESCAPE TIME" (left) and a logical attractor (right) were created to analyze a self-referential statement. Such statements typically lead to paradoxes in classical logic. The illustrations above are based on the sentence "the assessed falsehood of this statement is not different from its assessed truth."

"I begin to see now," Socrates said. "You take the train of thought involved in assessing the truth value of a set of self-referential statements and convert it into a dynamic process. Then you can apply all the techniques of chaos theory to that process. The escape-time plot is inspired by exactly the same method that creates all those wonderful multi-colored images associated with the Mandelbrot set: spirals, sea horses, cacti, stars and so on."
"Indeed. Here's one final idea for you to mull over. We can rephrase the Chaotic Liar as

The assessed falsehood of this statement is not different from its assessed truth.

In fuzzy logic, it is standard to interpret the adjective 'very' as forming the square of a truth value. So think about the rather woollier statement

The assessed falsehood of this statement is not very different from its assessed truth.

The statement leads to the dynamic

p ← l - (p - (l - p))²,

which converts into the form

p ← 4p(1 - p).

Chaos theorists call this the logistic dynamic system—so my statement is the Logistic Liar. It's chaotic, too—try it."

At midnight, the Paradox Club closed, and Lukasiewicz and I walked out into the street. I realized I had been so absorbed working out examples of fuzzy-logical chaos that I had forgotten to ask one very important question. "Luke, it's all very pretty, but how significant is it?"
"Well," he said. Mar and Grim point out that it gives a geometric approach to semantic complexity, letting you distinguish between different systems of self-referential statements. They also say it can be used to prove there is no decision procedure that will tell you whether or not a given system is chaotic. That's a result in the same general line as Kurt Gdel's famous theorem on the undecidability of arithmetic. It's potentially rather deep stuff, Epimenides."
"So I see. Connections between logic and chaos— Amazing! But wait a second. How can I be sure everything you just told me is true?"
"If I have ever lied to you, I ask the gods to strike me down with two lightning bolts."
Just then, thunderclouds formed in the sky, and a single lightning bolt zapped Lukasiewicz into oblivion. I looked up, shaking my fist at the clouds: "So was he telling me the whole truth, or only half?"


DOES GOD PLAY DICE? THE MATHEMATICS OF CHAOS. Ian Stewart. Basil Blackwell, 1990.
SEMANTICS OF PARADOX. Gary Mar and Patrick Grim in Nos, Vol. 25, No. 5, pages 659-693; December 1991.
SELF-REFERENCE AND CHAOS IN FUZZY LOGIC: RESEARCH REPORT #92-01. Patrick Grim. Group for Logic and Formal Semantics, Department of Philosophy S.U.N.Y at Stony Brook,1992.

Originally published in February 1993 in Scientific American
This article is © Ian Stewart and is here reproduced with his kind permission.
Website, Text and Some Images Copyright © 2002, all rights reserved.