logical propositions, and the resulting truth values are possibilities rather than

necessities. In a useful rule, we employ necessities rather than possibilities.

This means that the fuzzy modus ponens that employs an implication operator is

not applicable to a rule-based system such as we are describing in this book.

Exercise Imply.fps: Evaluating Implications. Program Imply.fps calculates the

truth value of using the fuzzy implication operators given in (3.7) “ (3.9), and for

arbitrary truth values for P and Q. As before, run TFLOPS and load Imply.fps

from folder Examples. First, check for crisp values of P and Q to make sure the for-

mulas give the classical values of the implication for crisp inputs. Then check for

values of P and Q between zero and one. It will be very quickly obvious that the

different formulas are not equivalent, but can produce different values for the

truth value of the implication.

When running Imply.fps, try both P and Q ¼ 0. In this case, for all fuzzy impli-

cation operators that reduce to the classical values for crisp operands, the truth value

of P ! Q is 1. This can be interpreted as “If we don™t know anything, then anything

is possible.”

If we use the implication operator to evaluate the truth value of the consequent of

the rule “if P then Q”, we would conclude that Q is true. In other words, the implication

operator returns the possibility that Q might be true, judging from that rule alone. In

fuzzy math terms, the implication operator returns the possibility that Q might be

true, rather than the necessity of Q being true. In expert systems that assign a single

truth value to data, this could be seriously misleading; in such expert systems, we

would ordinarily expect a truth value to re¬‚ect the extent to which the data support

a conclusion, rather than the extent to which the data fail to refute a conclusion.

The problem is further complicated by the number of fuzzy implication operators

available (Klir and Yuan, 1996 list 14), and the lack of any clear guidelines as to

which fuzzy implication one should use (Klir and Yuan, 1995, p. 312), “To select

an appropriate fuzzy implication for approximate reasoning under each particular

situation is a dif¬cult problem”. In general, however, if any implication is employed

to evaluate a rule, if the antecedent is false the rule will always be ¬reable; if the

antecedent is true the rule may or may not be ¬reable, depending on the particular

implication operator chosen. If the antecedent has truth value 1 and the prior truth

value of the consequent is 0, the rule will never be ¬reable no matter what impli-

cation operator is chosen.

All these facts lead us to conclude that the implication operator is of dubious

value in a fuzzy expert system.

3.2 ELEMENTARY FUZZY LOGIC AND FUZZY PROPOSITIONS

Like classical logic, fuzzy logic is concerned with the truth of propositions.

However, in the real world propositions are often only partly true. In addition, we

commonly use terms, which are not sharply de¬ned. It is hard to characterize the

truth of “John is old” as unambiguously true or false if John is 60 years old.

TEAM LinG - Live, Informative, Non-cost and Genuine !

37

3.2 ELEMENTARY FUZZY LOGIC AND FUZZY PROPOSITIONS

In some respects John at 60 is old being eligible for senior citizen bene¬ts at many

establishments, but in other respects John is not old since he is not eligible for Social

Security. So, we should allow the truth value of (John is old) to take on values in the

interval [0, 1], not just 0 or 1.

We shall use the term “truth value” many times in this book; let us de¬ne it now.

The truth value of a proposition is a measure in the interval [0, 1] of how sure we are

that the proposition is true, that is, consistent with its constituent elements. Not only

propositions have truth values; data have truth values associated with them, a

measure of the extent to which the values of the data are valid; rules have truth

values associated with them, a measure of the extent to which the rule itself is

valid. In general, then, the truth value of (something) is a measure in [0, 1] of the

validity of (something).

As in classical logic, a fuzzy proposition is an assertion whose truth can be tested.

Most such assertions are comparisons between observed and speci¬ed data values.

Unlike classical logic, a fuzzy proposition may be partly true. There are two reasons

why a fuzzy proposition may be only partly true. First, the data being tested may be

only partly true, that is, may have truth values less than 1; second, the comparison

itself may only hold in part, so that the truth value of a comparison may be less than 1.

The structure of fuzzy propositions may be considerably more complex than the

structure of crisp (non-fuzzy) propositions. In crisp propositions, data are seldom

multivalued, and their truth values (if the data exist) are always 1. Crisp comparisons

are all Boolean, returning either 0 or 1. But in fuzzy propositions, single-valued data

are accompanied by truth values. Data in a fuzzy system may also be multivalued, as

we shall see in Section 3.3.1 on fuzzy sets; and truth values may also be multivalued,

as we shall see in Section 3.3.2 on fuzzy numbers. Comparisons among data com-

