Second, isn’t this just probability, which we already know and love? No, it isn’t. If I say that “the Leaning Tower of Pisa is extremely short”, I don’t mean that I’m very, very sure that it’s short. If I say “my mother was half Irish”, I don’t mean that I have no idea whether she was Irish or not, and might find evidence later on that she was completely Irish. Truth values are separate from probabilities.
Fuzzy logic is just sloppy probability, although Lofti Zadeh doesn’t realize it. (I heard him give a talk on it at NIH, and my summary of his talk is: He invented fuzzy logic because he didn’t understand how to use probabilities. He actually said: “What if you ask 10 people if Bill is tall, and 4 of them say yes, but 6 of them say no? Probabilities have no way of representing this.”)
You can select your “fuzzy logic” functions (the set of functions used to specify a fuzzy logic, which say what value to assign A and B, A or B, and not A, as a function of the values of A and B) to be consistent with probability theory, and then you’ll always get the same answer as probability theory.
The rules for standard probability theory are correct. But “sloppy” fuzzy-logic probability functions, like “A or B = max(A,B); A and B = min(A,B); not(A) = 1-A”, have advantages when Bayesian logic gives lousy results. Here are 2 situations where fuzzy logic outperforms use of Bayes’ law:
You have incomplete or inaccurate information. Say you are told that A and B have a correlation of 1: P(A|B) = P(B|A) = 1. By Bayes’ law, P(A^B) = P(AvB) = P(A) = P(B). Then you’re told that P(A) and P(B) are different. You’re then asked to compute P(A^B). Bayes law fails you, because the facts you’ve been given are inconsistent. Fuzzy logic is a heuristic that lets you plow through the inconsistency: it enforces p(AvB) >= p(A^B), when Bayes’ law just blows up.
You are a robot, making a plan. For every action you take, you have a probability of success that you always associate with that action. You assume that the probability of success for each step in a plan is independent of the other steps. But in reality, sometimes they are highly correlated. Because you assume probabilities are independent, you strongly favor short plans over long plans. Using fuzzy logic allows you to construct longer plans.
Fuzzy logic is just a pragmatic computational tool. Nothing that’s going to help you get around a paradox, except in the sense that it will let you construct a model that’s inaccurate enough that the paradox disappears from sight.
When you switch to using these numbers to differentiate between “short” and “extremely short”, that’s not probability. But then you’re no longer talking about truth values. You’re just measuring things. The number 17 is no more true than the number 3.
All that said, the approach you just described is interesting. I’m missing something, but it’s very late, so I’ll have to try to figure it out tomorrow.
He actually said: “What if you ask 10 people if Bill is tall, and 4 of them say yes, but 6 of them say no? Probabilities have no way of representing this.”)
You may have misunderstood what Zadeh was saying. Suppose Bill is 5 feet, 9 inches in height and all ten people know this. I.e. we are not attempting to represent the likelihood that Bill is or is not tall based on the uncertain evidence given by different people. It is not 60% likely that Bill is tall, and 40% likely that he is not. He is 5 feet, nine inches and everyone knows it. No one disagrees on his actual, measured height.
Now we could taboo the word tall, and we wouldn’t lose any information; and in some contexts that might be the right thing to do. However in practical, day-to-day life humans do use words like tall that have fuzzy, non-crisp boundaries. The truth value of a word like “tall” is better expressed as a real number than a boolean value. Fuzzy logic represents the apparent disagreement on whether or not Bill is tall by saying he is 60% tall and 40% not tall.
That isn’t what distinguishes fuzzy logic from probabilities. Both would represent this case with the number 0.6. The distinguishing feature of fuzzy logic is that it uses non-probabilistic functions to compute joint probabilities, to avoid various practical and computational problems.
You can select your “fuzzy logic” functions (the set of functions used to specify a fuzzy logic, which say what value to assign A and B, A or B, and not A, as a function of the values of A and B) to be consistent with probability theory, and then you’ll always get the same answer as probability theory.
How do you do this? As far as I understand, it is impossible since probability is not truth functional. For example, suppose A and B both have probability 0.5 and are independent. In this case, the probability of ‘A^B’ is 0.25, while the probability of ‘A^A’ is 0.5. You can’t do this in a (truth-functional) logic, as it has to produce the same value for both of these expressions if A and B have the same truth value. This is why minimum and maximum are used.
Calling fuzzy logic “truth functional” sounds like you’re changing the semantics; but nobody really changes the semantics when they use these systems. Fuzzy logic use often becomes a semantic muddle, with people making the values simultaneously mean truth, probability, and measurement; interpreting them in an ad-hoc manner.
You can tell your truth-functional logic that A^A = A. Or, you can tell it that P(A|A) = 1, so that p(A^A) = p(A).
Calling fuzzy logic “truth functional” sounds like you’re changing the semantics;
‘Truth functional’ means that the truth value of a sentence is a function of the truth values of the propositional variables within that sentence. Fuzzy logic works this way. Probability theory does not. It is not just that one is talking about degrees of truth and the other is talking about probabilities. The analogue to truth values in probability theory are probabilities, and the probability of a sentence is not a function of the probabilities of the variables that make up that sentence (as I pointed out in the preceding comment, when A and B have the same probability, but A^A has a different probability to A^B). Thus propositional fuzzy logic is inherently different to probability theory.
You might be able to create a version of ‘fuzzy logic’ in which it is non truth-functional, but then it wouldn’t really be fuzzy logic anymore. This would be like saying that there are versions of ‘mammal’ where fish are mammals, but we have to understand ‘mammal’ to mean what we normally mean by ‘animal’. Sure, you could reinterpret the terms in this way, but the people who created the terms don’t use them that way, and it just seems to be a distraction.
At least that is as far as I understand. I am not an expert on non-classical logic, but I’m pretty sure that fuzzy logic is always understood so as to be truth-functional.
You might be able to create a version of ‘fuzzy logic’ in which it is non truth-functional, but then it wouldn’t really be fuzzy logic anymore.
Eep, maybe I should edit my post so it doesn’t say “fuzzy logic”. Not that I know that non-truth-functional fuzzy logic is a good idea; I simply don’t know that it isn’t.
You have a set of equations for p(X1), p(X2), etc., where
p(X1) = f1(p(X2), p(X3), … p(Xn))
p(X2) = f2(p(X1), p(X3), … p(Xn))
...
Warrigal is saying: This is a system of n equations in n unknowns. Solve it.
But this has nothing to do with whether you’re using fuzzy logic!
If you define the functions f1, f2, … so that each corresponds to something like
f1(p(X2), p(X3) , …) = p(X2 and (X3 or X4) … )
using standard probability theory, then you’re not using fuzzy logic.
If you define them some other way, you’re using fuzzy logic.
The approach described lets us find a consistent assignment of probabilities (or truth-values, if you prefer) either way.
In fuzzy logic, one requires that the real-numbered truth value of a sentence is a function of its constituents. This allows the “solve it” reply.
If we swap that for probability theory, we don’t have that anymore… instead, we’ve got the constraints imposed by probability theory. The real-numbered value of “A & B” is no longer a definite function F(val(A), val(B)).
Maybe this is only a trivial complication… but, I am not sure yet.
When you switch to using these numbers to differentiate between “short” and “extremely short”, that’s not probability. But then you’re no longer talking about truth values.
That is in fact precisely what I mean by “truth value”. What does “truth value” mean in your book?
It means that Bill is pretty nearly 3 feet tall, but not exactly. Perhaps it means that for half of all practical purposes, Bill is 3 feet tall; that may be a good formalization.
I’ll mention now that I don’t know if normal treatments of fuzzy logic insists that truth value functions be continuous. Mine does, which may make it ordinary, substandard, quirky, or insightful.
I don’t understand this statement: “p(AvB) >= p(A^B), when Bayes’ law just blows up”.
p(AvB) >= p(A^B) should always be true shouldn’t it? I know A^B → AvB is a tautology (p=1) and that the truth value of AvB → A^B depends on the values of A and B; when translated into probabilities show p(AvB) >= p(A^B) as true.
If you’re told p(A|B) = 1, but are given different values for p(A) and p(B), you can’t apply Bayes’ law. Something you’ve been told is wrong, but you don’t know what.
Note that the fuzzy logic rules given are a compromise between A and B having correlation 1, and being independent.
Fuzzy logic is just sloppy probability, although Lofti Zadeh doesn’t realize it. (I heard him give a talk on it at NIH, and my summary of his talk is: He invented fuzzy logic because he didn’t understand how to use probabilities. He actually said: “What if you ask 10 people if Bill is tall, and 4 of them say yes, but 6 of them say no? Probabilities have no way of representing this.”)
You can select your “fuzzy logic” functions (the set of functions used to specify a fuzzy logic, which say what value to assign A and B, A or B, and not A, as a function of the values of A and B) to be consistent with probability theory, and then you’ll always get the same answer as probability theory.
The rules for standard probability theory are correct. But “sloppy” fuzzy-logic probability functions, like “A or B = max(A,B); A and B = min(A,B); not(A) = 1-A”, have advantages when Bayesian logic gives lousy results. Here are 2 situations where fuzzy logic outperforms use of Bayes’ law:
You have incomplete or inaccurate information. Say you are told that A and B have a correlation of 1: P(A|B) = P(B|A) = 1. By Bayes’ law, P(A^B) = P(AvB) = P(A) = P(B). Then you’re told that P(A) and P(B) are different. You’re then asked to compute P(A^B). Bayes law fails you, because the facts you’ve been given are inconsistent. Fuzzy logic is a heuristic that lets you plow through the inconsistency: it enforces p(AvB) >= p(A^B), when Bayes’ law just blows up.
You are a robot, making a plan. For every action you take, you have a probability of success that you always associate with that action. You assume that the probability of success for each step in a plan is independent of the other steps. But in reality, sometimes they are highly correlated. Because you assume probabilities are independent, you strongly favor short plans over long plans. Using fuzzy logic allows you to construct longer plans.
Fuzzy logic is just a pragmatic computational tool. Nothing that’s going to help you get around a paradox, except in the sense that it will let you construct a model that’s inaccurate enough that the paradox disappears from sight.
When you switch to using these numbers to differentiate between “short” and “extremely short”, that’s not probability. But then you’re no longer talking about truth values. You’re just measuring things. The number 17 is no more true than the number 3.
All that said, the approach you just described is interesting. I’m missing something, but it’s very late, so I’ll have to try to figure it out tomorrow.
You may have misunderstood what Zadeh was saying. Suppose Bill is 5 feet, 9 inches in height and all ten people know this. I.e. we are not attempting to represent the likelihood that Bill is or is not tall based on the uncertain evidence given by different people. It is not 60% likely that Bill is tall, and 40% likely that he is not. He is 5 feet, nine inches and everyone knows it. No one disagrees on his actual, measured height.
Now we could taboo the word tall, and we wouldn’t lose any information; and in some contexts that might be the right thing to do. However in practical, day-to-day life humans do use words like tall that have fuzzy, non-crisp boundaries. The truth value of a word like “tall” is better expressed as a real number than a boolean value. Fuzzy logic represents the apparent disagreement on whether or not Bill is tall by saying he is 60% tall and 40% not tall.
That isn’t what distinguishes fuzzy logic from probabilities. Both would represent this case with the number 0.6. The distinguishing feature of fuzzy logic is that it uses non-probabilistic functions to compute joint probabilities, to avoid various practical and computational problems.
How do you do this? As far as I understand, it is impossible since probability is not truth functional. For example, suppose A and B both have probability 0.5 and are independent. In this case, the probability of ‘A^B’ is 0.25, while the probability of ‘A^A’ is 0.5. You can’t do this in a (truth-functional) logic, as it has to produce the same value for both of these expressions if A and B have the same truth value. This is why minimum and maximum are used.
Calling fuzzy logic “truth functional” sounds like you’re changing the semantics; but nobody really changes the semantics when they use these systems. Fuzzy logic use often becomes a semantic muddle, with people making the values simultaneously mean truth, probability, and measurement; interpreting them in an ad-hoc manner.
You can tell your truth-functional logic that A^A = A. Or, you can tell it that P(A|A) = 1, so that p(A^A) = p(A).
‘Truth functional’ means that the truth value of a sentence is a function of the truth values of the propositional variables within that sentence. Fuzzy logic works this way. Probability theory does not. It is not just that one is talking about degrees of truth and the other is talking about probabilities. The analogue to truth values in probability theory are probabilities, and the probability of a sentence is not a function of the probabilities of the variables that make up that sentence (as I pointed out in the preceding comment, when A and B have the same probability, but A^A has a different probability to A^B). Thus propositional fuzzy logic is inherently different to probability theory.
You might be able to create a version of ‘fuzzy logic’ in which it is non truth-functional, but then it wouldn’t really be fuzzy logic anymore. This would be like saying that there are versions of ‘mammal’ where fish are mammals, but we have to understand ‘mammal’ to mean what we normally mean by ‘animal’. Sure, you could reinterpret the terms in this way, but the people who created the terms don’t use them that way, and it just seems to be a distraction.
At least that is as far as I understand. I am not an expert on non-classical logic, but I’m pretty sure that fuzzy logic is always understood so as to be truth-functional.
Eep, maybe I should edit my post so it doesn’t say “fuzzy logic”. Not that I know that non-truth-functional fuzzy logic is a good idea; I simply don’t know that it isn’t.
I think I’ve figured it out.
You have a set of equations for p(X1), p(X2), etc., where
p(X1) = f1(p(X2), p(X3), … p(Xn))
p(X2) = f2(p(X1), p(X3), … p(Xn))
...
Warrigal is saying: This is a system of n equations in n unknowns. Solve it.
But this has nothing to do with whether you’re using fuzzy logic!
If you define the functions f1, f2, … so that each corresponds to something like
f1(p(X2), p(X3) , …) = p(X2 and (X3 or X4) … )
using standard probability theory, then you’re not using fuzzy logic. If you define them some other way, you’re using fuzzy logic. The approach described lets us find a consistent assignment of probabilities (or truth-values, if you prefer) either way.
Is this really the case?
In fuzzy logic, one requires that the real-numbered truth value of a sentence is a function of its constituents. This allows the “solve it” reply.
If we swap that for probability theory, we don’t have that anymore… instead, we’ve got the constraints imposed by probability theory. The real-numbered value of “A & B” is no longer a definite function F(val(A), val(B)).
Maybe this is only a trivial complication… but, I am not sure yet.
That is in fact precisely what I mean by “truth value”. What does “truth value” mean in your book?
Then what does it mean in fuzzy-logic to say “The truth value of ‘Bill is 3 feet tall’ is .5” ?
It means that Bill is pretty nearly 3 feet tall, but not exactly. Perhaps it means that for half of all practical purposes, Bill is 3 feet tall; that may be a good formalization.
I’ll mention now that I don’t know if normal treatments of fuzzy logic insists that truth value functions be continuous. Mine does, which may make it ordinary, substandard, quirky, or insightful.
I don’t understand this statement: “p(AvB) >= p(A^B), when Bayes’ law just blows up”.
p(AvB) >= p(A^B) should always be true shouldn’t it?
I know A^B → AvB is a tautology (p=1) and that the truth value of AvB → A^B depends on the values of A and B; when translated into probabilities show p(AvB) >= p(A^B) as true.
If you’re told p(A|B) = 1, but are given different values for p(A) and p(B), you can’t apply Bayes’ law. Something you’ve been told is wrong, but you don’t know what.
Note that the fuzzy logic rules given are a compromise between A and B having correlation 1, and being independent.