Fuzzy Concepts and Formal Methods: An Extended Notation for Z Chris Matthews Division of Information Technology School of Management, Technology and Environment La Trobe University, Bendigo Bendigo, Victoria, Australia Phone: +61 3 54447350 Fax: +61 3 54447998 email:
[email protected] Paul A. Swatman School of Management Information Sciences Deakin University Burwood, Victoria, Australia Phone: +61 3 9244 6268 Fax: +61 3 9244 6928 February 4, 2000
Abstract
It has been recognised that formal methods are useful as a modelling tool in requirements engineering. Speci cation languages such as Z permit the precise and unambiguous modelling of system properties and behaviour. However some system problems, particularly those drawn from the IS problem domain, may be dicult to model in crisp or precise terms. It may also be desirable that formal modelling should commence as early as possible, even when our understanding of parts of the problem domain is only approximate. This working paper suggests fuzzy set theory as a possible representation scheme for this imprecision or approximation. We provide an extended notation for Z that de nes the operators, measures and modi ers necessary for the manipulation of fuzzy sets and relations. We also provide a series of proofs which establishes an isomorphism between the extended notation presented here and conventional Z when applied to boolean sets and relations. A mathematical toolkit incorporating this extended notation can be found at (URL will be given here). It can be used with the publically available type checking software, ZTC to type check speci cations developed in the extended notation.
The authors would like to thank Dr. Roger Duke (Dept of Computer Science and Electrical Engineering,
University of Queensland, Aus.) and Dr. Steve Dunne (School of Computing and Mathematics, University of Teesside, U.K.) for their constructive comments and suggestions made during the preparation of this working paper.
1
1 Introduction Formal methods are a set of tools that allow the development of a complete, precise and correct speci cation for system properties and behaviour. Although most commonly used in the speci cation of safety critical software, it has been argued (Wing 1990) that they can and should be applied to all stages of the systems development lifecycle including the speci cation of user requirements. One commonly used speci cation language is Z (Spivey 1992) and it, together with it's object-oriented successor, Object-Z (Duke, King, Rose & Smith 1991, Duke, Rose & Smith 1995), has been used as a basis for communication and requirements validation in the FOOM (Formal Object-Oriented Methodology) systems development methodology (Swatman & Swatman 1992, Swatman 1996). Z is based on typed set theory and rst order predicate calculus. System properties are modelled using set-theoretic concepts and the necessary pre- and post-conditions for each system operation, or change of state, are explicitly stated. The speci cation describes what the system has to do rather than how it is to be done. The basic building block in any Z speci cation is the schema. This is a named grouping of components that can be referred to throughout the speci cation. Schemas provide structure for a speci cation and describe system operations and permissable system states. The schema calculus allows more complex components of a speci cation to be built from a set of previously de ned and simpler schemas. Z is a powerful analytical tool that facilitates system understanding through the development of a series of unambiguous, veri able mathematical models (Jacky 1997, Potter, Sinclair & Till 1996). These models can be used to predict system behaviour and to identify errors prior to implementation. Various levels of abstraction are possible. These may vary from a statement of requirements (to be used as a basis for communication and validation) to a more detailed and concrete software design document. Unlike some of the more informal graphical methods such as data ow diagrams, Z is not open to diering interpretations, but instead allows the designer to prove, through rigorous mathematical reasoning, the properties of a speci cation (Saiedian 1997). However some systems are not naturally understood in crisp or precise terms. For example soft or socio-organisational systems, whose major focus is the interaction of people with organisations, are social rather than technical in nature. A substantial body of research has revealed that people may have diering perspectives on organisational objectives, problems and functions (Checkland 1981, Checkland & Scholes 1990, Wilson 1990). There is no one problem de nition waiting to be discovered, but instead the possibility of several equally relevent viewpoints depending on the participant. These multiple viewpoints may also be contradictory and could be characterised by imprecision, vagueness and uncertainty. Problem domains of this type are dicult to model using boolean set theory. Concepts or objects, whether they be individuals, organisational units, opinions etc, may not be easily or naturally categorised into precise groupings. Instead we may be more interested in the extent to which something resembles a type or in the relative ranking of something within a class or type rather than a precise description (Wang 1996). For example it might be more realistic to think of the degree of experience of a 2
particular employee rather than attempting to distinguish between an experienced and a nonexperienced employee. Rather than classifying a person as one of a group of people holding a particular set of opinions, it might be more useful to consider to what extent the person resembles people holding those views. It is like a glass of water. The glass need not be completely full | it can be almost full, half full or nearly empty. A half empty glass is the same as a half full glass. Although they are all glasses of water some are not full, some are not empty or perhaps some only partially resemble a full glass, or for that matter, an empty glass. It all depends on your point of view. It has been argued that a formal approach should be introduced as early as possible (Swatman & Swatman 1992, Swatman 1996) in requirements determination. Formally expressed models can provide an unambiguous and precise expression of a client's requirements. They allow the speci er and the client to share a common understanding of the problem and enable issues of ambiguity and uncertainty to be identi ed and resolved as early as possible. However the use of a formal speci cation language such as Z requires that we are able to categorise objects and concepts into precise types as the speci cation is developed. This may present a problem if imprecision, uncertainty and vagueness is inherent to the problem domain. There is a danger that we will lose part of what we are attempting to represent. On the other hand it may be desirable to develop speci cations as early as possible to identify and resolve the contradictory and imprecise aspects of a particular problem perspective. It would be useful if we were able to express some of this imprecision in the formal model itself and then re ne the model as these issues are clari ed, rather than having to resolve all uncertainty or imprecision prior to the development of a speci cation. One could imagine both our precise and our approximate understanding of parts of a problem domain being expressed in the same formal model. If this was to be the case then the speci cation language would require the syntax and semantics to capture and represent imprecision and/or approximation. Fuzzy set theory may oer one such possibility.
1.1 Fuzzy Sets
Fuzzy set theory and fuzzy logic provides a mathematical basis for representing and reasoning with knowledge in uncertain and imprecise problem domains. Unlike boolean set theory where set membership is crisp (ie an element is either a member or it isn't), the underlying principle in fuzzy set theory is that an element is permitted to exhibit partial membership in a set. Fuzzy set theory allows us to represent the imprecise concepts (eg motivated employees, high pro ts and productive workers ) which may be important in a problem domain within an organizational context. The common set operators such as negation, union and intersection all have their fuzzy equivalents and measures for fuzzy subsetness and fuzzy set entropy have been proposed (Luca & Termini 1972, Kosko 1990, Klir & Harmanec 1997). Fuzzy logic deals with degrees of truth and provides a conceptual framework for approximate rather than exact reasoning. The truth of propositions such as a few employees are motivated or productive workers lead to high pro ts can be estimated and reasoned with (Zadeh 1988, Zadeh 1992). Fuzzy set theory and fuzzy logic have been successfully applied to the development of industrial 3
control systems (Viot 1993) and commercial expert systems (Graham 1991). Fuzzy set theory, and related theories such as possibility theory (Dubois & Prade 1988), have been suggested as appropriate analytical tools in the Social Sciences (Smithson 1987, Smithson 1988). The idea that over-precision in measurement instruments may present a methodological problem in psychological measurement has led to developments such as a fuzzy graphic rating scale for the measurement of occupational preference (Hesketh, Pryor & Gleitzman 1989), fuzzy set based response categories for marketing applications (Viswanathan, Bergen, Dutta & Childers 1996) or a fuzzy set importance rating scheme for personnel selection (Allinger, Feinzig & Janak 1993). Fuzzy set theory and fuzzy logic have also been used to model group decision making, particularly when the preference for one set of options over another is not clear cut (Kacprzyk, Fedrizzi & Nurmi 1992). The use of fuzzy propositions to capture the elasticity of `soft' functional requirements has been proposed as a technique for modelling imprecision during requirements engineering for knowledge-based system development (Lee & Yen 1994). Research has also indicated that there may be some compatibility between between fuzzy set theory and the meanings that we as humans place on the linguistic terms that are normally used to describe such sets (Newstead 1988, Schmucker 1984, Zimmer 1988, Zwick, Budescu & Wallsten 1988). This suggests that modelling techniques based on fuzzy set theory may lead to models that are closer to our cognitive processes and models than those based on boolean set theory.
1.2 Motivation
The motivation for our current research can be summarised as follows: Given that there are some system problems, particularly those drawn from a socio-organisational context, that are not naturally modelled or understood in precise or crisp terms and given that we wish to retain the bene ts of a speci cation language such as Z as a method for communication and validation, is it possible to build into the existing syntax the necessary semantics to capture the uncertainty, imprecision or vagueness characteristic of such systems? Fuzzy set theory is an established technique for representing uncertainty and imprecision and can be seen as a generalisation of boolean or crisp set theory. Given that Z is a set based speci cation language then it should be possible to provide a notation that incorporates fuzzy set ideas within the language itself while at the same time retaining the precision of any Z model. This working paper is concerned with the development of a suitable fuzzy set notation within the existing Z syntax. It is assumed that the existing schema calculus and logical structures Z remain. We present an annotated preamble which de nes the set operators, measures and modi ers necessary for the manipulation of fuzzy sets. This preamble extends that presented in Matthews & Swatman (1997) to concepts related to fuzzy relations as well as fuzzy sets. We present generic de nitions for the domain and range of a fuzzy relation as well as those for domain and range restriction, and anti- restriction. We also provide generic de nitions for the min-max and max-min composition operators for fuzzy relations. We de ne the relational inverse of a fuzzy relation and provide an abbreviation for the identity relation in terms of a 4
fuzzy relation. We also include a series of proofs which establishes an isomorphism between the extended notation presented here and conventional Z when applied to crisp sets (i.e. sets where the membership values are constrained to 0 or 1). It is anticipated that later versions of the preamble will be presented as the ideas are re ned and extended. The paper is organised as follows: Section 2 introduces the fuzzy set representation scheme used in the preamble. The annotated preamble is presented in Section 3. In Section 4 alternative fuzzy set representation schemes and fuzzy set operators are discussed. Sample proofs and for the laws presented in section 3 appear in Appendix 1.
2 A Possible Fuzzy Set Representation in Z A fuzzy set, , can be represented as a mapping from a reference set, X, to the real number interval [0,1]. ie : X ! [0,1] The membership of each element of the reference set is given by (x), where x 2 X. A fuzzy set can be imagined as a set of ordered pairs:
f(x1 ;(x1)); (x2 ;(x2 )); :::; (xn ;(xn ))g where x1 ; x2 ; :::; xn 2 X Crisp sets are those where the membership values, (x), are either 1 or 0 for all x 2 X. e.g.
f(x1 ; 1); (x2 ; 1); (x3 ; 0):::(xn ,1 ; 0); (xn ; 1)g
We refer to sets where the set membership of each element is shown explicitly as being written in an extended notation. Crisp sets can be expressed in either the extended notation or in more conventional terms i.e. The set A = f(x1 ; 1); (x2 ; 1); (x3 ; 0); (x4 ; 0); (x5 ; 1)g could be written simply as fx1 ; x2 ; x5 g Z allows the de nition of relations and functions between sets, and provides the necessary operations to manipulate them. If the reference set is considered to be a basic type within a Z speci cation then a fuzzy set can be de ned as a total function from the reference set to the interval [0,1]. However Z does not de ne the fuzzy set operators for union, intersection and set dierence, or the fuzzy set modi ers such as not, somewhat and very which are needed for fuzzy set and fuzzy set membership manipulation. The preamble provides the generic de nitions, axiomatic descriptions and abbreviations for these operators, modi ers and measures. We use min f1 (x ); 2 (x )g and max f1 (x ); 2 (x )g to determine the membership of a reference 5
set element x in the intersection and union of the two fuzzy sets, 1 and 2 . These operators are well established and preserve many of the properties of their boolean equivalents (Kaufmann 1975, Kruse, Gebhardt & Klawonn 1994, Bojadziev & Bojadziev 1995). When applied to crisp sets, min and max behave in the same way as do the existing operators, \, [, for boolean sets. Two general principles have guided the preparation of the extended notation: 1. Where applicable we permit as much `fuzziness' as possible. For example, rather than de ning generalised union and intersection in terms of a crisp set of fuzzy sets, they are de ned in terms of a fuzzy set of fuzzy sets. The domain and range restriction (and antirestriction) for a fuzzy relation by a fuzzy rather than a crisp set is permitted and so on. 2. When applied to crisp sets in the extended notation the preamble de nitions, abbreviations and descriptions must be be isomorphic with conventional Z. Two functions, P which maps sets of type P T in the conventional notation to a fuzzy set of type F T and Q which maps those reference set elements having full membership in a fuzzy set to a power set in the conventional notation, are included in the preamble and are used in the proofs which attempt to establish this isomorphism. The basic fuzzy set operators for intersection ( and ), union ( or ), complement (not ) and difF ference ( n ), together with the set membership relations, in and notin , are de ned as generally as possible. They are de ned across partial functions of type X !7 [0; 1], rather than being restricted to the fuzzy set formulation, T ! [0; 1]. This allows us to use them when de ning concepts such as the degree of fuzziness or the fuzzy entropy of a set. In these cases we are only interested in those reference set elements that exhibit some set membership i.e. in a partial rather than a total function. The intersection, union and set dierence of any two fuzzy sets are only de ned when the partial function domains are equal. When used in a speci cation the operators will typically be applied to fuzzy sets where the function domains are always the total reference set. We recognise that in many cases there are alternative, and perhaps simpler ways of expressing the de nitions that follow. We have attempted to use a style which attempts to explicitly show set membership in terms of the total function de nition for a fuzzy set. For example when representing the membership of an element t in a fuzzy set fun , we use fun (t ). When de ning the functions P and Q, we represent the membership of t in the crisp set fun as either fun (t ) = 1 or 0 rather than as (t ; 1) or (t ; 0) and so on. The preamble has been type checked using the type checking software, ZTC 1 and can be used as part of a default mathematical toolkit to type check speci cations written in the extended 1 ZTC: A Type Checker for Z Notation, Version 2.01, May 1995 (Xiaoping Jia, Division of Software Engineering, School of Computer Science, Telecommunication, and Information Sciences, DePaul University, Chicago, Illinois, USA).
6
notation.
3 The Preamble
3.1 Preamble Introduction
We are assuming that the set of real numbers, R is known and that the arithmetic operators and relations +; ,; ; have all been de ned for R. We are also assuming that the functions sqrt and abs together with min and max have been de ned for the set of real numbers. For each part of the preamble the generic de nition, axiomatic description or abbreviation is printed rst followed by the LATEX source code. The LATEX macros are de ned in cme.sty and appear in Appendix 2.
3.2 Some basic de nitions
Set membership is measured using the real number interval [0,1].
M == fr : R j 0 r 1g \begin{zed} \member == \{r: \real | 0 \leq r \leq 1\} \end{zed}
The generic symbol, F de nes a `fuzzy' set as a total function from a reference set(type) to the real number interval, M.
F T == T ! M \begin{zed} \fuzzy T == T \tfun \member \end{zed}
The generic symbol, C constrains the membership values of elements in a fuzzy set to f0; 1g. Sets of this type are crisp sets written in the extended notation.
C T == T ! f0; 1g \begin{zed} \crisp T == T \tfun \{0,1\} \end{zed}
7
The function, P is used to map a power set of type T (in the conventional notation) to a fuzzy set, F T in the extended notation. [T ] P : (P T ) ! (C T ) 8 t : T ; set : P T (t 2 set , P (set )(t ) = 1) ^ (t 62 set , P (set )(t ) = 0) \begin{gendef}{T} \fpower : (\power T) \tfun (\crisp T ) \where \forall t: T; set: \power T @ \\ (t \in set \iff \fpower(set)(t) = 1) \land \\ (t \notin set \iff \fpower(set)(t) = 0) \end{gendef}
The function, Q is used to map those reference set elements having a membership of 1 in a fuzzy set of type F T to a power set of type T (in the conventional notation). This is sometimes referred to as the core of a fuzzy set (Jang, Sun & Mizutani 1997). [T ] Q : (F T ) ! (P T ) 8 t : T ; fun : F T t 2 Q(fun ) , fun (t ) = 1 \begin{gendef}{T} \invfpower : (\fuzzy T) \tfun (\power T ) \where \forall t: T; fun: \fuzzy T @ \\ t \in \invfpower(fun) \iff fun(t) = 1 \end{gendef}
The support set, S , of a fuzzy set is the set of those reference set elements that exhibit some membership in the fuzzy set (e.g. see Lowen (1996) and Jang et al. (1997)). The function S maps a set of type F T to its support set (of type P T ). [T ] S : FT ! P T 8 fun : F T ; t : T t 2 S (fun ) , fun (t ) > 0 8
\begin{gendef}{T} \support: \fuzzy T \tfun \power T \where \forall fun: \fuzzy T; t: T @\\ t \in \support(fun) \iff fun(t) > 0 \end{gendef}
For sets of type C T the following hold.
8 fun 1; fun 2 : C T Qfun 1 = Qfun 2 , fun 1 = fun 2 and
(1)
Qfun 1 = S fun 1
(2) The cut of a fuzzy set is the set of reference set elements whose membership values are greater or equal to , where 0 1. A strict cut is one where the membership values are greater than . The notation used here (i.e. [ ] and [ ] ) is taken from (Kruse et al. 1994, page 16, 35). [T ] [ ] : F T M ! P T [ ] : F T M ! P T 8 : M; fun : F T ; t : T t 2 [ fun ] , fun (t ) ^ t 2 [ fun ] , fun (t ) > \begin{gendef}{T} \lsch \_\rsch_{\alpha} : \fuzzy T \cross \member \tfun \power T\\ \lsch \_\rsch_{\underline{\alpha}} : \fuzzy T \cross \member \tfun \power T\\ \where \forall \alpha: \member; fun: \fuzzy T; t: T @\\ t \in \lsch fun \rsch_{\alpha} \iff fun(t) \geq \alpha \land \\ t \in \lsch fun \rsch_{\alphaund} \iff fun(t) > \alpha \end{gendef}
The extended support set, ES , of a fuzzy set is a partial function of type T !7 M containing only that part of the fuzzy set where set membership is greater than 0. 9
[T ]
ES : (F T ) ! (T !7 M) 8 fun : F T ES (fun ) = fun , B f0g \begin{gendef}{T} \extendedsupport : (\fuzzy T) \fun (T \pfun \member) \where \forall fun: \fuzzy T @ \extendedsupport(fun) = fun \nrres \{0\} \end{gendef}
The inverse extended support function, EF , forms a fuzzy set from the extended support set. [T ]
EF : (T !7 M) ! F T 8 fun : (T !7 M); t : T t 2 dom fun , (EF fun )(t ) = fun (t ) t 62 dom fun , (EF fun )(t ) = 0 \begin{gendef}{T} \extendedfuzzy : (T \pfun \member) \fun \fuzzy T \where \forall fun: (T \pfun \member); t: T @ \\ t \in \dom fun \iff (\extendedfuzzy fun)(t) = fun(t) \\ t \notin \dom fun \iff (\extendedfuzzy fun)(t) = 0 \end{gendef}
A non-empty fuzzy set is one where at least one reference set element has a membership greater than zero. F1 T == fF : F T j 9 t : T F (t ) > 0g \begin{zed} \nonemptyfuzzy T == \{F: \fuzzy T| \exists t: T @ F(t) > 0 \} \end{zed}
A nite fuzzy set (ie of type F T) is one that has a nite number of elements with membership greater than zero. nite F T == fF : F T j F , B f0g 2 F (T M)g \begin{zed} \fuzzyfinite T == \{F: \fuzzy T | F \nrres \{0\} \in \finset(T \cross \member) \} \end{zed}
10
A non empty nite fuzzy set is one where there is at least one element with a membership greater then zero. nite F1 T == fF : nite F T j 9 t : T F (t ) > 0g \begin{zed} \nonemptyfuzzyfinite T == \{F: \fuzzyfinite T | \exists t: T @ F(t) > 0 \} \end{zed}
De ning total membership and zero membership relations for extended notation sets. [T ]
in : T $ (T !7 M) 8 t : T ; fun : (T !7 M) t in fun , t 2 dom(fun f1g)
B
\begin{gendef}{T} \_ \fin \_ : T \rel (T \pfun \member) \where \forall t: T; fun: (T \pfun \member)@ t \fin fun \iff t \in \dom(fun \rres \{1\}) \end{gendef}
[T ]
notin : T $ (T !7 M) 8 t : T ; fun : (T !7 M) t notin fun , t 2 dom(fun f0g)
B
\begin{gendef}{T} \_ \fnotin \_ : T \rel (T \pfun \member) \where \forall t: T; fun: (T \pfun \member)@ t \fnotin fun \iff t \in \dom(fun \rres \{0\}) \end{gendef}
3.3 Some set measures
An empty set, empty , of type F T is one where all membership values are zero. [T ]
empty : F T 8 t : T empty (t ) = 0
11
\begin{gendef}{T} \femptyset: \fuzzy T \where \forall t: T @ \femptyset(t) = 0 \end{gendef}
The cardinality of a fuzzy set is de ned as the sum of the membership values (Kosko 1992). It only has meaning for a nite fuzzy set. Counter sums the membership values within sets of type T! 7 7 M and count restricts the summation to membership values greater than 0 in a nite fuzzy set. [T ] counter : (T ! 7 7 M) ! R 8 fun : (T !7 7 M) (8 t : dom fun counter (fun ) = fun (t ) + counter (ft g , fun )) ^ counter ? = 0
C
begin{gendef}{T} \fcounter: (T \ffun \member) \fun \real \where \forall fun: (T \ffun \member) @ (\forall t : \dom fun @ \\ \fcounter(fun) = fun(t) + \fcounter(\{t\} \ndres fun)) \land \\ \fcounter \empty = 0 \end{gendef}
[T ]
count : ( nite F T ) ! R 8 fun : nite F T count (fun ) = counter (ES (fun )) \begin{gendef}{T} \fcount: (\fuzzyfinite T) \fun \real \where \forall fun: \M \fuzzyfinite T @ \\ \fcount(fun) = \fcounter(\extendedsupport(fun)) \\ \end{gendef}
A universal set, U , of type F T is one where all membership values are one. [T ] U : FT 8 t : T U (t ) = 1 12
\begin{gendef}{T} \universalfuzzy: \fuzzy T \where \forall t: T @ \universalfuzzy(t) = 1 \end{gendef}
3.4 Some set operators
Set union and intersection for sets of type T !7 M. [T ]
or : (T !7 M) (T !7 M) ! (T !7 M) 8 fun 1; fun 2 : (T !7 M) dom(fun 1 or fun 2) = dom fun 1 \ dom fun 2 ^ 8 t : dom(fun 1 or fun 2) (fun 1 or fun 2)(t ) = max ffun 1(t ); fun 2(t )g \begin{gendef}{T} \_ \fcup \_: (T \pfun \member) \cross (T \pfun \member) \fun (T \pfun \member) \where \forall fun1, fun2 : (T \pfun \member) @ \\ \dom(fun1 \fcup fun2) = \dom fun1 \cap \dom fun2 \land \\ \forall t: \dom(fun1 \fcup fun2) @ (fun1 ~ \fcup ~ fun2)(t) = \max \{ fun1(t),fun2(t) \}\\ \end{gendef}
[T ]
and : (T !7 M) (T !7 M) ! (T !7 M) 8 fun 1; fun 2 : (T !7 M) dom(fun 1 and fun 2) = dom fun 1 \ dom fun 2 ^ 8 t : dom(fun 1 and fun 2) (fun 1 and fun 2)(t ) = min ffun 1(t ); fun 2(t )g \begin{gendef}{T} \_ \fcap \_: (T \pfun \member) \cross (T \pfun \member) \fun (T \pfun \member) \where \forall fun1, fun2 : (T \pfun \member) @ \\ \dom(fun1 \fcap fun2) = \dom fun1 \cap \dom fun2 \land \\
13
\forall t: \dom(fun1 \fcap fun2) @ (fun1 ~ \fcap ~ fun2)(t) = \min \{ fun1(t),fun2(t) \}\\ \end{gendef}
The complement of a set of type T !7 M. [T ] not : (T !7 M) ! (T !7 M) 8 fun : T !7 M dom(not fun ) = dom fun ^ 8 t : dom fun (not fun )(t ) = 1 , fun (t ) \begin{gendef}{T} \fnot : (T \pfun \member) \fun (T \pfun \member) \where \forall fun: \M T \pfun \member @ \\ \dom(\fnot fun) = \dom fun \land \\ \forall t : \dom fun @ (\fnot fun)(t) = 1 - fun(t)\\ \end{gendef}
Set dierence for fuzzy sets. [T ] F n : (T !7 M) (T !7 M) ! (T !7 M) 8 fun 1; fun 2 : T !7 M F fun 1 n fun 2 = fun 1 and (not fun 2) \begin{gendef}{T} \_\fsetminus\_: (T \pfun \member) \cross (T \pfun \member) \fun (T \pfun \member) \where \forall fun1, fun2: T \pfun \member @ \\ fun1 \fsetminus fun2 = fun1 \fcap (\fnot fun2) \\ \end{gendef}
These operators have the same meaning for `crisp' sets using either the conventional or extended notation.
8 fun 1; fun 2 : C T Q(fun 1 and fun 2) = Qfun 1 \ Qfun 2 Q(fun 1 or fun 2) = Qfun 1 [ Qfun 2 F Q(fun 1 n fun 2) = Qfun 1 n Qfun 2
(3) (4) (5) 14
Generalised union and intersection for fuzzy sets
[T ]
SF : F (F T ) ! F T
8 A : F (F T ); t : T SF ( A)(t ) = max ffun : dom A min ffun (t ); A(fun )gg \begin{gendef}{T} \fbigcup: \fuzzy (\fuzzy T) \fun \fuzzy T \where \forall A: \fuzzy(\fuzzy T), t: T @\\ (\fbigcup A)(t) = \max \{fun: \dom A @ \min\{fun(t), A(fun)\}\} \end{gendef}
[T ]
TF : F (F T ) ! F T
8 A : F (F T )
TF
A = empty ) A = empty ^ A 6= empty ) 8 t : T TF ( A)(t ) = min ffun : dom A j A(fun ) > 0 min ffun (t ); A(fun )gg
\begin{gendef}{T} \fbigcap: \fuzzy (\fuzzy T) \fun \fuzzy T \where \forall A: \fuzzy(\fuzzy T) @\\ A = \femptyset \implies \fbigcap A = \femptyset \land\\ A \neq \femptyset \implies \forall t: T @\\ (\fbigcap A)(t) = \min \{fun: \dom A| A(fun) > 0 @ \min\{fun(t), A(fun)\}\} \end{gendef}
The generalised union and intersection of a fuzzy set of fuzzy sets is permitted. Membership of the fuzzy set fun in the fuzzy set of fuzzy sets, A, could be interpreted as indicating the `degree' to which fun will take part in the union or the intersection. A constraint is placed on the definition of generalised intersection to ensure that it is only formed from those sets that exhibit some membership in the fuzzy set of fuzzy sets. When applied to a `crisp' set of fuzzy sets, generalised union and intersection have the same meaning as fuzzy set union and intersection (ie and and or ) 15
3.5 Fuzziness, set equality and set inclusion
A measure for the degree of `fuzziness' of a nite fuzzy set. This de nition is based on the concept of fuzzy set entropy of a fuzzy set (Kosko 1990, Kosko 1992). The degree of fuzziness of a fuzzy set can be estimated by determining the degree to which it resembles its complement. This de nition only relates to those reference set elements that exhibit some membership in the fuzzy set. For a non-empty nite crisp set, the membership value of each element in the extended support set can only be 1. The degree of fuzziness of such a set is zero. [T ]
fuzzyEntropy : ( nite F T ) ! R 8 fun : nite F T fun = empty ) fuzzyEntropy(fun ) = 0 ^ fun 6= empty ) fuzzyEntropy(fun ) = counter (ES (fun ) and not (ES (fun )))=counter (ES (fun ) or not (ES (fun )))
\begin{gendef}{T} \fentropy: (\fuzzyfinite T) \tfun \real \where \forall fun: \fuzzyfinite T @\\ fun = \femptyset \implies \fentropy(fun) = 0 \land \\ fun \neq \femptyset \implies \fentropy(fun) = \\ \fcounter(\extendedsupport(fun) \fcap \fnot (\extendedsupport(fun)))/ \fcounter(\extendedsupport(fun) \fcup \fnot (\extendedsupport(fun))) \end{gendef}
A measurement of the degree of equality of two fuzzy sets. [T ]
: ( nite F T ) ( nite F T ) ! M 8 fun 1; fun 2 : nite F T (fun 1 = empty ^ fun 2 = empty ) ) (fun 1 fun 2 = 1) ^ (fun 1 = 6 empty _ fun 2 6= empty ) ) fun 1 fun 2 = count (fun 1 and fun 2)=count (fun 1 or fun 2))
Note: The expression, count (fun 1 or fun 2) can only be zero when both fun1 and fun2 are the empty fuzzy set (i.e. where all membership values of the reference set are zero). In this case fun 1 = fun 2 and therefore the degree to which fun 1 equals fun 2 is 1. \begin{gendef}{T} \_\approx\_ : (\fuzzyfinite T) \cross (\fuzzyfinite T) \fun
16
\member \where \forall fun1, fun2 : \fuzzyfinite T ~ \M @ (fun1 = \femptyset \land fun2 = \femptyset) \implies (fun1 \approx fun2 = 1) \land \\ (fun1 \neq \femptyset \lor fun2 \neq \femptyset) \implies \\ fun1 \approx fun2 = \fcount (fun1~ \fcap~ fun2)/\fcount(fun1 ~ \fcup~ fun2)) \O \end{gendef}
Subsetness for sets of type F T . These follow Zadeh's de nitions and de ne complete inclusion.
[T ]
F
: (F T ) $ (F T ) F : (F T ) $ (F T )
F
8 fun 1; fun 2 : F T (fun 1 fun 2) , (8 t : T fun 1(t ) fun 2(t )) F ^ (fun 1 F fun 2) , (fun 1 fun 2 ^ fun 1 =6 fun 2) \begin{gendef}{T} \_\fsubseteq\_ : (\fuzzy T) \rel (\fuzzy T)\\ \_\fsubset\_ : (\fuzzy T) \rel (\fuzzy T) \where \forall fun1, fun2: \fuzzy T @ (fun1 \fsubseteq fun2 ) \iff (\forall t: T @ fun1(t) \leq fun2(t)) \\ \land (fun1 \fsubset fun2 ) \iff (fun1 \fsubseteq fun2 \land fun1 \neq fun2) \end{gendef}
Subsetness has the same meaning for `crisp' sets using either the conventional or extended notation.
8 fun 1; fun 2 : C T F
fun 1 fun 2 , Qfun 1 Qfun 2 F fun 1 fun 2 , Qfun 1 Qfun 2
(6) (7) A measurement of the degree of subsetness (Kosko 1990, Kosko 1992). This is only de ned for fuzzy sets that are countable i.e. sets of type nite F T .
17
[T ]
: ( nite F T ) ( nite F T ) ! M 8 fun 1; fun 2 : nite F T (fun 1 =6 empty ) ) (fun 1 fun 2 = count (fun 1 and fun 2)=count (fun 1)) ^ (fun 1 = empty ) ) (fun 1 fun 2 = 1)
\begin{gendef}{T} \_\fdegsubset\_ : (\fuzzyfinite T) \cross (\fuzzyfinite T) \fun \member \where \forall fun1, fun2 : \fuzzyfinite T ~ @ (fun1 \neq \femptyset) \implies \\ (fun1 \fdegsubset fun2 = \fcount (fun1~ \fcap ~fun2)/\fcount (fun1)) \land\\ (fun1 = \femptyset) \implies (fun1 \fdegsubset fun2 = 1) \end{gendef}
3.6 Set modi ers and fuzzy numbers
The following are generic de nitions for the most common fuzzy set modi ers (or linguistic hedges (Zadeh 1975). They modify the membership values of reference elements that exhibit partial membership in a set of type F T . When applied to sets of type C T they have no eect. [T ]
very : (F T ) ! (F T ) 8 t : T ; fun : (F T ) very(fun )(t ) = fun (t ) fun (t )
\begin{gendef}{T} \very: (\fuzzy T) \fun (\fuzzy T) \where \forall t: T; fun: (\fuzzy T) @ \very(fun)(t) = fun(t) * fun(t) \end{gendef}
[T ]
somewhat : (F T ) ! (F T ) 8 t : T ; fun : (F T ) somewhat(fun )(t ) = sqrt (fun (t ))
\begin{gendef}{T} \somewhat: (\fuzzy T ) \fun (\fuzzy T) \where
18
\forall t: T; fun: (\fuzzy T) @ \somewhat(fun)(t) = sqrt(fun(t)) \end{gendef}
Approximation hedges such as near(m), around(m), roughly(m) can be modelled as fuzzy numbers (Cox 1994, Bojadziev & Bojadziev 1995). In a fuzzy system where t represents some measured scalar variable, the fuzzy set parameters could be dependent on the magnitude of t alone and scaled accordingly (Cox 1994). For example the degree to which 9.5 is around 10 may be considered to be the same as that to which 95 is around100, 950 is around 1000 and so on. Diering scaling factors would be used for diering linguistic descriptions.
The following model near and around as a triangular fuzzy number about a positive real number m. In each case all p 2 R+ that lie within the supporting interval ([m - 0.25m,m + 0.25m] for around and [m - 0.15m,m + 0.15m] for near) exhibit some membership in the set. The base width of the set is scaled according to the magnitude of the central point, m. Gaussian or bell-shaped de nitions could replace these if necessary. near : R+ ! (FR + ) 8 p ; m : R+ ((p (m , 0:15 m )) ^ (p (m + 0:15 m )) ) (near(m ))(p ) = 0) ^ ((m , 0:15 m ) < p < (m + 0:15 m )) ) (near(m ))(p ) = 1 , abs ((m , p )=0:15 m ) \begin{axdef} \near: \posreal \fun ( \fuzzy \posreal) \where \forall p,m : \posreal @ ((p \leq (m - 0.15*m)) \land (p \geq (m + 0.15*m))\\ \implies (\near(m))(p) = 0) \land \\ (( m - 0.15*m) < p < (m + 0.15*m)) \implies \\ (\near(m))(p) = 1 - abs((m - p)/0.15*m) \end{axdef}
around : R+ ! (FR+ ) 8 p ; m : R+ ((p (m , 0:25 m )) ^ (p (m + 0:25 m )) ) (around(m ))(p ) = 0) ^ ((m , 0:25 m ) < p < (m + 0:25 m )) ) (around(m ))(p ) = 1 , abs ((m , p )=0:25 m ) \begin{axdef} \around: \posreal \fun ( \fuzzy \posreal) \where
19
\forall p,m : \posreal @ ((p \leq (m - 0.25*m)) \land (p \geq (m + 0.25*m))\\ \implies (\around(m))(p) = 0) \land \\ (( m - 0.25*m) < p < (m + 0.25*m)) \implies \\ (\around(m))(p) = 1 - abs((m - p)/0.25*m) \end{axdef}
On the other hand the fuzzy set parameters may be dependent on the context in which the hedge is to be used. For example an expert may interpret around with greater precision than a lay person. In this case the parameters are more subjective and could be better represented using the central value with a supporting interval i.e. as (a1 ; m ; a2 ) where [a1 ; a2 ] is the supporting interval (Bojadziev & Bojadziev 1995). A generic de nition for the fuzzy quanti er most (Kacprzyk et al. 1992). most : M ! M 8 m : M (0 m < 0:3) ) most(m ) = 0 ^ (0:3 m < 0:8) ) most(m ) = 2 m , 0:6 ^ (m 0:8) ) most(m ) = 1 \begin{axdef} \most: \member \fun \member \where \forall m: \member @ (0 \leq m < 0.3) \implies \most(m) = 0 \land \\ (0.3 \leq m < 0.8) \implies \most(m) = 2*m - 0.6 \land \\ (m \geq 0.8) \implies \most(m) = 1 \end{axdef}
3.7 Fuzzy relations F Y == F (X Y ) X$ \begin{zed} X \frel Y == \fuzzy(X \cross Y) \end{zed}
C Y == C (X Y ) X$ \begin{zed} X \crel Y == \crisp(X \cross Y) \end{zed}
20
A identity relation can be de ned, using the extended notation. [X ]
F
F X) id: F X ! (X $ 8 fun : F X ; x1; x2 : X F (x1 = x2 ) ) (id fun )(x1 7! x2 ) = fun (x1 ) ^ F (x1 6= x2 ) ) (id fun )(x1 7! x2 ) = 0
\begin{gendef}{X} \fid : \fuzzy X \fun (X \frel X) \where \forall fun: \fuzzy X; x_{1}, x_{2}: X @ \\ (x_{1} = x_{2}) \implies (\fid fun)(x_{1} \mapsto x_{2}) = fun(x_{1}) \land \\ (x_{1} \neq x_{2}) \implies (\fid fun)(x_{1} \mapsto x_{2}) = 0 \end{gendef}
This has the same meaning using either the extended or conventional notation. F
Q(id xset ) = id(Q(xset ))
(8)
C
where xset is of type id X . The de nition for the identity relation is based on that in Lowen (1996). A fuzzy relational inverse can be de ned. [X ; Y ]
F Y ) ! (Y $ F X) ,F : (X $ F Y ); x : X ; y : Y 8 R : (X $
\begin{gendef}{X,Y} \_\finv: (X \frel Y) \fun (Y \frel X) \where \forall R: (X \frel Y); x: X; y: Y @ R(x \mapsto y) \end{gendef}
R,F (y 7! x ) = R(x 7! y )
R \finv (y \mapsto x) =
21
This has the same meaning using either the extended or conventional notation. 8 R : X $C Y ; x : X ; y : Y
Q(R,F ) = (QR),1
(9)
3.7.1 Range and Domain for a fuzzy relation F
F
Domain(dom) and range(ran) for fuzzy relations can be de ned as a fuzzy set (Dubois & Padre 1980). The membership of an element x in the domain (and an element y in the range could be considered to be equal to the maximum of all memberships of the mappings fx g ! Y (or F Y . The appropriate schema are shown below. X ! fy g) in the fuzzy relation, X $ [X ; Y ]
F F Y ) ! FX dom: (X $
F
F Y ); x : X (dom R )(x ) = max fy : Y R (x 7! y )g 8 R : (X $ \begin{gendef}{X,Y} \fdom: (X \frel Y) \fun \fuzzy X \where \forall R : (X \frel Y); x : X @ (\fdom R)(x) = \max\{y: Y @ R(x \mapsto y)\} \end{gendef}
[X ; Y ]
F F Y ) ! FY ran: (X $
F
F Y ); y : Y (ran R )(y ) = max fx : X R (x 7! y )g 8 R : (X $ \begin{gendef}{X,Y} \fran: (X \frel Y) \fun \fuzzy Y \where \forall R : (X \frel Y); y : Y @ (\fran R)(y) = \max\{x: X @ R(x \mapsto y)\} \end{gendef}
These de nitions are essentially intuitive. They have the same meaning for `crisp' relations using either the conventional or extended notation. 22
8 R : X $C Y F
Q(dom R) = dom(Q(R)) F Q(ran R) = ran(Q(R))
(10) (11)
3.7.2 Range and domain restrictions for fuzzy relations
A domain and range restriction for a fuzzy relation. The membership of the maplet x ! 7 y in the restricted fuzzy relation is given by the minimum of the original membership of x 7! y in the relation, R and the membership of x or y in the restricting set, xset or yset. [X ; Y ]
CFF B
F Y ) ! (X $ F Y) : (F X ) (X $ F Y ) (F Y ) ! (X $ F Y) : (X $
F Y ); xset ; yset : (F X ) 8 x : X ; y : Y ; R : (X $ F (xset C R )(x 7! y ) = min fR (x 7! y ); xset (x )g ^ F (R B yset )(x 7! y ) = min fR (x 7! y ); yset (y )g \begin{gendef}{X,Y} \_\fdres\_:(\fuzzy X) \cross (X \frel Y) \fun (X \frel Y) \\ \_\frres\_: (X \frel Y) \cross (\fuzzy Y) \fun (X \frel Y) \where \forall x: X; y: Y; R: (X \frel Y); xset, yset: (\fuzzy X) @ \\ (xset \fdres R)(x \mapsto y) = \min\{R(x \mapsto y), xset(x)\} \land \\ (R \frres yset)(x \mapsto y) = \min\{R(x \mapsto y),yset(y)\} \end{gendef}
These have the same meaning for `crisp' relations using either the conventional or extended notation.
8 R : X $C Y , xset : C X , yset : C Y Q(xset CF R) = Q(xset ) C Q(R) Q(R BF yset ) = Q(R) B Q(yset )
(12) (13)
3.7.3 Range and domain anti-restrictions for fuzzy relations
A domain and range anti-restriction for a fuzzy relation. The membership of the maplet x 7! y in the anti-restricted fuzzy relation is given by the minimum of the original membership of x 7! y 23
in the relation, R and the membership of x or y in the complement of the anti-restricting set, xset or yset. [X ; Y ]
C,FF : (F X ) (X $F Y ) ! (X $F Y ) B, : (X $F Y ) (F Y ) ! (X $F Y ) F Y ); xset ; yset : (F X ) 8 x : X ; y : Y ; R : (X $ ,F R)(x 7! y ) = min fR(x 7! y ); (not xset )(x )g ^ (xset C ,F yset )(x 7! y ) = min fR(x 7! y ); (not yset )(y )g (R B
\begin{gendef}{X,Y} \_\fndres\_:(\fuzzy X) \cross (X \frel Y) \fun (X \frel Y) \\ \_\fnrres\_: (X \frel Y) \cross (\fuzzy Y) \fun (X \frel Y) \where \forall x: X; y: Y; R: (X \frel Y); xset, yset: (\fuzzy X) @ \\ (xset \fndres R)(x \mapsto y) = \min\{R(x \mapsto y), (\fnot xset)(x)\} \land \\ (R \fnrres yset)(x \mapsto y) = \min\{R(x \mapsto y), (\fnot yset)(y)\} \end{gendef}
These also have the same meaning for `crisp' relations using either the conventional or extended notation.
8 R : X $C Y , xset : C X , yset : C Y
Q(xset , CF R) = Q(xset ) ,C Q(R) F Q(R ,B yset ) = Q(R) , B Q(yset )
(14) (15)
3.7.4 The max-min composition for fuzzy relations [X ; Y ; Z ]
Fo F Y ) (Y $ F Z ) ! (X $ F Z) : (X $ 9 F F Z ) (X $ F Y ) ! (X $ F Z) : (Y $ F Y ); R : (Y $ F Z ); x : X ; z : Z (R Fo R )(x 8 R1 : (X $ 2 1 9 2 = max fy : Y min fR1 (x 7! y ); R2 (y 7! z )gg ^ (R1 Fo9 R2 )(x 7! z ) = (R2 F R1 )(x 7! z )
24
7! z )
\begin{gendef}{X,Y,Z} \_\fcomp\_: (X \frel Y) \cross (Y \frel Z) \fun (X \_\fcirc\_: (Y \frel Z) \cross (X \frel Y) \fun (X \where \forall R_{1}: (X \frel Y); R_{2}: (Y \frel Z); x: @ (R_{1} \fcomp R_{2})(x \mapsto z) \\ = \max \{y: Y @ \min \{R_{1}(x \mapsto y),R_{2}(y z)\}\} \land \\ (R_{1} \fcomp R_{2})(x \mapsto z) = (R_{2} \fcirc \mapsto z) \end{gendef}
\frel Z)\\ \frel Z) X; z: Z \mapsto R_{1})(x
There are two composition operators for fuzzy relations (max-min and min-max)(Bojadziev & Bojadziev 1995). Only max-min is shown here. The min-max operators would be de ned by interchanging min and max in the above generic de nition. This de nition has the same meaning for `crisp' relations using either the conventional or extended notation.
8 R1 : X $C Y and R2 : Y $C Z Q(R1 Fo9 R2 ) = Q(R1 ) o9 Q(R2 )
(16)
3.7.5 A fuzzy relational image for fuzzy relations [X ; Y ]
F F
F Y ) FX ! FY (j j) : (X $ F Y ); set : F X ; y : Y 8 R : (X $ F F (R (j set j) )(y ) = max fx : X min fR (x 7! y ); set (x )gg
\begin{gendef}{X,Y} \_\frelimage\_ : (X \frel Y) \cross \fuzzy X \fun \fuzzy Y \where \forall R:\M (X \frel Y); set:\fuzzy X; y: Y @ \\ (R \frelimage set )(y) = \max\{ x: X @ \min\{R(x \mapsto y),set(x)\}\} \O \end{gendef}
This de nition is based on that given in Lowen (1996) and has the same meaning for `crisp' relations and sets using either the conventional or extended notation. 25
8 R : X $C Y ; set : C X and y : Y F
F
Q(R (j set j) ) = Q(R)(j Q(set ) j)
(17)
3.8 Fuzzy functions
A series of fuzzy functions can be de ned. A fuzzy partial function.
F7 Y == fR : X $ F Y j 8x : X; y ;y : Y X! 1 2 (R (x 7! y1 ) > 0) ^ (R (x 7! y2 ) > 0) ) y1 = y2 g
\begin{zed} X \fpfun Y == \{R: X \frel Y | \forall x: X; y_{1},y_{2}: Y @ \\ (R(x \mapsto y_{1}) > 0) \land (R (x \mapsto y_{2}) > 0) \implies y_{1} = y_{2} \} \end{zed}
A fuzzy total function
F F Y == fR : X ! F7 Y j 8 x : X (dom X! R )(x ) > 0g
\begin{zed} X \ftfun Y == \{R: X \fpfun Y | \forall x: X @ (\fdom R)(x) > 0 \} \end{zed}
A fuzzy partial injection
F7 Y j 8 x ; x : X ; y : Y X F7 Y == fR : X ! 1 2 (R (x1 7! y ) > 0 ^ R (x2 7! y ) > 0) ) x1 = x2 g
\begin{zed} X \fpinj Y == \{R: X \fpfun Y | \forall x_{1},x_{2}: X; y: Y @ \\ (R(x_{1} \mapsto y) > 0 \land R(x_{2} \mapsto y) > 0) \implies x_{1} = x_{2} \} \end{zed}
A fuzzy total injection X
F Y == fR : X !F Y j 8 x1; x2 : X ; y : Y
(R (x1 7! y ) > 0 ^ R (x2 7! y ) > 0) ) x1 = x2 g 26
\begin{zed} X \ffinj Y == \{R: X \ftfun Y | \forall x_{1},x_{2}: X; y: Y @\\ (R(x_{1} \mapsto y) > 0 \land R(x_{2} \mapsto y) > 0) \implies x_{1} = x_{2} \} \end{zed}
A fuzzy partial surjection F F7 Y == fR : X ! F7 Y j 8 y : Y (ran X! ! R )(y ) > 0g \begin{zed} X \fpsurj Y == \{R: X \fpfun Y | \forall y: Y @ (\fran R)(y) > 0 \} \end{zed}
A fuzzy total surjection F F Y == fR : X ! F Y j 8 y : Y (ran X! ! R )(y ) > 0g \begin{zed} X \fsurj Y == \{R: X \ftfun Y | \forall y: Y @ (\fran R)(y) > 0 \} \end{zed}
A fuzzy bijection
F
X ! Y == fR : X
F Y j 8 y : Y (ranF R)(y ) > 0g
\begin{zed} X \fbij Y == \{R: X \ffinj Y | \forall y: Y @ (\fran R)(y) > 0 \} \end{zed}
`Crisp' versions of the above can also be de ned. A crisp partial function. C7 Y == fR : X $ C Y j 8x : X; y ;y : Y X! 1 2 (R (x 7! y1 ) = 1) ^ (R (x 7! y2 ) = 1) ) y1 = y2 g \begin{zed} X \cpfun Y == \{R: X \crel Y | \forall x: X; y_{1},y_{2}: Y @ \\ (R(x \mapsto y_{1}) = 1) \land (R (x \mapsto y_{2}) = 1) \implies y_{1} = y_{2} \} \O \end{zed}
27
A crisp total function F C Y == fR : X ! C7 Y j 8 x : X (dom X! R )(x ) = 1g \begin{zed} X \ctfun Y == \{R: X \cpfun Y | \forall x: X @ (\fdom R)(x) = 1 \} \end{zed}
A crisp partial injection
C7 Y j 8 x ; x : X ; y : Y X C7 Y == fR : X ! 1 2 (R (x1 7! y ) = 1 ^ R (x2 7! y ) = 1) ) x1 = x2 g \begin{zed} X \cpinj Y == \{R: X \cpfun Y | \forall x_{1},x_{2}: X; y: Y @ \\ (R(x_{1} \mapsto y) = 1 \land R(x_{2} \mapsto y) = 1) \implies x_{1} = x_{2} \} \end{zed}
A crisp total injection X
C Y == fR : X !C Y j 8 x1; x2 : X ; y : Y
(R (x1 7! y ) = 1 ^ R (x2 7! y ) = 1) ) x1 = x2 g
\begin{zed} X \cfinj Y == \{R: X \ctfun Y | \forall x_{1},x_{2}: X; y: Y @\\ (R(x_{1} \mapsto y) = 1 \land R(x_{2} \mapsto y) = 1) \implies x_{1} = x_{2} \} \end{zed}
A crisp partial surjection F C7 Y == fR : X ! C7 Y j 8 y : Y (ran X! ! R )(y ) = 1g \begin{zed} X \cpsurj Y == \{R: X \cpfun Y | \forall y: Y @ (\fran R)(y) = 1 \} \end{zed}
A crisp total surjection F C Y == fR : X ! C Y j 8 y : Y (ran X! ! R )(y ) = 1g
28
\begin{zed} X \csurj Y == \{R: X \ctfun Y | \forall y: Y @ (\fran R)(y) = 1 \} \end{zed}
A crisp bijection
C
X ! Y == fR : X
C Y j 8 y : Y (ranF R)(y ) = 1g
\begin{zed} X \cbij Y == \{R: X \cfinj Y | \forall y: Y @ (\fran R)(y) = 1 \} \end{zed}
These have the same meaning for `crisp' functions using either the conventional or the extended notation. Q(X !C7 Y ) = X !7 Y (18) C Q(X ! Y ) = X ! Y (19) C7 Y ) = X Q(X 7 Y (20) C Q(X Y ) = X Y (21) C7 Y ) = X ! Q(X !! !7 Y (22) C Q(X !! Y ) = X !! Y (23) C Q(X ! Y) = X !Y (24)
4 Alternative notation and de nitions It is possible to visualise fuzzy sets other than as total functions. The use of a vector notation provides a geometric rather than algebraic representation for a fuzzy set (Kosko 1990, Kosko 1992). Consider a reference set X = fx1 ; x2 ; x3 ; :::; xn g, and a series of fuzzy subsets, 1 ; 2 ; :::; m de ned on X. Each m could be de ned as the n-dimensional vector: (m (x1 ),m (x2 ),m (x3 ), ... ,m (xn )) or geometrically as a point in a n-dimensional space (or hypercube). `Crisp' subsets are represented by those points at the vertices of the n-dimensional hypercube. The closer a point is to the centre of the hypercube, the more fuzzy is the set it represents. The point at the centre of the hypercube is the one where all vector components are equal to 0.5. If the centre of the hypercube represents the fuzzy subset, m then not m , m [ not m and 29
m \ not m are all equivalent to m . The set of all possible points represents the power set of
X (ie the set of all subsets of X | fuzzy and crisp).
This notation is useful as it provides an elegant visualisation of fuzzy set measures such as cardinality, fuzzy entropy and degree of subsetness. The operators for fuzzy set intersection, union and complement still hold and generate sets that also can be represented as points. The notation is simple as only the membership values are represented and manipulated | the reference set elements are implied by the ordering of the vector components. However its usefulness as a representation scheme within a set based, algebraic language such as Z is limited. A vector notation is not a basic mathematical construct within Z, and would need to be de ned. As component order is important, a sequence rather than set based de nition, with all necessary vector operation de nitions, would most likely be required. Even if this were possible, a fundamental problem still exists. The notation does not explicitly de ne a mapping function from the reference set to the membership interval [0,1]. The membership vector for a particular fuzzy set would need to be enumerated rather than evaluated. Within a speci cation it will be necessary at times to evaluate the membership of a particular element from the reference set. For example, we may require the membership value of an input observation, pro t levels, in a fuzzy set high pro ts . This is easily done if the mapping function, high pro ts : R ! [0,1], is available and explicitly stated. The alternative is to enumerate the membership value of each reference set element. For a large reference set this would become tedious and for in nite reference sets such as R, not possible. Although the min and max operators for fuzzy set intersection and union are predominant, alternatives such as product, bounded sum and mean have received some intuitive and practical support (Cox 1994, Smithson 1987, Zwick et al. 1988). However these operators do not preserve all of the properties of their boolean equivalents or of the min and max operators. In particular the properties of distributivity and idempotency may only hold in the `crisp' case. For example the product operator for fuzzy set intersection and union could be de ned as follows: [T ]
or : (T !7 M) (T !7 M) ! (T !7 M) and : (T !7 M) (T !7 M) ! (T !7 M) 8 fun 1; fun 2 : (T !7 M) dom(fun 1 and fun 2) = dom fun 1 \ dom fun 2 ^ dom(fun 1 or fun 2) = dom fun 1 \ dom fun 2 ^ 8 t : dom(fun 1 or fun 2) (fun 1 or fun 2)(t ) = fun 1(t ) + fun 2(t ) , fun 1(t ) fun 2(t ) ^ 8 t : dom(fun 1 and fun 2) (fun 1 and fun 2)(t ) = fun 1(t ) fun 2(t )
Idempotency requires that fun 1 or fun 1 = fun 1 and fun 1 = fun 1. Clearly, using the above de nitions, this is not the case if 0 < fun 1(t ) < 1. Similarly the distributative property i.e
30
fun 1 and (fun 2 or fun 3) = (fun 1 and fun 2) or (fun 1 and fun 3) and fun 1 or (fun 2 and fun 3) = (fun 1 or fun 2) and (fun 1 or fun 3), only holds in the `crisp' case (Smithson 1987).
The min and max operators are used for fuzzy set intersection and union in the preamble to provide on the one hand, a generalisation of boolean set theory, and on the other, to preserve as much of the existing mathematical structure as possible. They are commutative, associative, idempotent and distributative. When using 1 , (x ) as the membership of the reference set element x in the complement of the fuzzy set , it has been shown that De Morgan's Laws still hold (Bojadziev & Bojadziev 1995, Lowen 1996) i.e. not (1 and 2 ) = not (1 ) or not (2 ) not (1 or 2 ) = not (1 ) and not (2 )
Only the law of the excluded middle is not valid in the fuzzy case i.e. and not () = empty holds only in the `crisp' case.
This is expected and re ects the overlap between a fuzzy set and its complement. This indicates the generality and exibility of fuzzy set theory in dealing with ambiguous and vague information.
31
Appendix 1: Some Sample Proofs A1.1: Proofs for laws 1 to 5 8 fun 1; fun 2 : C T ; t : T
Showing Qfun 1 = Qfun 2 , fun 1 = fun 2 (law 1) fun 1 = fun 2 , 8 t : T fun 1(t ) = fun 2(t ) , 8 t : T ((t ; 1) 2 fun 1 ^ (t ; 1) 2 fun 2) _ ((t ; 0) 2 fun 1 ^ (t ; 0) 2 fun 2) , 8 t : T (t 2 Qfun 1 ^ t 2 Qfun 2) _ (t 62 Qfun 1 ^ t 62 Qfun 2) , Qfun 1 = Qfun 2 Showing Qfun 1 = S fun 1 (law 2) t 2 Qfun 1 , (t ; 1) 2 fun 1 [by de nition of Q] , fun 1(t ) = 1 , t 2 S fun 1 [by de nition of S ] Showing Q(fun 1 or fun 2) = Qfun 1 [ Qfun 2 (law 3). t 2 Qfun 1 [ Qfun 1 , t 2 Qfun 1 _ t 2 Qfun 2 [by de nition of [, (Spivey 1992, p. 91)] , (t ; 1) 2 fun 1 _ (t ; 1) 2 fun 2 [by de nition of Q] , fun 1(t ) = 1 _ fun 2(t ) = 1 , (fun 1 or fun 2)(t ) = 1 [(fun 1 or fun 2)(t ) = max ffun 1(t ); fun 2(t )g] , (t ; 1) 2 (fun 1 or fun 2) , t 2 Q(fun 1 or fun 2) [by de nition of Q] Showing Q(fun 1 and fun 2) = Qfun 1 \ Qfun 2 (law 4). t 2 Qfun 1 \ Qfun 1 , t 2 Qfun 1 ^ t 2 Qfun 2 [by de nition of \,(Spivey 1992, p. 91)] , (t ; 1) 2 fun 1 ^ (t ; 1) 2 fun 2 [by de nition of Q] , fun 1(t ) = 1 ^ fun 2(t ) = 1 , (fun 1 and fun 2)(t ) = 1 [(fun 1 and fun 2)(t ) = min ffun 1(t ); fun 2(t )g] , (t ; 1) 2 (fun 1 and fun 2) , t 2 Q(fun 1 and fun 2) [by de nition of Q]
32
F
Showing Q(fun 1 n fun 2) = Qfun 1 n Qfun 2 (law 5). t 2 Qfun 1 n Qfun 1 , t 2 Qfun 1 ^ t 62 Qfun 2 [by de nition of n (Spivey 1992, p. 91)] , (t ; 1) 2 fun 1 ^ (t ; 0) 2 fun 2 [by de nition of Q] , fun 1(t ) = 1 ^ fun 2(t ) = 0 F F , (fun 1 n fun 2)(t ) = 1 [(fun 1 n fun 2)(t ) = min ffun 1(t ); 1 , fun 2(t )g] F , (t ; 1) 2 (fun 1 n fun 2) F , t 2 Q(fun 1 n fun 2) [by de nition of Q]
A1.2: Proofs for Laws 6 and 7 8 fun 1; fun 2 : C T F
Showing fun 1 fun 2 , Qfun 1 Qfun 2 (law 6). Qfun 1 Qfun 2 , (8 t : T t 2 Qfun 1 ) t 2 Qfun 2) [by de nition of , (Spivey 1992, p. 90)] , (8 t : T (t ; 1) 2 fun 1 ) (t ; 1) 2 fun 2) [by de nition of Q] , (8 t : T fun 1(t ) = 1 ) fun 2(t ) = 1) , (@t : T fun 1(t ) > fun 2(t )) [fun1(t) and fun2(t) can only be 0 or 1] , (8 t : T fun 1(t ) fun 2(t )) F , fun 1 fun 2 F Showing fun 1 fun 2 , Qfun 1 Qfun 2 (law 7). Qfun 1 Qfun 2 , Qfun 1 Qfun 2 ^ fun 1 6= fun 2 [by de nition of , (Spivey 1992, p. 90)] F , fun 1 fun 2 ^ fun 1 6= fun 2 [by law 6] F , fun 1 fun 2
A1.3: Proofs for laws 8 to 11 F
Q(id xset ) = id(Q(xset )) (law 8) 8 xset : C X ; x1 ; x2 : X
33
F
x1 7! x2 2 Q(id xset ) F , (x1 7! x2 ; 1) 2 id xset F , (id xset )(x1 7! x2) = 1 , xset (x1 ) = 1 ^ xset (x2 ) = 1 , x1 2 Q(xset ) ^ x2 2 Q(xset ) , x1 7! x2 2 id(Q(xset )) 8 R : X $C Y ; x : X ; y : Y
[by de nition of Q] [assume x1 = x2 ] F [by de nition of id] [by de nition of Q] [by de nition of id]
Showing Q(R ,F ) = (QR ),1 (law 9). y 7! x 2 (QR ),1 , x 7! y 2 QR [by de nition of ,1 ,(Spivey 1992, p. 100)] , (x 7! y ; 1) 2 R [by de nition of Q] ,F , (y 7! x ; 1) 2 R [by de nition of ,F ] , y 7! x 2 Q(R,1 ) F Showing Q(dom R ) = dom(QR ) (law 10). F x 2 Q(dom R ) F , (x ; 1) 2 dom R [by de nition of Q] F , dom R(x ) = 1 F , 9 y : Y R(x 7! y ) = 1 [by the de nition of dom] , (x 7! y ; 1) 2 R , x 7! y 2 QR , x 2 dom(QR) F Showing Q(ran R ) = ran(QR ) (law 11). F y 2 Q(ran R ) F , (y ; 1) 2 ran R [by de nition of Q] F , ran R(y ) = 1 F , 9 x : X R(x 7! y ) = 1 [by the de nition of ran] , (x 7! y ; 1) 2 R , x 7! y 2 QR , y 2 ran(QR)
A1.4: Proofs for laws 12 to 15
8 R : X $C Y ; xset : C X ; yset : C Y ; x : X ; y : Y Showing Q(xset C R ) = Q(xset ) C Q(R ) (law 12). F
34
C
x 7! y 2 Q(xset ) Q(R ) , x 2 Q(xset ) ^ x 7! y 2 Q(R) [by de nition of , (Spivey 1992, p. 98)] , (x ; 1) 2 xset ^ (x 7! y ; 1) 2 R [by de nition of Q] , xset (x ) = 1 ^ R(x 7! y ) = 1 F , (xset F R)(x 7! y ) = 1 [by de nition of ] , (x 7! y ; 1) 2 xset F R , x 7! y 2 Q(xset F R) F Showing Q(R yset ) = Q(R ) Q(yset ) (law 13). x 7! y 2 Q(R ) Q(yset ) , x 7! y 2 Q(R) ^ y 2 Q(yset ) [from the de nition of , (Spivey 1992, p. 98)] , (x 7! y ; 1) 2 R ^ (y ; 1) 2 yset [by de nition of Q] , R(x 7! y ) = 1yset (y ) = 1 F , (R F yset )(x 7! y ) = 1 [by de nition of ] , (x 7! y ; 1) 2 R F yset , x 7! y 2 Q(R F yset ) F Showing Q(xset , R ) = Q(xset ) , Q(R ) (law 14). F x 7! y 2 Q(xset ) , Q(R ) , x 62 Q(xset ) ^ x 7! y 2 Q(R) [by de nition of ,,(Spivey 1992, p. 99)] , (x ; 0) 2 xset ^ (x 7! y ; 1) 2 R [by de nition of Q] , xset (x ) = 0 ^ R(x 7! y ) = 1 F , (xset ,F R)(x 7! y ) = 1 [by de nition of ,] F , (x 7! y ; 1) 2 xset , R F , x 7! y 2 Q(xset , R) F Showing Q(R , yset ) = Q(R ) , Q(yset ) (law 15). x 7! y 2 Q(R ) , Q(yset ) , x 7! y 2 Q(R) ^ y 62 Q(yset ) [by de nition of ,, (Spivey 1992, p. 99)] , (x 7! y ; 1) 2 R ^ (y ; 0) 2 yset [by de nition of Q] , R(x 7! y ) = 1 ^ yset (y ) = 0 F , (R ,F yset )(x 7! y ) = 1 [by de nition of ,] F , (x 7! y ; 1) 2 R , yset F , x 7! y 2 Q(R , yset )
C
B B
B
C C
C
B
B B
C C
B
B
B B C C
C
B
C
C
C
C
B
B
B
B B
A1.5: Proofs for laws 16 and 17
8 R1 : X $C Y ; R2 : Y $C Z ; x : X ; y : Y Showing Q(R1 Fo9 R2 ) = Q(R1 ) o9 Q(R2 ) (law 16). 35
x 7! z 2 Q(R1 ) o9 Q(R2 ) , 9 y : Y x 7! y 2 Q(R1 ) ^ y 7! z 2 Q(R2 ) [by de nition of o9,(Spivey 1992, p. 97)] , 9 y : Y (x 7! y ; 1) 2 R1 ^ (y 7! z ; 1) 2 R2 , 9 y : Y R1 (x 7! y ) = 1 ^ R2 (y 7! z ) = 1 , 9 y : Y min fR1 (x 7! y ); R2 (y 7! z )g = 1 , (R1 Fo9 R2 )(x 7! z ) = 1 [by de nition of Fo9 ] , (x 7! z ; 1) 2 R1 Fo9 R2 , x 7! z 2 Q(R1 Fo9 R2) 8 R : X $C Y ; set : C X ; y : Y F
F
Showing Q(R (j set j) ) = Q(R )(j Q(set ) j) (law 17). y 2 Q(R )(j Q(set ) j) , 9 x : X x 2 Q(set ) ^ x 7! y 2 QR [by de nition of (jj), (Spivey 1992, p. 101)] , 9 x : X (x ; 1) 2 set ^ (x 7! y ; 1) 2 R [by de nition of Q] , 9 x : X set (x ) = 1 ^ R(x 7! y ) = 1 F F , (R (j set j) )(y ) = 1 [by de nition of the fuzzy relational image] F F , (y ; 1) 2 R (j set j) F F , y 2 Q(R (j set j) )
A1.6: Proofs for laws 18 to 24
The proofs for these laws are trivial, they follow directly from the de nition of Q.
A1.7: Showing an isomorphism between the conventional and extended notations when expressing `crisp' ideas 8 X1 ; X2 : P X ; x : X
X1 \ X2 = Q(P X1 and P X2 ) X1 [ X2 = Q(P X1 or P X2 )
(25) (26)
F
X1 n X2 = Q(P X1 n P X2 ) Proof for Law (25). x 2 X1 \ X2 , x 2 X1 ^ x 2 X2 [ by de nition of \, (Spivey 1992, p. 91)] , (x ; 1) 2 P X1 ^ (x ; 1) 2 P X2 [ by de nition of P ] , P X1(x ) = 1 ^ P X2 (x ) = 1 , (P X1 and P X2 )(x ) = 1 [ by de nition of and ] , (x ; 1) 2 (P X1 and P X2) , x 2 Q(P X1 and P X2 ) [ by de nition of Q] , X1 \ X2 = Q(P X1 and P X2 )
36
(27)
Proof for Law (26). x 2 X1 [ X2 , x 2 X1 _ x 2 X2 [ by de nition of [, (Spivey 1992, p. 91)] , (x ; 1) 2 P X1 _ (x ; 1) 2 P X2 [ by de nition of P ] , P X1(x ) = 1 _ P X2 (x ) = 1 , (P X1 or P X2)(x ) = 1 [ by de nition of or ] , (x ; 1) 2 (P X1 or P X2 ) , x 2 Q(P X1 or P X2 ) [ by de nition of Q] , X1 [ X2 = Q(P X1 or P X2 ) Proof for Law (27). x 2 X1 n X2 , x 2 X1 ^ x 62 X2 [by de nition of n, (Spivey 1992, p. 91)] , (x ; 1) 2 P X1 ^ (x ; 0) 2 P X2 [by de nition of P ] , P X1(x ) = 1 ^ P X2 (x ) = 0 F F , (P X1 n P X2 )(x ) = 1 [by de nition of n ] F , (x ; 1) 2 (P X1 n P X2 ) F , x 2 Q(P X1 n P X2) [by de nition of Q] F , X1 n X2 = Q(P X1 n P X2)
37
Appendix 2: The style le, cme.sty \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def
\member {\mathcal{M}} \fuzzy {\mathcal{F}} \crisp {\mathcal{C}} \fuzzyfinite {{\sf finite~} \mathcal{F}} \crispfinite {{\sf finite~} \mathcal{C}} \nonemptyfuzzyfinite {{\sf finite~} \mathcal{F}_{1}} \nonemptyfuzzy {\mathcal{F}_{1}} \universalfuzzy {\mathcal{U}} \fuzzycross {\stackrel{\mathcal{F}}{\cross}} \fpowerrel {\mathcal{R}} \landz {\stackrel{f}{\land}} \lorz {\stackrel{f}{\lor}} \lnotz {\stackrel{f}{\lnot}} \frel {\stackrel{\mathcal{F}}{\rel}} \crel {\stackrel{\mathcal{C}}{\rel}} \fpfun {\stackrel{\mathcal{F}}{\pfun}} \ftfun {\stackrel{\mathcal{F}}{\fun}} \fpinj {\stackrel{\mathcal{F}}{\pinj}} \ffinj {\stackrel{\mathcal{F}}{\inj}} \fpsurj {\stackrel{\mathcal{F}}{\psurj}} \fsurj {\stackrel{\mathcal{F}}{\surj}} \fbij {\stackrel{\mathcal{F}}{\bij}} \cpfun {\stackrel{\mathcal{C}}{\pfun}} \ctfun {\stackrel{\mathcal{C}}{\fun}} \cpinj {\stackrel{\mathcal{C}}{\pinj}} \cfinj {\stackrel{\mathcal{C}}{\inj}} \cpsurj {\stackrel{\mathcal{C}}{\psurj}} \csurj {\stackrel{\mathcal{C}}{\surj}} \cbij {\stackrel{\mathcal{C}}{\bij}} \fdom {\stackrel{\mathcal{F}}{\dom}} \fran {\stackrel{\mathcal{F}}{\ran}} \fcomp {\stackrel{\mathcal{F}}{\comp}} \fcirc {\stackrel{\mathcal{F}}{\circ}} \fin {{\sf ~in~}} \fnotin {{\sf ~notin~}} \femptyset {{\sf ~empty~}} \fcount {{\sf count~}} \fcounter {{\sf counter~}} \fnot {{\sf not~}} \cm {\stackrel{cm}{\implies}} \cp {\stackrel{cm}{\implies}} \fcup {{\sf ~or~}}
38
\def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def \def
\fcap {{\sf ~and~}} \fbigcup {~\stackrel{\mathcal{F}}{\bigcup}} \fbigcap {~\stackrel{\mathcal{F}}{\bigcap}} \fsetminus {\stackrel{\mathcal{F}}{\setminus}} \very {{\sf very}} \somewhat {{\sf somewhat}} \near {{\sf near}} \around {{\sf around}} \most {{\sf most}} \definitely {{\sf definitely}} \generally {{\sf generally}} \fpower {\mathcal{P}} \invfpower {\mathcal{Q}} \support {\mathcal{S}} \fsubseteq {\stackrel{\mathcal{F}}{\subseteq}} \fsubset {\stackrel{\mathcal{F}}{\subset}} \posreal {\real^{+}} \frres {\stackrel{\mathcal{F}}{\rres}} \fdres {\stackrel{\mathcal{F}}{\dres}} \fndres {\stackrel{\mathcal{F}}{\ndres}} \fnrres {\stackrel{\mathcal{F}}{\nrres}} \fid {\stackrel{\mathcal{F}}{\id}} \crispid {~\stackrel{\mathcal{C}}{\id}} \finv {^{-\fuzzy}} \fdegsubset {\stackrel{\subset}{\sim}} \flimg {\stackrel{\mathcal{F}}{\limg}} \frimg {\stackrel{\mathcal{F}}{\rimg}} \frelimage#1 {\flimg#1\frimg} \alphaund {\underline{\alpha}} \fentropy {{\sf ~fuzzyEntropy} } \extendedsupport {\mathcal{E}\support} \extendedfuzzy {\mathcal{E}\fuzzy} \distance {{\sf ~distance~}}
References Allinger, G., Feinzig, S. & Janak, E. (1993). Fuzzy Sets and Personnel Selection: Discussion and an Application, Journal of Occupational and Organizational Psychology 66: 162{169. Bojadziev, G. & Bojadziev, M. (1995). Fuzzy Sets, Fuzzy Logic, Applications, World Scienti c, Singapore. Checkland, P. (1981). Systems Thinking, Systems Practice, John Wiley and Sons, Chichester. 39
Checkland, P. & Scholes, J. (1990). Soft Systems Methodology in Action, John Wiley and Sons, Chichester. Cox, E. (1994). The Fuzzy Systems Handbook, AP Professional - Harcourt Brace & Company, Boston. Dubois, D. & Padre, H. (1980). Fuzzy Sets and Systems: Theory and Applications, Academic Press, Inc. Dubois, D. & Prade, H. (1988). Possibility Theory - An Approach to Computerised Processing of Uncertainty, Plenum Press, New York. Duke, R., King, P., Rose, G. & Smith, G. (1991). The Object-Z Speci cation Language: Version 1, Technical Report 91-1, Dept of Computer Science, University of Queensland. Duke, R., Rose, G. & Smith, G. (1995). Object-Z: A Speci cation Language Advocated for the Description of Standards, Computer Standards and Interfaces 17: 511{533. Graham, I. (1991). Fuzzy Logic in Commercial Expert Systems - Results and Prospects, Fuzzy Sets and Systems 40: 451{472. Hesketh, B., Pryor, R. & Gleitzman, M. (1989). Fuzzy Logic: Toward Measuring Gottfredson's Concept of Occupational Social Space, Journal of Counselling Psychology 36(1): 103{109. Jacky, J. (1997). The Way of Z: Practical Programming with Formal Methods, Cambridge University Press, Cambridge. Jang, J.-S. R., Sun, C.-T. & Mizutani, E. (1997). Neuro-Fuzzy and Soft Computing - A Computational Approach to Learning and Machine Intelligence, Prentice-Hall, Inc., New Jersey. Kacprzyk, J., Fedrizzi, M. & Nurmi, H. (1992). Fuzzy Logic with Linguistic Quanti ers in Group Decision Making, in R. Yager & L. Zadeh (eds), An Introduction to Fuzzy Logic Applications in Intelligent Systems, Kluwer Academic, pp. 263{280. Kaufmann, A. (1975). Introduction to the theory of Fuzzy Subsets, Vol. 1 - Fundamental Theoretical Elements, Academic Press, London. Klir, J. & Harmanec, D. (1997). Types and Measures of Uncertainty, in J. Kacprzyk, H. Nurmi & M. Fedrizzi (eds), Consensus under Fuzziness, Kluwer Academic, pp. 29{51. Kosko, B. (1990). Fuzziness vs. Probability, Int. J. General Systems 17: 211{240. Kosko, B. (1992). Neural Networks and Fuzzy Systems, Prentice-Hall, New Jersey. Kruse, R., Gebhardt, J. & Klawonn, F. (1994). Foundations of Fuzzy Systems, John Wiley Sons, Chichester. Lee, J. & Yen, J. (1994). Specifying Soft Requirements of Knowledge-Based Systems, in R. Yager & L. Zadeh (eds), Fuzzy Sets, Neural Networks, and Soft Computing, Van Nostrand Reinhold, New York, pp. 285{295. 40
Lowen, R. (1996). Fuzzy Set Theory: Basic Concepts, Techniques and Bibliography, Kluwer Academic, Dordrecht. Luca, A. D. & Termini, S. (1972). A De nition of a Nonprobablistic Entropy in the Setting of Fuzzy Set Theory, Information and Control 20: 301{312. Matthews, C. & Swatman, P. A. (1997). Fuzzy Z?, The Second Australian Workshop on Requirements Engineering (AWRE'97), Macquarie University, Sydney, pp. 99{114. Newstead, S. E. (1988). Quanti ers as Fuzzy Concepts, in T. Zetenyi (ed.), Fuzzy Sets in Psychology, Elsevier Science Publishers B.V, North-Holland, pp. 51{72. Potter, B., Sinclair, J. & Till, D. (1996). An Introduction to Formal Speci cation and Z, second edn, Prentice Hall International Series in Computer Science, Hemel Hempstead. Saiedian, H. (1997). Formal Methods in Information Systems Engineering, in R. H. Thayer & M. Dorfman (eds), Software Requirements Engineering, second edn, IEEE Computer Society Press, pp. 336{349. Schmucker, K. (1984). Fuzzy Sets, Natural Language Computations, and Risk Analysis, Computer Science Press, Rockville. Smithson, M. (1987). Fuzzy Set Analysis for Behavioral and Social Sciences, Springer-Verlag, New York. Smithson, M. (1988). Ignorance and Uncertainty - Emerging Paradigms, Springer-Verlag, New York. Spivey, J. (1992). The Z Notation: A Reference Manual, second edn, Prentice Hall International Series in Computer Science, Hemel Hempstead. Swatman, P. A. (1996). Formal Object-Oriented Method - FOOM, in H. Kilov & W. Harvey (eds), Speci cation of Behavioural Semantics in Object-Oriented Information Systems, Kluwer Academic, pp. 297{310. Swatman, P. A. & Swatman, P. M. C. (1992). Formal Speci cation: An Analytical Tool for (Management) Information Systems, Journal of Information Systems 2(2): 121{160. Viot, G. (1993). Fuzzy Logic: Concepts to Constructs, AI Expert 8(11): 26{33. Viswanathan, M., Bergen, M., Dutta, S. & Childers, T. (1996). Does a Single Response Category in a Scale Completely Capture a Response?, Psychology and Marketing 13(5): 457{479. Wang, P. (1996). The Interpretation of Fuzziness, IEEE Transactions on Systems, Man, and Cybernetics - Part B: Cybernetics 26(2): 312{326. Wilson, B. (1990). Systems: Concepts, Methodologies and Applications, second edn, John Wiley and Sons, Chichester. Wing, J. M. (1990). A Speci er's Introduction to Formal Methods, IEEE Computer 23(9): 8{24. 41
Zadeh, L. A. (1975). The Concept of a Linguistic Variable and its Application to Approximate Reasoning I, Information Sciences 8(4): 199{249. Zadeh, L. A. (1988). Fuzzy Logic, IEEE Computer 21(4): 83{92. Zadeh, L. A. (1992). Knowledge Representation in Fuzzy Logic, in R. Yager & L. Zadeh (eds), An Introduction to Fuzzy Logic Applications in Intelligent Systems, Kluwer Academic, pp. 1{25. Zimmer, A. (1988). A Common Framework for Colloquil Quanti ers and Probability Terms, in T. Zetenyi (ed.), Fuzzy Sets in Psychology, Elsevier Science Publishers B.V, North-Holland, pp. 73{89. Zwick, R., Budescu, D. V. & Wallsten, T. S. (1988). An empirical study of the integration of linguistic probabilities, in T. Zetenyi (ed.), Fuzzy Sets in Psychology, Elsevier Science Publishers B.V, North-Holland, pp. 91{125.
42