Вы находитесь на странице: 1из 4

Chapter 12

Fuzzy Logic in Database and Information Systems

(Topics 12.5 and 12.6 by Sachin Dube , Roll No. 803/IS/11)

12.5.1 FUNCTIONAL DEPENDENCIES


Definition- Let R be a a relation with attributes A1, A,.. , An . Let X and Y be subsets of { A1, A2,.. , An . }. X Y , read as X functionally determines Y or Y functionally depends upon X if identical values of X implies identical values of Y i.e.
( ( ) ( )) ( ( ) ( ))

Where Ai, and Aj , denote attributes in X and Y respectively and t1,t2 denotes elements in the Cartesian product of Rs attribute domain. From above definition we can infer that value of an attribute can be functionally determined by value of other attribute . we can reduce redundancy by analyzing such relations Consider a relation Job(jobType, expertise, location) Now if we add name and address of employer to relation to create new relation Jobemp(Ename, Eaddr, jobType, expertise, location) Problems due to addition of these two attributes are 1. Employee address will be duplicated for employer that has multiple job openings 2. It is difficult to enter employee into relation that does not currently have job opening, allowing null values would become necessary to insert. The cause of problem is that name of employer determines its address. Hence it is better to remove employee address from jobemp and create a new relation as EMP( Ename, Eaddr, Tel, Fax, Email, Webaddr) Functional dependency is a restriction on relations about equality or inequality of attribute values.

12.5.1.1 KEYS
Keys can uniquely determine a tuple. Definition-- Let R be a a relation with attributes A1, A2,.. , An . Let X and Y be subsets of { A1, A2,.. , An . } . X is a key of relation R if

1. X A1, A2,.. , An , 2. There is no proper subset Y of X such that Y Second condition says that key should be minimal.

A1, A2,.. , An

12.5.2 Functional Dependency In Fuzzy Relations


As functional dependency is restriction over equality or inequalities of attribute values we have to use a diff. approach in fuzzy relations because here equality is a matter of degree. Since the functional dependency should be a black-and-white notion we need to choose fuzzy implication operator that maps degree of truth in antecedent and consequent to 0 or 1.

( (

) )

( (

) )

Where t(F) denotes truth value of logic formula f.

Definition-

Let R be a a relation with attributes A1, A2,.. , An. Let X and Y be subsets of { A1, A2,.. , An . }. We say Y functionally depends upon X if following holds:
( ( ( ) ( )) ( ( ) ( ))

Where Ai, and Aj , denote attributes in X and Y respectively, Eq denotes a fuzzy quality predicate and denotes standard sequence fuzzy implication. This can be done by using other fuzzy implications also So Y functionally depends upon X if the degree of truth of fuzzy implication in above equation exceeds a threshold value. Thus dependency remains Boolean. It is either fully satisfied or not at all, which makes it compatible with other regular integrity constraints.

12.6 FUZZY OBJECT ORIENTED DATABASE


In object oriented data models data is stored in objects. An object is analogues to tuple in relational model. But there is one big and important difference- objects have OID (object identifiers) Because OID is used to identify objects uniquely, two objects with identical attribute values are considered as different. Instance variables in an object, like attributes of tuples, stores information about the object A class is analogues to relation. Both groups set of lower level information into more abstract units. Difference between class and relation is that relations can not be grouped or

generalized into more abstract relations, like classes. Classes can form a hierarchical structure. Thus it incorporates benefits of inheritance. In addition to inherit data OO data models also inherits procedures for manipulating data. Imprecise information in an OO database can be classified into three categories:i. ii. iii. Imprecision of data encapsulated in object Partial class membership Fuzzy subclass/superclass relationship

Partial class membership An object can partially belong to a class Suppose we want to use OO database to store the areas of faculty in CS department. Interests of dept. members are as:John smith---> robotics and AI with more emphasis on robotics Nancy Brown---> theory and robotics with equal emphasis

Classes,

superclass/subclass , -------------- class membership of objects

Suppose above database is used by department head to determine total no. of faculties in each area. Proff. Smith and brown wants to be counted as partial member in each area they are involved. This is shown in above figure. A common strategy is to use membership degree of an object in a class as priority of class in searching for a source for inheriting objects data and methods.

Fuzzy superclass/subclass relationships It is possible only for object oriented databases. If we allow a class to have partial members class becomes a fuzzy set of objects. A class C1 is a superclass of another class C2, also called as C1 subsume C2 (denotedC1>C2 ) if and only if all objects in C2 are also in C1 . this is written as
( ) ( )

Alternatively,
( ) ( )

Definition:- Let C1 and C2 be two fuzzy classes the degree that C1 superclass of C2 denoted by Subsume(C1 , C1), is defined as:( ) ( ( ) ( ))

Where subset denotes a fuzzy subsethood measure We need to determine degree to which an object belongs to a class . there can be multiple paths between two classes Sol:- multiply weights of all the links on a path that reaches ancestor class. If there are multiple paths, use highest membership calculated among paths. Ex.

Computer Engineering (nancy

brown) = max {0.5x0.9,0.5x0.1} = 0.45

Or we can replace product with min. operator or other fuzzy conjunction operator, max can be replaced by other disjunction operators

Вам также может понравиться