monly return truth values other than 0 or 1. Fuzzy propositions will be discussed in

more detail in Chapter 4; for the present, let us be content with the simple fact that

fuzzy propositions may have truth values anywhere between 0 and 1 inclusive.

Let us see what changes there are, if any, in ¬nding the truth values of NOT P, P AND

Q, P OR Q, and P ! Q when the truth values can be any number between 0 and 1.

First of all, tv(NOT P) ¼ 1 2 tv(P) will always hold in this book.

To compute tv(P AND Q) we cannot use a table like Table 3.1 since the possible

values of tv(P) and tv(Q) are now in¬nite. We must use formulas like equations (3.1)“

(3.3). In fuzzy logic, we can use any one of these formulas to determine tv(P AND Q).

However, although they all agree when the truth values are 0 or 1, one can now

produce different results for truth values in the interval [0, 1]. For example, if

tv(P) ¼ 0.8 and tv(Q) ¼ 0.5, then equation (3.1) gives 0.5 for tv(P AND Q) but

equation (3.2) produces a value of 0.4. Methods of getting tv(P AND Q) in fuzzy

logic are discussed in Section 4.1 when we de¬ne what are called t-norms.

For tv(P OR Q) in fuzzy logic, we can use formulas like equations (3.4) “ (3.6);

such methods are called t-conorms.

In fuzzy logic, any algorithm that gives Table 3.2 when the truth values are 0 or 1

may be used to compute tv(P ! Q) if the truth values are now in [0, 1]. So,

equations (3.9) “(3.11) can be employed to obtain tv(P OR Q) for tv(P) and tv(Q)

since both are in [0, 1].

TEAM LinG - Live, Informative, Non-cost and Genuine !

38 FUZZY LOGIC, FUZZY SETS, AND FUZZY NUMBERS: I

Up to now we have only looked at simple propositions. Consider the compound

proposition

P AND (Q OR NOT R) (3:14)

To obtain its truth value let us use the logic originally proposed by Lot¬ Zadeh in

his seminal 1965 paper on fuzzy sets: min “max fuzzy logic, which means min for

AND, equation (3.1), and max for OR, equation (3.4). The truth value of the pro-

position in equation (3.10) is then

min( p, max(q, 1 À r)) (3:15)

3.3 FUZZY SETS

Let X be a collection of objects called a universal set. The sets we wish to discuss

will all be subsets of X.

To explain the transition from regular sets, also called crisp sets, to fuzzy sets we

start with crisp subsets of X. Let A be a subset of X. For each x in X we know whether

x belongs or does not belong to A. De¬ne a function on X whose values are zero or one

as follows: (1) the value of the function at x is one if x is a member of A; and (2) the

value is zero if x does not belong to A. We write this function as A(x) ¼ 1 if x is in A

and A(x) ¼ 0 otherwise. This function is called the characteristic function on A and

any such function, whose values are either zero or one, de¬nes a crisp subset of X.

Fuzzy sets generalize the characteristic function in allowing all values between 0

and 1. A fuzzy subset F of X is de¬ned by its membership function (a generalization

of the characteristic function), also written F(x), whose values can be any number in

the interval [0, 1]. The value of F(x) is called the grade of membership of x in fuzzy

set F, and is often denoted by m(x). If m(x) is only 0 or 1, then we get the characteristic

function of a crisp, non-fuzzy, set F. Now suppose we have m(x) taking on values in

[0, 1] besides just 0 and 1. We say x belongs to F if mF(x) ¼ 1, x does not belong to F

when mF (x) ¼ 0, and x is in F with membership mF(x) if 0 , mF (x) , 1. The univer-

sal set always has mX(x) ¼ 1 for all x in X, and the empty set is described by its mem-

bership function always zero [m0(x) ¼ 0 for all x in X ]. Crisp sets are considered

special cases of fuzzy sets when membership values are always 0 or 1.

We must be a little careful about the term “membership function”. Since fuzzy

systems theorists have been almost exclusively concerned with numbers, their

fuzzy sets are almost always made up of words describing numbers. In this case,

membership functions take a very special form for converting a number into its

grades of membership; this form is completely inapplicable to fuzzy sets of non-

numeric quantities such as classi¬cations, possible system troubles, or any of the

vast varieties of non-numeric fuzzy sets of interest in fuzzy reasoning. In fact, for

such fuzzy sets, the term “membership function” itself is only of theoretical interest,

and is best avoided in practice. The only universe in which the grades of membership