Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems SSIE 617 Fall 2008 Radim BELOHLAVEK Dept. Systems Sci. & Industrial Eng. Watson School of Eng. and Applied Sci. Binghamton University SUNY Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 1 / 130
Fuzzy Sets Basic Concepts Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 2 / 130
The concept of a fuzzy set Definition ((standard) fuzzy set) A (standard) fuzzy set in a universe set U is a mapping A : U [0, 1], i.e. a mapping A of U to [0, 1]. Introduced by Zadeh in 1965. A(u)... degree of membership of element u in fuzzy set A. Example. Fuzzy set corresponding to normal blood pressure : U = [0, 200], A is described by its graph. 1 0 100 120 140 Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 3 / 130
Standard fuzzy sets use real unit interval [0, 1] as a set of truth degrees. This is a particular example of a more flexible concept of a fuzzy set: Definition (fuzzy set) Let L, be a partially ordered set with 0 and 1 being the least and the greatest element. A fuzzy set in a universe set U is a mapping A : U L, i.e. a mapping A of U to L. Elements a L are called truth degrees (grades). Element A(u) from L, assigned to u by A, is called the degree of membership of u in A. A is also called a membership function. The larger A(u), the more u belongs to A (is typical of A). 0... u does not belong to A at all, A(u) = a (0 < a < 1)... u partially belongs to A, 1... u fully belongs to A. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 4 / 130
The concept of a fuzzy set: basic remarks A : U L is sometimes called an L-fuzzy set in U, or an L-set in U, or just a fuzzy set in U if L is obvious from context. A(u) A(v) means v belongs to A at least to the same degree as u (comparing truth degrees is an important feature in fuzzy logic). The concept of a fuzzy set generalizes the concept of a characteristic function of an ordinary (classical) set in that it allows for more options in addition to element belongs to a set (1) and element does not belongs to a set (0). Two-element set {0, 1} of truth degrees used in ordinary set theory is replaced in fuzzy set theory by a more general set L which includes 0 and 1. L needs to be equipped with an appropriate structure in order to serve as a reasonable set of truth degrees. We will do this later (introduce truth functions of logic connectives). The collection of all fuzzy sets in U is denoted by L U, i.e. L U = {A A is a mapping of U to L}. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 5 / 130
Particular types of fuzzy sets L can be seen as a parameter (particular scale of truth degrees used). L = [0, 1]: In this case, L-fuzzy sets are just standard fuzzy sets. L = {0, 1}: In this case, L-fuzzy sets are just characteristic functions of ordinary sets. This way, the concept of a fuzzy set generalizes the ordinary concept of a set. (Recall that ordinary sets are in one-to-correspondence to their characteristic functions.) L = {0, 1 n,..., n 1 n, 1} with the usual ordering: fuzzy sets with truth degrees in (n + 1)-element equidistant chains. L U has a finite number of fuzzy sets. L = {0, 1} is a particular finite chain for n = 1. L = {[a, b] a, b [0, 1], a b} with partial order defined by [a 1, b 1 ] [a 2, b 2 ] iff a 1 b 1 and a 2 b 2 : interval-valued fuzzy sets. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 6 / 130
The concept of a fuzzy set: basic examples Example (fuzzy set: approximately 5) Let U = R (reals), L = [0, 1]. Define a fuzzy set A in U by 0 for u < 4, x 4 for 4 u 5, A(u) = 6 x for 5 < u 6, 0 for u > 6. A captures meaning of approximately 5. Its membership function is: Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 7 / 130
Example (fuzzy set: tall men) Let U = R (reals), L = [0, 1]. Define a fuzzy set A in U by 0 for u < 160, x 160 A(u) = 30 for 160 u 190, 1 for u > 190. A captures meaning of tall men (in cm, 1in=2.54cm, 1ft=30.48cm): In more detail: If X is a collection of men and h(x) is the height of x X, we can consider a fuzzy set Tall : X [0, 1] defined by Tall(x) = A(h(x)). Tall(x) is a degree to which x is considered tall. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 8 / 130
Example (fuzzy set: tall men again) Let U = R (reals), L = [0, 1]. Define a fuzzy set A in U by 0 for u < 170, x 170 A(u) = 20 for 170 u 190, 1 for u > 190. A captures meaning of tall men. This time, the fuzzy set is different (a stricter criterion is used). Different people will draw different membership functions of tall men. Its membership function is:
Example (fuzzy set: approximately 5 again) Let U = R (reals), L = [0, 1]. Define a fuzzy set A in U by 0 for u < 4.5, x 4.5 for 4.5 u 5, A(u) = 5.5 x for 5 < u 5.5, 0 for u > 5.5. A captures meaning approximately 5, different way. Its membership function is:
Example (fuzzy set: triangular fuzzy set) Let U = R (reals), L = [0, 1]. Fuzzy set A in U is called triangular if there are reals a b c such that 0 for u < a, x a b a for a u < b, A(u) = 1 for u = b, c x c b for b u < c, 0 for u > c. What is its membership function?
Example (fuzzy set: trapezoidal fuzzy set) Let U = R (reals), L = [0, 1]. Fuzzy set A in U is called trapezoidal if there are reals a b c d such that A(u) = What is its membership function? 0 for u < a, x a b a for a u < b, 1 for b u c, d x d c for c u < d, 0 for u > d. Note: Degenerate for a = b = or c = d =. If a = b =, then A(u) = 1 for u < c; If c = d =, then A(u) = 1 for u > b.
Example (triangular and trapezoidal fuzzy sets) Consider a triangular fuzzy set A given by parameters a = 5, b = 13, c = 14. Determine A( 15.5), A(5.5), A(13), A(13.1), A(15), A(120). A( 15.5) = 0 because 15.5 < a, A(5.5) = 5.5 a b a = 0.5 8 = 0.0625 because a 5.5 < b, A(13) = 1 because 13 = b, A(13.1) = c 13.1 c b = 0.9 1 = 0.9 because b 5.5 < c, A(15) = 0 because 15 > 14, A(120) = 0 because 120 > 14. In the above example, determine u for which A(u) = 0.5. Easy, by solving linear equations u a b a = 0.5, i.e. u 5 c u 13 5 = 0.5, and 14 u i.e. 14 13 (u is the unknown). We have two solutions u = 9 and u = 13.5. Consider a trapezoidal fuzzy set A given by parameters a = 10, b = 20, c = d =. Determine A( 30), A(15), A(25), A(100). A( 30) = 0 because 30 < a, A(15) = 15 a b a = 5 10 = 0.5 because a 5.5 < b, A(25) = 1 because b 25 < c, A(100) = 1 because b 25 < c. c b,
exercise Consider a triangular fuzzy set A given by parameters a = 100, b = 0, c = 100. Determine A( 101), A( 99), A( 50), A(1), A(75), A(110). In the fuzzy set above, what are the elements with A(u) = 0.8 and A(u) = 0.9. Consider a trapezoidal fuzzy set A given by parameters a = 12, b = 0, c = 10, d = 20. Determine A( 5), A(5), A(10), A(15), A(20), A(25). Consider a trapezoidal fuzzy set A given by parameters a =, b =, c = 15, d = 25. Determine A( 5), A(5), A(10), A(15), A(20), A(25). Consider a trapezoidal fuzzy set A given by parameters a = 15, b = 30, c =, d =. Determine A( 5), A(10), A(15), A(20), A(40). A triangular fuzzy set is a particular case of a trapezoidal fuzzy set. Explain.
Example Let U consist of all countries in the world. Define a fuzzy set corresponding to country with large population. Let p(u) denote the population of country u in millions. For example p(usa) = 300. Then, we can use a trapezoidal fuzzy set Tra(a, b, c, d) with parameters a = 60, b = 100, c = d =. The corresponding fuzzy set LP can be defined by LP(u) = [Tra(60, 100,, )](p(u)). Determine membership degrees for various countries, including Germany (population 82 mil.), Japan (population 127 mil.), Poland (population 38 mil.). Defining an appropriate fuzzy set which captures meaning of natural language expressions such as country with large population is called precisiation of meaning (Zadeh). Precisiation is context dependent. For instance, in the above example, one could use Tra(40, 60,, ).
exercise Think of various linguistic expressions and try to precisiate their meaning by means of fuzzy sets. That is, define the universe U and an appropriate fuzzy set A in U. For instance, use the following domains. Economics and finance: high inflation, low salary, medium unemplyoment. Engineering: high temperature, low RPM, heavy material. Mathematics: high probability, steeply increasing function, small number.
Sometimes, fuzzy sets with L = [0, 1] might not be appropriate. Example Let U consist of all countries in the world. Define a fuzzy set corresponding to large country. People may see large country to be related both to population and area. Therefore, an appropriate fuzzy set might be a fuzzy set A : U [0, 1] [0, 1] with A(u) = a 1, a 2 meaning that a 1 is a degree to which country u has high population and a 2 a degree to which u has a large area. Let p(u) and a(u) denote the population of country u in millions and area of u in thousands of square kilometers. For example p(usa) = 300, a(usa) = 9, 631, and p(russia) = 140, a(russia) = 17, 075. Then, we can use a trapezoidal fuzzy set Tra p (a, b, c, d) with parameters a = 60, b = 100, c = d =, and a trapezoidal fuzzy set Tra a (a, b, c, d) with parameters a = 200, b = 500, c = d =. The corresponding fuzzy set LC (representing large country ) can be defined by LC(u) = [Tra(60, 100,, )](p(u)), [Tra(200, 500,, )](a(u)).
Example As an example: LC(Russia) = LC(USA) = 1, 1. For Canada with p(canada) = 33, a(canada) = 9, 984 and Germany with p(germany) = 82, a(germany) = 357 we have LC(Canada) = 0, 1, LC(Germany) = 0.55, 0.52. Therefore, LC(Canada) and LC(Germany) are not comparable, i.e. neither LC(Canada) LC(Germany) nor LC(Canada) LC(Germany) is the case. For Poland with p(poland) = 38, a(poland) = 312 we have LC(Poland) = 0, 0.37 we have LC(Poland) LC(Germany), LC(Poland) LC(Canada). Determine membership degrees for various other countries. The need for many-dimensional sets L of truth degrees comes from possibly many-dimensional nature of the criterion according which elements belong to a fuzzy set. If one-dimensional L is needed, we can aggregate. Example: LC(u) = [Tra(60, 100,, )](p(u)) + [Tra(200, 500,, )](a(u)). 2 More on aggregation comes later.
Example (fuzzy set: long strings) Let U = {a 1 a n a i {0, 1}, n N} (binary strings), L = [0, 1]. Fuzzy set A in U defined by 0 for n < 10, n 10 A(a 1 a n ) = 10 for n n < 20, 1 for 20 n. Example (fuzzy set: favorite meals) Let U = {beef, chicken, fish, pork, turkey, vegetarian}. Let a fuzzy set A describing John s favorite type of meals be defined by: A(beef) = 0.2, A(chicken) = 0.8, A(fish) = 0.1, A(turkey) = 0.9, A(pork) = 0.2, A(vegetarian) = 0.6. We can interpret A as saying that John likes fish most, John likes turkey a bit more than chicken, John does not like beef very much, etc.
Example Shapes of fuzzy sets can be arbitrary. A fuzzy set does not necessarily have a meaningful interpretation. Show an example with fuzzy sets in U = R. Let U (universe set) be finite. What is the cardinality of 2 U (power set of set X )?: 2 U. What is the cardinality of L U (set of all L-fuzzy sets in U)? L U, i.e. depending on L: L U is infinite if L is infinite, L U is finite and has L U elements if L is finite. What typical shapes of fuzzy sets representing linguistic expressions small, medium, large (instances are: young, middle-aged, old ; slow, moderately fast, fast )? Note that small, medium, large have sense only if the universe set U is equipped with a partial order, such as R.
Fuzzy sets representing small, medium, and large.
Fuzzy sets: basic notions and notation Instead of A, some authors use µ A and call µ A a membership function of a fuzzy set A (confusing; what, then, is A?). A = { a 1 /u 1,..., an /u n } denotes a fuzzy set such that { ai if u = u A(u) = i for some i = 1,..., n, 0 if u u i for every i = 1,..., n. We usually omit a i/u i if a i = 0. As an example, { 0.2 /beef, 0.8 /chicken, 1.0 /fish, 0.9 /turkey, 0.2 /pork, 0.6 /vegetarian} denotes the fuzzy set described earlier. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 22 / 130
Example List all fuzzy sets in universe U = {u, v} with L = {0, 0.5, 1}. L U consists of the following fuzzy sets:, { 0.5 /u}, { 0.5 /v}, { 0.5 /u, 0.5 /v}, { 1 /u}, { 1 /v}, { 0.5 /u, 1 /v}, { 1 /u, 0.5 /v}, { 1 /u, 1 /v}. As in with ordinary sets, we do not repeat elements in A = { a 1 /u 1,..., an /u n }. That is, { 1 /u, 0.5 /v} and { 1 /u, 0.5 /v, 0.5 /v} would be considered the same. Let U = {no education, elementary school, high school, two-year college degree, Bc, MSc, PhD}. Then A = { 0 /no education, 0.1 /elementary school, 0.3 /high school, 0.6 /two-year college degree, 0.8 /Bc, 0.9 /MSc, 1 /PhD}. is a fuzzy set representing well educated.
Fuzzy sets: basic notions and notation Crisp, empty, and full fuzzy sets, and singletons A fuzzy set A : U L is called crisp if for each u U: A(u) = 0 or A(u) = 1. Crisp fuzzy sets in U can be identified with ordinary subsets of U: If A : U L is crisp, then the corresponding ordinary subset C A is C A = {u U A(u) = 1}. If C U is an ordinary subset of U, then the corresponding crisp fuzzy set A C is defined by A C (u) = 1 for u C, and A C (u) = 0 for u U. Clearly, A = A CA and C = C AC. A fuzzy set A is called empty if A(u) = 0 for all u U; it is denoted by (i.e. we have (u) = 0). This is a crisp set. (Note double meaning of : an ordinary set, and a crisp fuzzy set.) A fuzzy set A is called full if A(u) = 1 for all u U; it is denoted by U (i.e. we have U(u) = 1). This is a crisp set. (Note double meaning of U: an ordinary set, and a crisp fuzzy set.) If a 0, fuzzy set { a /u} is called a singleton. Sometimes, a singleton means { 1 /u}. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 24 / 130
Example { 0 /u 1, 1 /u 2, 0 /u 3, 1 /u 4 } denotes a crisp fuzzy set in universe U = {u 1,..., u 4 }. { 0.5 /u 1, 1 /u 2, 0 /u 3, 1 /u 4 } is not crisp because the membership degree of u 1 is 0.5. For U = {Canada, Czech Republic, Italy, USA, Vatican}, { 1 /Czech Republic, 1 /Italy, 1 /Vatican} is a crisp fuzzy set in U ( is in Europe ), { 0.5 /Italy, 1 /USA} is a non-crisp fuzzy set in U ( has large population ). Fuzzy set which is a singleton:
Fuzzy sets: basic notions and notation exercises How many crisp sets in U with truth degrees from L are there if U = n? Does this depend on L? Crisp fuzzy sets in U with membership degrees in L be identified with ordinary subsets of U. Explain. This is one way ordinary subsets of U can be regarded as fuzzy sets. For L = {0, 1}, all fuzzy sets in U are crisp. Obviously, they can be identified with ordinary subsets of U. In this case, there are no other fuzzy sets (other than crisp ones). Are the empty fuzzy set and the full fuzzy set crisp? Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 26 / 130
The concept of an a-cut of A. Interpretation: a... threshold; a A... ordinary set of elements whose membership degree exceeds that threshold (belong to A to a prescribed degree). Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 27 / 130 (Alpha) cuts of fuzzy sets Definition (cut of a fuzzy set) Let A be a an L-fuzzy set in U, a L be a truth degree. The a-cut of A is an ordinary subset a A of U defined by a A = {u U A(u) a}.
Example For A = { 0.2 /u 1, 0.6 /u 2, 0.1 /u 3, 0.8 /u 4, 1 /u 5 } we have 0.1 A = {u 1, u 2, u 3, u 4, u 5 }, 0.4 A = {u 2, u 4, u 5 }, 0.5 A = {u 2, u 4, u 5 }, 1 A = {u 5 }. Let A be a triangular fuzzy set given by parameters a = 10, b = 20, c = 40. Then 0.1 A = [11, 38], 0.5 A = [15, 30], 1 A = [20, 20] = {20}. 0 A = U. a-cut of a fuzzy set in R need not be convex:
Interpretation: The stronger the criterion (higher threshold), the smaller the collection of elements satisfying it. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 29 / 130 Nesting property Lemma (nesting of cuts) Let A be a an L-fuzzy set in U. a b implies b A a A. Proof. Illustration: Let a b. If u b A then A(u) b. Since a b, we have A(u) a, i.e. u a A, proving b A a A.
Questions: Given an L-fuzzy set A and the corresponding system S A = { a A a L}, can we reconstruct A from S A? What are the essential properties of a system of all a-cuts of a fuzzy set, so that we can check whether a system S of subsets of U is a system of all a-cuts of some fuzzy set? Definition (L-nested system) A system S = {A a X a L} of subsets of U indexed by elements from L is called L-nested if (1) for all a, b L, a b implies A b A a, (2) for every u U, the set {a L u A a } has the largest element. Note: 1. L is a part of a complete lattice L,, 2. we do not say that sets A a are a-cuts of some fuzzy set, 3. {A a a L} = {B a a L} means A a = B a for each a L, 4. if S is L-nested, A 0 = U. Indeed, by (2), for each u U there is some a such that u A a. By (1), A a A 0, thus u A 0.
The next claim is the answer to the two questions above: Theorem (representation by a-cuts) Let A be an L-fuzzy set in U, S be an L-nested system of subsets of U. Put S A = { a A a L} and A S (u) = a L,u A a a. Then (1) S A is an L-nested system of subsets of U, (2) A S is an L-fuzzy set in U, and (3) A = A SA and S = S AS. Note: (3) says the mappings sending A to S A, and S to A S form a mutually inverse bijections between L-fuzzy sets in U and L-nested systems of subsets of U. In particular, A = A SA of all a-cuts of A. says that we can reconstruct A from the system S A
Proof. (1): a b implies b A a A is due to nesting property (see above). The largest element of {a L u a A} is clearly A(u). (2): obvious (nothing to prove here). (3): A = A SA : A SA (u) = a L,u a A a = A(u) because u a A means a A(u), and thus A(u) is the largest a for which u a A. S = S AS : Need to check that for each a L, A a = a A S. If u A a then A S (u) = u A b b a, and thus u a A S, i.e. A a a A S. If, conversely, u a A S, then a u A b b. By definition of an L-nested system, {b L u A b } has a largest element, say b. Therefore, u A b b = b and thus a b. Since S is L-nested, we have A b A a, and from u A b we thus get u A a, establishing a A S A a.
Example Let L = {0, 0.25, 0.5, 0.75, 1}, let A L {u,v,w,x,y,z} be given by A = { 0.25 /u, 0.5 /v, 0.25 /w, 1 /x, 1 /z}. Describe the system of all a-cuts of A. S A = { a A a = 0, 0.25, 0.5, 0.75, 1}, where 0 A = {u, v, w, x, y, z}, 0.25 A = {u, v, w, x, z}, 0.5 A = {v, x, z}, 0.75 A = {x, z}, 1 A = {x, z}. Consider the above example. Illustration of how A can be reconstructed from S A : Recall, A = A SA where A SA (x) = a L,x a A a. This gives A SA (u) = {0, 0.25} = 0.25 (because 0 A and 0.25 A are the only a As for which u a A), A SA (v) = {0, 0.25, 0.5} = 0.5, A SA (w) = {0, 0.25} = 0.25, A SA (x) = {0, 0.25, 0.5, 0.75, 1} = 1, A SA (y) = {0} = 0, A SA (z) = {0, 0.25, 0.5, 0.75, 1} = 1. How does a system of all a-cuts of a crisp fuzzy set look like?: 0 A = U, a A = 1 A for all a > 0.
Example Let L = {0, 0.25, 0.5, 0.75, 1}, U = {u, v, w, x, y, z}. Determine whether S = {A 0, A 0.25, A 0.5, A 0.75, A 1 } is L-nested and if so, determine the corresponding fuzzy set A S : A 0 = {u, v, w, x, y, z}, A 0.25 = {u, v, x}, A 0.5 = {u, v}, A 0.75 = {v, x}, A 1 = {u}. No, 0.5 0.75 but A 0.75 A 0.5 (nesting violated). A 0 = {u, v, w, x}, A 0.25 = {v, w, x}, A 0.5 = {v, w, x}, A 0.75 = {v, x}, A 1 = {v}. No, for y, the set {a L y A a } is empty and thus does not have a largest element. (nesting violated). A 0 = {u, v, w, x, y, z}, A 0.25 = {u}, A 0.5 = {u}, A 0.75 = {u}, A 1 = {u}. Yes. A = { 1 /u}. A 0 = {u, v, w, x, y, z}, A 0.25 = {u, w, x, z}, A 0.5 = {u, w, x, z}, A 0.75 = {u, z}, A 1 = {u, z}. Yes. A = { 1 /u, 0.5 /w, 0.5 /x, 1 /z}. A 0 = {u, v, w, x, y, z}, A 0.25 = A 0.5 = A 0.75 = A 1 =. Yes. A =. A 0 = A 0.25 = A 0.5 = A 0.75 = A 1 = {u, v, w, x, y, z}. Yes. A = { 1 /u, 1 /v, 1 /w, 1 /x, 1 /y, 1 /z}.
Note on representation of fuzzy sets Vertical representation By definition, A L U can be represented by a collection of pairs { u, A(u) u U}. That is, we store A(u) for every u U. If U is infinite or too large (such as U = [0, 250]), one discretizes, i.e. replaces U by its sufficiently small subset. For instance, instead of U = [0, 250], one takes V = {0, 1, 2,..., 250} U. Horizontal representation By representation theorem (by a-cuts), every A L U can be represented by { a A a L}, i.e. by a collection of ordinary sets. If L is infinite or too large (such as L = [0, 1]), one discretizes, i.e. replaces L by its sufficiently small subset. For instance, instead of L = [0, 1], one takes K = {0, 0.1, 0.2,..., 0.9, 1} L. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 35 / 130
Basic characteristics of fuzzy sets Definition Let A be a an L-fuzzy set in U. Core of A is the 1-cut of A, i.e. the set {u U A(u) = 1}. Support of A is the set {u U A(u) > 0}. Height of A is the degree hgt(a) defined by hgt(a) = A(u). u U A is called normal if hgt(a) = 1 (otherwise, A is called subnormal). If L = [0, 1] and support of A is finite, then the cardinality A of A is defined by A = u U A(u). Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 36 / 130
Example Determine the core, support, height, and cardinality of the following fuzzy sets in U = {1, 2, 3, 4, 5, 6}. A = { 1 /1, 0.5 /2, 0.3 /3, 1 /4, 0.5 /5}. Core is {1, 4}, support is {1, 2, 3, 4, 5}, hgt(a) = 1, A = 3.3. A = { 0.3 /2, 0.8 /3, 0.8 /4, 0.5 /5}. Core is, support is {2, 3, 4, 5}, hgt(a) = 0.8, A = 2.4. A = { 1 /1, 1 /2, 1 /3, 1 /4, 1 /5, 1 /6}. Core is U, support is U, hgt(a) = 1, A = 6. A = { 0 /1, 0 /2, 0 /3, 0 /4, 0 /5, 0 /6}. Core is, support is, hgt(a) = 0, A = 0. Triangular fuzzy set given by a, b, c. Core is {b}, support is (a, c) (open interval), hgt(a) = 1, A is not applicable (intuitively, A is infinite). Trapezoidal fuzzy set given by a, b, c, d. Core is [b, c], support is (a, d) (open interval), hgt(a) = 1, A is not applicable (intuitively, A is infinite). Let A be crisp. What be said about the core, support, height, and cardinality of A? What does hgt(a) < 1 intuitively indicate?
Operations with fuzzy sets basic operations generalize operations with ordinary sets (intersection, union, complement,... ), there are operations which have no counterparts within the operations with ordinary sets (aggregation, averaging), we will start with so-called standard operations and proceed toward more advanced ones. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 38 / 130
Recalling basic ordinary operations Useful observation: classical notation vs. characteristic function notation: A B = {u U u A and u B}... c A B (u) = min(c A (u), c B (u)): A B = {u U u A or u B}... c A B (u) = max(c A (u), c B (u)): Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 39 / 130
A = {u U (u A)}... c A (u) = 1 c A (u): Observation: intersection ( ) is based on (truth function of) conjunction (min) union ( ) is based on (truth function of) disjunction (max) complement ( ) is based on (truth function of) negation (1 ) Taking the same formulas and applying them to fuzzy sets yields so-called standard operations with fuzzy sets.
Standard operations with (standard) fuzzy sets (or, intersection), (or, union), (or, negation). Definition (standard operations) For fuzzy sets A, B [0, 1] U, define fuzzy sets A B [0, 1] U, A B [0, 1] U, A [0, 1] U by (A B)(u) = min(a(u), B(u)), (A B)(u) = max(a(u), B(u)), ( A)(u) = 1 A(u). Immediate observation: When applied to crisp fuzzy sets, standard operations coincide with ordinary set operations. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 41 / 130
Example Determine A B, A B, A with U = {1, 2, 3, 4, 5}: A = { 1 /2, 0.5 /3, 0.8 /5, 1 /6}, B = { 1 /1, 0.2 /3, 0.5 /4, 0.8 /5}. A B = { 0.2 /3, 0.8 /5}, A B = { 1 /1, 1 /2, 0.5 /3, 0.5 /4, 0.8 /5, 1 /6}, A = { 1 /1, 0.5 /3, 1 /4, 0.2 /5}. A = { 1 /1, 0.7 /2, 1 /3, 0.8 /4}, B = { 0.2 /3, 0.1 /4, 0.2 /5}. A B = { 0.2 /3, 0.1 /4}, A B = { 1 /1, 0.7 /2, 1 /3, 0.8 /4, 0.2 /5}, A = { 0.3 /2, 0.2 /4, 1 /5, 1 /6}. Give an example of a fuzzy set A for which A = A. Is there a crisp set A for which A = A? What can be said about A A and A A?
General principle: operations based on logical connectives Definition (operations based on logical connectives) Let c : L n L be an n-ary operation on L. c induces an n-ary operation c on L-fuzzy sets in U defined for A 1,..., A n L U by (c(a 1,..., A n ))(u) = c(a 1 (u),..., A n (u)). Remark: For simplicity, we write c(a 1,..., A n ) instead of c(a 1,..., A n ). c : L n L can be considered a (truth function of) logical connective, such as min : {0, 1} 2 {0, 1} is a truth function of conjunction. Therefore, the operation on fuzzy sets can be seen as based on logical connectives. Examples: standard operations,, and are based on min, max, 1. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 44 / 130
We proceed by introducing truth functions of conjunctions, disjunctions, and negations. These lead to the corresponding operations on fuzzy sets (intersections, unions, and complements). For instance, the following figures show general intersections and unions of fuzzy sets: We start by general considerations on logical connectives in fuzzy logic.
Logical connectives in fuzzy logic In ordinary logic, every logical connective, such as conjunction, has its syntactic and semantical part/rules. Syntactic rules tell what symbol we use for the connective (e.g., &) and how sentences/formulas use built using this connective (e.g., if ϕ and ψ are well-formed sentences/formulas, then ϕ&ψ is a well-formed sentence). Semantical rules tell what the truth function of that connective is (e.g., function c & : {0, 1} {0, 1} {0, 1} defined by c & (0, 0) = c & (0, 1) = c & (1, 0) = 0 and c & (1, 1) = 1) and how truth degrees of sentences/formulas are evaluated (e.g., the truth degree ϕ&ψ of formula ϕ&ψ is defined by ϕ&ψ = c & ( ϕ, ψ )). This is similar, but richer, in fuzzy logic. We will go to the logical aspects (syntactic/semantical rules, deduction, etc.) later. Now, we are interested in the truth functions of fuzzy logic. To see a broader picture first, see the next slide. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 46 / 130
The problem of connectives for fuzzy logic involves several questions: What connectives should we use for fuzzy logic? Certainly, the connections which people use when asserting statements which involve vague notions. These include counterparts to classical connectives of conjunction, disjunction, implication, equivalence, negation,..., and quantifiers ( for all, exists ). But they include non-classical connectives such as linguistic hedges very, more or less ( very ϕ means ϕ is very true) or fuzzy quantifiers many, few (Many people use on-line shopping.). Other reasonable functions on sets of truth degrees can be considered whenever they turn out to be useful. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 47 / 130
What properties of connectives should we require? For example, the truth function of ordinary conjunction is given by the use of conjunction in ordinary language. There is no other truth function of conjunction in classical logic. In fuzzy logic, this is not so simple. Consider the real unit interval [0, 1] as the set of truth degrees. Is there the right fuzzy conjunction for [0, 1], i.e. the right truth function c & : [0, 1] 2 [0, 1]? In looking for c &, one constraint is that c & behaves like ordinary conjunction when applied to 0 and 1, i.e. we want c & (0, 0) = c & (0, 1) = c & (1, 0) = 0 and c & (1, 1) = 1. This constraint applies to all connectives for fuzzy logic which have their counterparts in classical logic. But what about c & (0.8, 0.7)? Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 48 / 130
One could argue that c & (a, b) = min(a, b): If ϕ and ψ are statements/formulas with truth degrees ϕ = 0.8 and ψ = 0.7, then the truth degree ϕ&ψ of the conjunction of ϕ and ψ should just be the lesser of 0.8 and 0.7, i.e. ϕ&ψ = c & ( ϕ, ψ ) = min(0.8, 0.7) = 0.7. But, a different argument says: Suppose ϕ is a different statement, with a higher truth degree than that of ϕ, say ϕ = 0.9. Then, intuitively, ϕ &ψ should have a higher truth degree than ϕ&ψ, i.e. we expect ϕ&ψ < ϕ &ψ. (1) For instance, c & (a, b) = a b (product) satisfies this requirement: With c & (a, b) = a b we get ϕ&ψ = c & ( ϕ, ψ ) = c & (0.8, 0.7) = 0.56 < 0.63 = c & (0.9, 0.7) = c & ( ϕ, ψ ) = ϕ &ψ. But there are other functions c & satisfying (1). Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 49 / 130
A reasonable approach, therefore, could be this: First, postulate required properties P for c & (example of such property: a 1 a 2 and b 1 b 2 imply c & (a 1, b 1 ) c & (a 2, b 2 )). P delineates a class of functions c & (those satisfying P). Any such c & is a good candidate for serving as a truth function of conjunction for fuzzy logic. Leave the choice of a particular c & which one will use to further considerations (to have low computational complexity, to have a good fit of the fuzzy logic model to data,... ). Note that such an approach is common in modeling: First, one formulates requirements such as axioms of probability. This leaves room for many particular probability distributions. Which of them we actually use for modeling our system, depends on further circumstances (on data, on type of the processes, etc.). Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 50 / 130
Conjunctions in fuzzy logic Basic basic truth functions of conjunctions in fuzzy logic are t-norms. Definition (t-norm) A t-norm on a complete lattice L, is a binary operation on L which is associative, commutative, monotone, and has 1 as its neutral element, i.e. a (b c) = (a b) c, (2) a b = b a, (3) a b implies a c b c, (4) a 1 = a. (5) A t-norm means a t-norm on [0, 1],. T-norms were introduced in probabilistic (statistical) metric spaces. Detailed coverage: Klement E. P., Mesiar R., Pap E.: Triangular norms. Kluwer, 2000. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 51 / 130
Theorem (basic properties of t-norms) (1) For any t-norm on L, : 1 a = a for any a L. (2) For any t-norm on L, : a 1 b 1 and a 2 b 2 imply a 1 a 2 b 1 b 2, for any a i, b i L. (3) For any t-norm on L, : a 0 = 0 for any a L. (4) M defined by a M b = a b is a t-norm on L,. Note that for L = [0, 1], a b = min(a, b). (5) D defined by a if b = 1, a D b = b if a = 1, 0 otherwise, is a t-norm (drastic t-norm/product). (6) For any t-norm : a D b a b a M b. That is, D and M are the least and the largest t-norms. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 52 / 130
Proof. (1): Using commutativity, 1 a = a 1 = a. (2): Using commutativity and monotony, a 1 b 1 and a 2 b 2 imply a 1 a 2 b 1 a 2 = a 2 b 1 b 2 b 1 = b 1 b 2. (3): Due to monotony and neutrality of 1, a 0 1 0 = 0, hence a 0 = 0. (4): By direct verification. (5): By direct verification. (6): a D b a b: a D 1 = a = a 1, 1 D b = b = 1 b, and in the other cases, a D b = 0 a b. a b a M b: a b a 1 = a and a b 1 b = b, hence a b a b = a M b. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 53 / 130
Examples of t-norms (on finite chains) L = {0, 1} (classical logic): The only t-norm on {0, 1}, is the truth function of classical conjunction. Verify! L = {0, 1 n,..., n 1 n, 1} (finite chain): minimum (Gödel): a b = min(a, b), Lukasiewicz: a b = max(0, a + b 1), there are other t-norms. Note that for n = 1, L = {0, 1} and both minimum and Lukasiewicz coincide with the truth function of classical conjunction. Minimum and Lukasiewicz are just restrictions of the corresponding t-norms on [0, 1]. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 54 / 130
Examples of t-norms (on [0, 1]) Basic t-norms on [0, 1]: minimum (Gödel): a b = min(a, b), product (Goguen): a b = a b, Lukasiewicz: a b = max(0, a + b 1), there are other t-norms on [0, 1] (later) such as { min(a, b) if a + b > 1, nilpotent minimum: a b = 0 otherwise, Verify that the above functions are t-norms! In what sense are these t-norms basic? All of them are continuous functions. (Note that continuity of is appealing from the point of view of logic). Every continuous t-norm can be built up from the three ones (advanced construction of an ordinal sum). Details: Belohlavek R.: Fuzzy Relational Systems. Foundations and Principles. Kluwer, 2002. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 55 / 130
Examples of t-norms (on [0, 1]) minimum (Gödel): Kurt Gödel: Austrian logician, famous due to his incompleteness results (limits of formal logical systems), http://en.wikipedia.org/wiki/kurt_godel. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 56 / 130
Examples of t-norms (on [0, 1]) product (Goguen): Joseph A. Goguen: American computer scientist, http://en.wikipedia.org/wiki/joseph_goguen. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 57 / 130
Examples of t-norms (on [0, 1]) Lukasiewicz: Jan Lukasiewicz: Polish logician, pioneer in many-valued logics, http://en.wikipedia.org/wiki/jan_lukasiewicz. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 58 / 130
Examples of t-norms (on [0, 1]) drastic product D (smallest t-norm): Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 59 / 130
Examples of t-norms (on [0, 1]) nilpotent minimum: Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 60 / 130
Examples of t-norms (on [0, 1]) Families of t-norms: Frank family: parameter s > 0, s 1, a b = log s (1 + (sa 1)(s b 1) s 1 ) Hamacher family: parameter r > 0, a b = a b r+(1 r)(a+b a b) Schweizer-Sklar family 1: parameter p 0, a b = (max(0, a p + b p 1)) 1 p Schweizer-Sklar family 2: parameter p > 0, a b a b = (a p +b p a p b p ) 1 p there are other families, see Klir G. J., Yuan B.: Fuzzy Sets and Fuzzy Logic. Theory and Applications. Prentice Hall, 1995., Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 61 / 130
Examples of t-norms (on [0, 1]) exercise Verify that the families of t-norms are actually t-norms. Study what particular t-norms are obtained from the families by changing the parameters. See Klir G. J., Yuan B.: Fuzzy Sets and Fuzzy Logic. Theory and Applications. Prentice Hall, 1995. Plot graphs of the t-norms from the families for selected values of parameters. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 62 / 130
Disjunctions in fuzzy logic Basic basic truth functions of disjunctions in fuzzy logic are t-conorms (sometimes called s-norms). Definition (t-conorm) A t-conorm on a complete lattice L, is a binary operation on L which is associative, commutative, monotone, and has 0 as its neutral element, i.e. a (b c) = (a b) c, (6) a b = b a, (7) a b implies a c b c, (8) a 0 = a. (9) A t-conorm means a t-conorm on [0, 1],. T-conorms were introduced in probabilistic (statistical) metric spaces. Detailed coverage: Klement E. P., Mesiar R., Pap E.: Triangular norms. Kluwer, 2000. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 63 / 130
Theorem (basic properties of t-conorms) (1) For any t-conorm on L, : 0 a = a for any a L. (2) For any t-conorm on L, : a 1 b 1 and a 2 b 2 imply a 1 a 2 b 1 b 2, for any a i, b i L. (3) For any t-conorm on L, : a 1 = 1 for any a L. (4) M defined by a M b = a b is a t-conorm on L,. Note that for L = [0, 1], a b = max(a, b). (5) D defined by a if b = 0, a D b = b if a = 0, 1 otherwise, is a t-conorm (drastic t-conorm/sum). (6) For any t-conorm : a D b a b a M b. That is, D and M are the largest and the least t-conorms. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 64 / 130
Proof. (1): Using commutativity, 0 a = a 0 = a. (2): Using commutativity and monotony, a 1 b 1 and a 2 b 2 imply a 1 a 2 b 1 a 2 = a 2 b 1 b 2 b 1 = b 1 b 2. (3): Due to monotony and neutrality of 0, a 1 0 1 = 1, hence a 1 = 1. (4): By direct verification. (5): By direct verification. (6): a D b a b: a D 0 = a = a 0, 0 D b = b = 0 b, and in the other cases, a D b = 1 a b. a b a M b: a b a 0 = a and a b 0 b = b, hence a b a b = a M b. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 65 / 130
Examples of t-conorms (on finite chains) L = {0, 1} (classical logic): The only t-conorm on {0, 1}, is the truth function of classical disjunction. Verify! L = {0, 1 n,..., n 1 n, 1} (finite chain): maximum: a b = max(a, b), Lukasiewicz: a b = min(1, a + b), there are other t-conorms. Note that for n = 1, L = {0, 1} and both maximum and Lukasiewicz coincide with the truth function of classical conjunction. Maximum and Lukasiewicz are just restrictions of the corresponding t-conorms on [0, 1]. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 66 / 130
Examples of t-conorms (on [0, 1]) Basic t-conorms on [0, 1]: maximum: a b = max(a, b), probabilistic sum: a b = a + b a b, Lukasiewicz: a b = min(1, a + b), there are other t-conorms on [0, 1] (later) such as { max(a, b) if a + b < 1, nilpotent maximum: a b = 1 otherwise, Verify that the above functions are t-conorms! Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 67 / 130
Examples of t-conorms (on [0, 1]) maximum: Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 68 / 130
Examples of t-conorms (on [0, 1]) probabilistic sum: term is accidental (no connections to probability) Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 69 / 130
Examples of t-conorms (on [0, 1]) Lukasiewicz: Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 70 / 130
Examples of t-conorms (on [0, 1]) drastic sum D (largest t-conorm): Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 71 / 130
Examples of t-conorms (on [0, 1]) nilpotent maximum: Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 72 / 130
Examples of t-conorms (on [0, 1]) Families of t-conorms: Frank family: parameter s > 0, s 1, if s is the Frank t-norm for s, then a s b = 1 ((1 a) s (1 b)) is a Frank t-conorm for s, Hamacher family: parameter r > 1, a b = a+b+(r 1) a b 1+r a b Schweizer-Sklar family 1: parameter p 0, a p b = 1 ((1 a) p (1 b)) where p is the t-norm from Schweizer-Sklar family 1 for parameter p Schweizer-Sklar family 2: parameter p > 0, a p b = 1 ((1 a) p (1 b)) where p is the t-norm from Schweizer-Sklar family 2 for parameter p there are other families, see Klir G. J., Yuan B.: Fuzzy Sets and Fuzzy Logic. Theory and Applications. Prentice Hall, 1995. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 73 / 130
Examples of t-conorms (on [0, 1]) exercise Verify that the families of t-conorms are actually t-conorms. Study what particular t-conorms are obtained from the families by changing the parameters. See Klir G. J., Yuan B.: Fuzzy Sets and Fuzzy Logic. Theory and Applications. Prentice Hall, 1995. Plot graphs of the t-conorms from the families for selected values of parameters. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 74 / 130
From T-norms to t-conorms and back, via standard negation Standard negation: function : [0, 1] [0, 1] defined by a = 1 a for a [0, 1]. Theorem (1) Let be a t-norm on [0, 1]. The function defined by a b = 1 [(1 a) (1 b)] is a t-conorm on [0, 1]. (2) Let be a t-conorm on [0, 1]. The function defined by a b = 1 [(1 a) (1 b)] is a t-norm on [0, 1]. (3) = and =. Remark: (3) says that starting from, going via (1) to and then going via (2) to yields back. Similarly for =. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 75 / 130
Proof. (1) Associativity and commutativity of follows by direct verification from associativity and commutativity of. We check commutativity only: a b = 1 [(1 a) (1 b)] = 1 [(1 b) (1 a)] = b a. Verify associativity of! Monotony: Let a b. Then 1 a 1 b. Monotony of yields (1 a) (1 c) (1 b) (1 c), hence a c = 1 (1 a) (1 c) 1 (1 b) (1 c) = b c. Neutrality of 0: a 0 = 1 [(1 a) (1 0)] = 1 [(1 a) 1] = 1 (1 a) = a. (2) Similar. (3) a b = 1 [1 (1 (1 a)) (1 (1 b))] = a b. Similarly for =. Denoting 1 c by c yields a b = ( a b) and a b = ( a b). Notice similarity to De Morgan law. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 76 / 130
Negations in fuzzy logic Basic basic truth functions of negations are non-increasing functions which switch 0 and 1. Definition (negation) A negation on a complete lattice L, is a unary operation on L which satisfies 0 = 1, (10) 1 = 0, (11) a b implies a b. (12) 0 = 1 and 1 = 0 are constraints implied by requirement that on classical truth degrees (0 and 1), coincides with classical negation. a b implies a b means: The more true a proposition, the less true its negation. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 77 / 130
Negations in fuzzy logic Definition (negation, further properties) Further properties of negations are often considered: is decreasing: a < b implies a > b, (13) is involutive: ( a) = a, (14) is continuous (applies if L = [0, 1]). (15) A negation on L = [0, 1] is called strict if it is decreasing and continuous. strong if it is strict and involutive. Condition of involution is sometimes called law of double negation. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 78 / 130
Theorem (basic properties of negations) (1) The function min defined by is a negation on L,. min a = (2) The function max defined by is a negation on L,. max a = { 1 if a = 0, 0 if a > 0, { 1 if a < 0, 0 if a = 0, (3) For any negation on L,, min a a max a. Proof. By direct verification. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 79 / 130
Examples of negations L = {0, 1} (classical logic): The only negation on {0, 1}, is the truth function of classical negation. On L = [0, 1], a = 1 a is a negation, called a standard negation. On L = [0, 1], a = 1 a 1 λ a for λ > 1, is a negation (Sugeno family of negations). Verify that this is a strong negation. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 80 / 130
Examples of negations standard negation largest negation least negation Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 81 / 130
Examples of negations (subdiagonal) strict negation (superdiagonal) strict negation general strict negation Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 82 / 130
Implications in fuzzy logic Definition (truth functions of implications) A (truth function of) implication on a complete lattice L, is a binary operation on L which satisfies 0 0 = 0 1 = 1 1 = 1, 1 0 = 0, (16) a 1 a 2 implies a 1 b a 2 b, (17) b 1 b 2 implies a b 1 a b 2. (18) Sometimes, fuzzy implication instead of truth function of implication in fuzzy logic ; I (a, b) is sometimes used instead of a b. Overview: Klir G. J., Yuan B.: Fuzzy Sets and Fuzzy Logic. Theory and Applications. Prentice Hall, 1995. (16): behaves like classical implication on 0 and 1. (17): Antitony in first argument. (18): Monotony in second argument. (Analogous to classical implication.) Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 83 / 130
Theorem (basic properties of implications) (1) 0 a = 1 and a 1 = 1. (2) m defined by is an implication. { 1 if a = 0 or b = 1, a m b = 0 otherwise (3) M defined by { 0 if a = 1 and b = 0, a M b = 1 otherwise is an implication. (4) For any implication : a m b a b a M b. That is, m and M are the least and the largest implications. Proof. (1): Using monotony, 1 = 0 0 0 1, hence 0 1 = 1. Using antitony, 1 = 1 1 a 1, hence a 1 = 1. (2) and (3) by direct verification. (4) Go by cases. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 84 / 130
Implications are important connectives in fuzzy logic. Used in various kinds of if-then rules and reasoning with these rules. Further properties of implications often considered/required: 1 a = a, (19) a (b c) = b (a c), (20) a b = 1 iff a b, (21) a a = 1, (22) a b = b a, (with negation ) (23).... Verify that the above properties are satisfied in classical logic. Confusing claims can often be seen in the literature. For instance, a b = min(a, b) is sometimes called implication (L = [0, 1]). Note: min is a t-norm. Explain why there is no t-norm which is an implication. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 85 / 130
Examples of implications (on [0, 1]) { 1 if a b, Gödel: a b =, b if a > b. { 1 if a b, Goguen: a b = b, a if a > b. Lukasiewicz: a b = min(1, 1 a + b), Kleene-Dienes: a b = max(1 a, b), Reichenbach: a b = 1 a + a b, b if a = 1, largest S-implication: a LS b = 1 a if b = 0, 1 otherwise. { 1 if a b, Gaines-Rescher: a b =, 0 if a > b. there are other implications. Verify which of (16) (23) are satisfied by the above functions., Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 86 / 130
Further examples of functions which are called implications: Functions called QL-implications are sometimes considered implications for fuzzy logic. These functions come from quantum logic and are defined by a b = a (a b) for a t-norm, t-conorm, and negation. In general, they do not satisfy (17). early Zadeh: a b = max(1 a, min(a, b)), for,, and being min, max, and standard negation, Klir and Yuan: a b = 1 a + a 2 b, for,, and being product, probabilistic sum, and standard negation, Kleene-Dienes: a b = max(1 a, b) for,, and being Luk. t-norm, Luk. t-conorm, and standard negation. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 87 / 130
Properties of implications: (16) (17) (18) (19) (20) (21) (22) Gödel X X X X X X X Goguen X X X X X X X Lukasiewicz X X X X X X X Kleene-Dienes X X X X X Reichenbach X X X X X Gaines-Rescher X X X X X X X early Zadeh X X - - - - Klir-Yuan X X - - - - Therefore, early Zadeh and Klir-Yuan are not implications according to our definition. Verify that early Zadeh and Klir-Yuan do not satisfy (17). Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 88 / 130
Examples of implications (on [0, 1]) Gödel (top left), Lukasiewicz (top right), product (bottom) Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 89 / 130
Equivalences in fuzzy logic Definition (truth functions of equivalences) A (truth function of) equivalence on a complete lattice L, is a binary operation on L which satisfies a b = b a, (24) 0 1 = 1 0 = 0, (25) a a = 1, (26) a 1 b 1 b 2 a 2 implies a 1 a 2 b 1 b 2. (27) Sometimes, fuzzy equivalence instead of truth function of equivalence in fuzzy logic ; E(a, b) is sometimes used instead of a b. (24) and (26): obvious requirements. (25): to agree with classical equivalence. (27): the closer the arguments, the higher the degree of their equivalence. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 90 / 130
Theorem (equivalences and implications) The following conditions are equivalent for a linearly ordered L, : (1) is an equivalence on L,. (2) There exists an implication on L, satisfying a a = 1 such that a b = (a b) (b a) (3) There exists an implication on L, satisfying a a = 1 such that a b = (a b) (b a) Note that in classical logic, we have both a b = (a b) (b a) and a b = (a b) (b a). Shows that equivalences are just the functions defined the usual way from implications satisfying a a = 1. Can be extended to general L,. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 91 / 130
Proof. (1) (2) : Given, define { by a b = 1 if a b, a b if a > b. Then is an implication (verify). Once can easily see that a b = (a b) (b a) (just go by cases, distinguish a < b, a = b, a > b). (2) (3) : Just observe that if L, is linearly ordered then (a b) (b a) = (a b) (b a). (3) (1) : By verifying that defined from satisfies conditions from the definition of equivalences. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 92 / 130
Examples of equivalences (on [0, 1]) Gödel: Goguen: a b = a b = we put c 0 = for c > 0. Lukasiewicz: { 1 if a = b, min(a, b) if a b. { 1 if a = b, min( a b, b a ) if a b., a b = 1 a b., Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 93 / 130
Further connectives in fuzzy logic modifiers: unary connectives for modeling expressions such as very..., more or less..., aggregation operators: include various types of averaging operators; can be seen as generalizing disjunctions and conjunctions, further connectives such as uninorms (common generalization of t-norms and t-conorms: neutral element need not be 0 or 1, it can be any e [0, 1]); mathematical, rather than practical motivation. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 94 / 130
Modifiers Consider proposition Peter is tall. Denote it ϕ. Assume ϕ = 0.7. Now, consider Is is very true that Peter is tall ( Peter is very tall. ) Denote it very(ϕ). Intuitively, very(ϕ) < ϕ, e.g. very(ϕ) = 0.5. very is a unary logical connective. Assuming very is truth-functional, there is the associated truth function m very for which we have very(ϕ) = m very ( ϕ ). m very is called and intensifying modifier (hedge). Example: m very (a) = a 2. Further intensifying modifiers: rather, highly, etc. Radim Belohlavek (SSIE BU) Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems Fall 2008 95 / 130