Abstract
We consider fuzzy functional dependencies (FFDs) which can exist between attributes in possibilistic databases. The degree of FFD is evaluated by two numbers from the unit interval which correspond to possibility and necessity measures. The notion of FFD is defined with the use of the extended Gödel implication operator. For such dependencies we present inference rules as a fuzzy extension of Armstrong’s axioms. We show that they form a sound and complete system.
Access provided by Autonomous University of Puebla. Download conference paper PDF
Similar content being viewed by others
Keywords
- Possibilistic databases
- Possibility distribution
- Possibility measure
- Necessity measure
- Fuzzy implicator
- Fuzzy functional dependencies
- Inference rules
1 Introduction
Conventional database systems are designed with the assumption of precision of information collected in them. The problem becomes more complex if our knowledge of the fragment of reality to be modeled is imperfect. In such cases one has to apply tools for describing uncertain or imprecise information [7, 8]. One of them is the theory of possibility [1, 3]. In the possibilistic database framework attribute values are represented by means of possibility distributions. Each value x of an attribute X is assigned with a number \({\pi _X(x)}\) from the unit interval which expresses the possibility degree of its occurrence. Different ways of determination of the possibility degree have been described in [4].
One of the most important notions of the database theory is the concept of functional dependency (FD). The classical definition of functional dependency \(X\) \(\rightarrow \) \(Y\) between attributes X and Y of a relation scheme R is based on the assumption that the equality of attribute values may be evaluated formally with the use of two-valued logic. The existence of \(X\) \(\rightarrow \) \(Y\) means that X-values uniquely determine Y-values. If attribute values are imprecise one can say about a certain degree of the dependency \(X\) \(\rightarrow \) \(Y\). It contains the information to what extent X determines Y. In possibilistic databases closeness of compared values can be evaluated by means of possibility and necessity measures.
Since the notion of FD plays an important role in the design process [5], its fuzzy extension has attracted a lot of attention. Hence, different approaches concerning fuzzy functional dependencies (FFDs) have been described in professional literature. A number of different definitions emerged [2, 6, 9, 10]. In the paper we extend the definition given by Chen [2]. According to [2] the degree of the fuzzy functional dependency is evaluated by means of the possibility measure. The necessity measure is not used. The equality degree equals the maximum value 1 when the two possibility distributions have the maximum degree 1 at the same element. Thus applying of the possibility measure for evaluation of the equality of two imprecise values expressed by possibility distributions is not sufficient. In the paper evaluation of closeness of imprecise values is made by means of both possibility and necessity measures. The notion of FFD is defined with the use of the extended Gödel implication operator [9]. For such dependencies we will present inference system based on the well known set of Armstrong’s axioms which is an important property of FDs in classical databases.
The paper is organized as follows. In the next section we discuss the basic notions dealing with fuzzy functional dependencies in possibilistic databases and formulate the extended inference rules. Section 3 discusses properties of the extended Gödel implication operator. In Sect. 4 we proved the soundness and completeness of the inference rules.
2 Fuzzy Functional Dependencies in Possiblistic Databases
Let r be a relation of the scheme R(U) where U denotes a set of attributes, \(U = {\lbrace X_1,X_2,...,X_n \rbrace }\). Let \({DOM(X_i)}\) denotes a domain of \(X_i\). Let us assume that attribute values are given by means of normal possibility distributions:
where t is a tuple of r and \({\pi _{t(X_i)}(x)}\) is a possibility degree of t(\(X_i\)) = x. The possibility distribution takes the form: \({\lbrace {\pi _X(x_1)/x_1,\pi _X(x_2)/x_2,...,\pi _X(x_n)/x_n\rbrace }}\), where \({x_i \in }\) DOM(X). At least one value must be completely possible i.e. its possibility degree equals 1. This requirement is referred to as the normalization condition. Let \(t_1\) and \(t_2\) be tuples of r. The degrees of possibility and necessity that \(t_1\)(\(X_i\)) = \(t_2\)(\(X_i\)), denoted by Pos and Nec, respectively, are as follows:
The closeness degree of \(t_1\)(\(X_i\)) and \(t_2\)(\(X_i\)), denoted by \({\approx }\) \({(t_1(X_i),t_2(X_i))}\), is expressed by two numbers \({\approx }\) \({(t_1(X_i),t_2(X_i))}_N\) and \({\approx }\) \({(t_1(X_i),t_2(X_i))}_\varPi \) from the unit interval which correspond to necessity and possibility measures. Thus \({\approx }\) \({(t_1(X_i),t_2(X_i))= (\approx (t_1(X_i),t_2(X_i))_N,\approx (t_1(X_i),t_2(X_i))_\varPi )}\). For identical values of \(t_1(X_i)\) and \(t_2(X_i)\) we have \({\approx }\) \({(t_1(X_i),t_2(X_i))}\) = (1,1). Otherwise,
For estimation of tuple closeness, denoted by \(=_c\) \({(t_1(X),t_2(X))}\) = (\(=_c\) \({(t_1(X),}\) \({t_2(X))}\) \(_N\), \(=_c\) \({(t_1(X),t_2(X))}\) \(_{\varPi }\)), one must consider all the components \(X_i\) of X (\(X_i\) \({\in }\) X) and apply the operation min:
In order to evaluate the degree of a fuzzy functional dependency by means of both possibility and necessity measures we will apply the following extension of the Gödel implication operator \(I_{G}\)(a,b) = (\(I_{G}\)(a,\(b\) \({)_N}\),\(I_{G}\)(a,\(b\) \({)_\varPi }\)), a = (\(a_N\),\({a_{\varPi }}\)), b = (\(b_N\),\({b_{\varPi }}\)), \(a_N\), \(a_\varPi \), \(b_N\), \(b_\varPi \) \({\in }\) [0,1] where
Definition 1
Let R(U) be a relation scheme where U = \({\lbrace X_1, X_2,\ ...\ , X_n\rbrace }\). Let X and Y be subsets of U: X, \({Y\subseteq }\) U. Y is functionally dependent on X in \({\theta =(\theta _N,\theta _{\varPi }})\) degree,\({\theta _N}\),\({\theta _{\varPi }}\) \({\in }\) [0,1], denoted by \({X \rightarrow _{\theta }Y}\), if and only if for every relation r of R the following conditions are met:
where \(=_c\) is the closeness measure (4) and I is the following implicator:
where \({I_c}\) is the classical implication operator and \(I_G\) is the extended Gödel implicator.
Like in classical relational databases one can formulate the following inference rules known as extended Armstrong’s axioms:
-
A1:
\({Y \subseteq X}\) \(\Rightarrow \) \({X \rightarrow _{\theta }Y}\) for all \({\theta }\)
-
A2:
\({X \rightarrow _{\theta }Y}\) \(\Rightarrow \) \({XZ \rightarrow _{\theta }YZ}\)
-
A3:
\({X \rightarrow _{\alpha }Y}\) \(\wedge \) \({Y \rightarrow _{\beta }Z}\) \(\Rightarrow \) \({X \rightarrow _{\gamma }Z}\), \({\gamma }\) = (min(\({\alpha _N,\beta _N}\)), min(\({\alpha _\varPi ,\beta _\varPi }\)))
where \({\theta =}\) \({\left( \theta _N,\theta _\varPi \right) }\), \({\alpha =}\) \({\left( \alpha _N,\alpha _\varPi \right) }\), \({\beta =}\) \({\left( \beta _N,\beta _\varPi \right) }\) and \({\gamma =}\) \({\left( \gamma _N,\gamma _\varPi \right) }\) are pairs of numbers belonging to the unit interval \({[0, 1 ]}\).
3 Properties of the Extended Gödel Implicator
In order to prove the correctness of the inference rules for fuzzy functional dependencies (7) we will first show certain properties of the implicator \({I_{G}}\).
Theorem 1
Let \(a =\) \({\left( a_N, a_\varPi \right) }\), \(a' =\) \({\left( a'_N, a'_\varPi \right) }\), \(b =\) \({\left( b_N, b_\varPi \right) }\), \(b' =\) \({\left( b'_N, b'_\varPi \right) }\), \(c =\) \({\left( c_N, c_\varPi \right) }\), \({\alpha =}\) \({\left( \alpha _N, \alpha _\varPi \right) }\), \({\beta =}\) \({\left( \beta _N, \beta _\varPi \right) }\), \({\gamma =}\) \({\left( \gamma _N, \gamma _\varPi \right) }\) and \({\theta =}\) \({\left( \theta _N, \theta _\varPi \right) }\) be pairs of numbers belonging to the unit interval \({[0, 1 ]}\). The implicator \(I_{G}\) satisfies the following conditions:
-
P1:
\({a_N \le b_N}\) \({\wedge }\) \({a_\varPi \le b_\varPi }\) \(\Rightarrow \) \(I_{G}\)(a, b) = (1, 1),
-
P2:
\(I_{G}\)(a,\(b\) \({ {)}_N}\) \({\ge \theta _N }\) \({\wedge }\) \(I_{G}\)(a,\(b\) \({ {)}_\varPi }\) \({\ge \theta _\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\) \({ {)}_N}\) \({\ge \theta _N }\) \({\wedge }\) \(I_{G}\)(\(a'\),\(b'\) \({ {)}_\varPi }\) \({\ge \theta _\varPi }\) for \(a'_N\) = min(\(a_N\),\(c_N\)), \(a'_\varPi \) = min(\(a_\varPi \),\(c_\varPi \)), \(b'_N\) = min(\(b_N\),\(c_N\)), \(b'_\varPi \) = min(\(b_\varPi \),\(c_\varPi \)),
-
P3:
\(I_{G}\)(a,\(b\) \({ {)}_N}\) \({\ge \alpha _N }\) \({\wedge }\) \(I_{G}\)(a,\(b\) \({ {)}_\varPi }\) \({\ge \alpha _\varPi }\) \({\wedge }\) \(I_{G}\)(b,\(c\) \({ {)}_N}\) \({\ge \beta _N }\) \({\wedge }\) \(I_{G}\)(b,\(c\) \({ {)}_\varPi }\) \({\ge \beta _\varPi }\) \(\Rightarrow \) \(I_{G}\)(a,\(c\) \({ {)}_N}\) \({\ge \gamma _N }\) \({\wedge }\) \(I_{G}\)(a,\(c\) \({ {)}_\varPi }\) \({\ge \gamma _\varPi }\) for \({\gamma _N}\) = min(\({\alpha _N}\),\({\beta _N}\)),\({\gamma _\varPi }\) = min(\({\alpha _\varPi }\),\({\beta _\varPi }\)).
Proof
P1: This condition directly follows from the definition of \({I_{G}}\).
P2: Let \(I_{G}\)(a,b)\({_N}\) \({\ge \theta _N}\) and \(I_{G}\)(a,b)\({_\varPi }\) \({\ge \theta _\varPi }\). If \(I_{G}\)(a,b) = (1,1) then \({a_N\le {b_N}}\) and \({a_\varPi \le {b_\varPi }}\). It follows that \({a'_N\le {b'_N}}\) and \({a'_\varPi \le b'_\varPi }\) and so \(I_{G}\)(\(a'\),\(b'\)) = (1,1). If \(I_{G}\)(a,b) \({\ne }\) (1,1) we must prove P2 for different cases of a, b and c. If \({c_N<a_N}\), \({c_\varPi <a_\varPi }\), \({c_N<b_N}\) and \({c_\varPi <b_\varPi }\) then \(a'\) = \(b'\) = c \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (1,1). If \({c_N\ge {a_N}}\), \({c_\varPi \ge {a_\varPi }}\), \({c_N\ge {b_N}}\) and \({c_\varPi \ge {b_\varPi }}\) then (\(a'\) = a and \(b'\) = b) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = \(I_{G}\)(a,b).
-
I.
Let \({a_N > b_N}\) and \({a_\varPi > b_\varPi }\). Thus \(I_{G}\)(a,b) = b.
-
1.
\({a_N > b_N \ge c_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)). \(a'_N\)=\(c_N\), \(a'_\varPi \)=\(c_\varPi \), \(b'_N\)= \(c_N\), \(b'_\varPi \)=\(b_\varPi \). If \({b_\varPi = c_\varPi }\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
-
2.
\({a_N > b_N \ge c_N}\) and \({c_\varPi \ge a_\varPi > b_\varPi }\) \({a'_N = c_N}\), \({a'_\varPi = a_\varPi }\), \({b'_N = c_N}\), \({b'_\varPi = b_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
-
3.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({a_\varPi > b_\varPi \ge c_\varPi }\). \(a'_N\)=\(c_N\), \(a'_\varPi \)=\(c_\varPi \), \(b'_N\)= \(b_N\), \(b'_\varPi \)=\(c_\varPi \). If \({c_N = b_N}\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1).
-
4.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)) \({a'_N=c_N}\), \({a'_\varPi = c_\varPi }\), \({b'_N=b_N}\), \({b'_\varPi = b_\varPi }\). If (\({c_N>b_N}\) and \({c_\varPi >b_\varPi }\)) then \(I_{G}\)(\(a'\),\(b'\)) = b. If (\({c_N>b_N}\) and \({c_\varPi =b_\varPi }\)) then \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1). If (\({c_N}\) = \({b_N}\) and \({c_\varPi >b_\varPi }\)) then \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)). If (\({c_N}\) = \({b_N}\) and \({c_\varPi =b_\varPi }\)) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1).
-
5.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({c_\varPi \ge a_\varPi > b_\varPi }\). \(a'_N\)=\(c_N\), \(a'_\varPi \)=\(a_\varPi \), \(b'_N\)= \(b_N\), \(b'_\varPi \)=\(b_\varPi \). If \({c_N > b_N}\) then \(I_{G}\)(\(a'\),\(b'\)) = b, otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
-
6.
\({c_N \ge a_N > b_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\) \({a'_N = a_N}\), \({a'_\varPi = c_\varPi }\), \({b'_N = b_N}\), \({b'_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1).
-
7.
\({c_N \ge a_N > b_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)). \(a'_N\)=\(a_N\), \(a'_\varPi \)=\(c_\varPi \), \(b'_N\)= \(b_N\), \(b'_\varPi \)=\(b_\varPi \). If \({c_\varPi > b_\varPi }\) then \(I_{G}\)(\(a'\),\(b'\)) = b, otherwise \(I_{G}\)(\(a'\), \(b'\)) = (\(b_N\),1).
-
II.
Let \({a_N > b_N}\) and \({a_\varPi \le b_\varPi }\) . Thus \(I_{G}\)(a,b) = (\(b_N\),1).
-
1.
\({a_N > b_N \ge c_N}\) and \({b_\varPi \ge c_\varPi \ge a_\varPi }\) \({a'_N = c_N}\), \({a'_\varPi = a_\varPi }\), \({b'_N = c_N}\), \({b'_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (1,1).
-
2.
\({a_N > b_N \ge c_N}\) and \({c_\varPi \ge b_\varPi \ge a_\varPi }\) \({a'_N = c_N}\), \({a'_\varPi = a_\varPi }\), \({b'_N = c_N}\), \({b'_\varPi = b_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (1,1).
-
3.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({b_\varPi \ge a_\varPi \ge c_\varPi }\). \(a'_N\)=\(c_N\), \(a'_\varPi \)=\(c_\varPi \), \(b'_N\)= \(b_N\), \(b'_\varPi \)=\(c_\varPi \). If \({c_N = b_N}\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1).
-
4.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({b_\varPi \ge c_\varPi \ge a_\varPi }\). \(a'_N\)=\(c_N\), \(a'_\varPi \)-\(a_\varPi \), \(b'_N\)= \(b_N\), \(b'_\varPi \)=\(c_\varPi \). If \({c_N = b_N}\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1).
-
5.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({c_\varPi \ge b_\varPi \ge a_\varPi }\). \(a'_N\)=\(c_N\), \(a'_\varPi \)=\(a_\varPi \), \(b'_N\)= \(b_N\), \(b'_\varPi \)=\(b_\varPi \). If \({c_N = b_N}\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1).
-
6.
\({c_N \ge a_N > b_N}\) and \({b_\varPi \ge a_\varPi \ge c_\varPi }\) \({a'_N = a_N}\), \({a'_\varPi = c_\varPi }\), \({b'_N = b_N}\), \({b'_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1).
-
7.
\({c_N \ge a_N > b_N}\) and \({b_\varPi \ge c_\varPi \ge a_\varPi }\) \({a'_N = a_N}\), \({a'_\varPi = a_\varPi }\), \({b'_N = b_N}\), \({b'_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (\(b_N\),1).
-
III.
Let \({a_N \le b_N}\) and \({a_\varPi > b_\varPi }\) . Thus \(I_{G}\)(a,b) = (\(b_\varPi \),\(b_\varPi \)).
-
1.
\({b_N \ge a_N \ge c_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)). \(a'_N\)=\(c_N\), \(a'_\varPi \)=\(c_\varPi \), \(b'_N\)= \(c_N\), \(b'_\varPi \)=\(b_\varPi \). If \({c_\varPi = b_\varPi }\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
-
2.
\({b_N \ge a_N \ge c_N}\) and \({c_\varPi \ge a_\varPi > b_\varPi }\) \({a'_N = c_N}\), \({a'_\varPi = a_\varPi }\), \({b'_N = c_N}\), \({b'_\varPi = b_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
-
3.
\({b_N \ge c_N \ge a_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\) \({a'_N = a_N}\), \({a'_\varPi = c_\varPi }\), \({b'_N = c_N}\), \({b'_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (1,1).
-
4.
\({b_N \ge c_N \ge a_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)). \(a'_N\)=\(a_N\), \(a'_\varPi \)=\(c_\varPi \), \(b'_N\)= \(c_N\), \(b'_\varPi \)=\(b_\varPi \). If \({c_\varPi = b_\varPi }\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
-
5.
\({b_N \ge c_N \ge a_N}\) and \({c_\varPi \ge a_\varPi > b_\varPi }\) \({a'_N = a_N}\), \({a'_\varPi = a_\varPi }\), \({b'_N = c_N}\), \({b'_\varPi = b_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
-
6.
\({c_N \ge b_N \ge a_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\) \({a'_N = a_N}\), \({a'_\varPi = c_\varPi }\), \({b'_N = b_N}\), \({b'_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(\(a'\),\(b'\)) = (1,1).
-
7.
\({c_N \ge b_N \ge a_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)). \(a'_N\)=\(a_N\), \(a'_\varPi \)=\(c_\varPi \), \(b'_N\)= \(b_N\), \(b'_\varPi \)=\(b_\varPi \). If \({c_\varPi = b_\varPi }\) then \(I_{G}\)(\(a'\),\(b'\)) = (1,1), otherwise \(I_{G}\)(\(a'\),\(b'\)) = (\(b_\varPi \),\(b_\varPi \)).
P3: Let \({\theta }\) = (min(\(I_{G}(a,b)_N\),\(I_{G}(b,c)_N)\), min(\(I_{G}(a,b)_\varPi \),\(I_{G}(b\),\(c\) \()_\varPi )\)).
If \({a_N \le c_N}\) and \({a_\varPi \le c_\varPi }\) then \(I_{G}\)(a,c) = (1,1). If \({a_N \le b_N}\) and \({a_\varPi \le b_\varPi }\) then \(I_{G}\)(a,b) = (1,1) \(\Rightarrow \) \({\theta }\) = \(I_{G}\)(b,c). Since the components of \(I_{G}\) are decreasing in the first argument [9], we obtain \(I_{G}\)(a,c)\(_N\) \({\ge {\theta _N}}\) and \(I_{G}\)(a,c)\(_\varPi \) \({\ge {\theta _\varPi }}\). If \({b_N \le c_N}\) and \({b_\varPi \le c_\varPi }\) then \(I_{G}\)(b,c) = (1,1) \(\Rightarrow \) \({\theta }\) = \(I_{G}\)(a,b). Since the components of \(I_{G}\) are increasing in the second argument [9], we obtain \(I_{G}\)(a,c)\(_N\) \({\ge \theta _N}\) and \(I_{G}\)(a,c)\(_\varPi \) \({\ge \theta _\varPi }\). Otherwise, we must prove P3 for different cases of a, b and c.
-
I.
Let \({a_N > b_N}\) and \({a_\varPi > b_\varPi }\). Thus \(I_{G}\)(a,b) = b.
-
1.
\({a_N > b_N \ge c_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\). \(I_{G}\)(a,c) = c. If (\({b_N > c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\)(b,c) = c. If (\({b_N > c_N}\) and \({b_\varPi = c_\varPi }\)) then \(I_{G}\)(b,c) = (\(c_N\),1). If (\({b_N = c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\)(b,c) = (\(c_\varPi \),\(c_\varPi \)). If (\({b_N}\) = \({c_N}\) and \({b_\varPi = c_\varPi }\)) then \(I_{G}\)(b,c) = (1,1). Thus in all cases \({\theta }\) = c \(\Rightarrow \) \(I_{G}\)(a,c) = \({\theta }\).
-
2.
\({a_N > b_N \ge c_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)). \(I_{G}\)(a,c)\(_N\) = \(c_N\) and \(I_{G}\)(a,c)\(_\varPi \) \({\ge }\) \({c_\varPi }\). \(I_{G}\)(b,c)\(_N\) \({\ge }\) \({c_N}\) and \(I_{G}\) \({(b,c)_\varPi }\) = 1. Thus \({\theta }\) = (\(c_N\),\(b_\varPi \)) \(\Rightarrow \) (\(I_{G}\)(a,c)\(_N\) = \({\theta _N}\) and \(I_{G}\)(a,c)\(_\varPi \) \({\ge }\) \({\theta _\varPi }\)).
-
3.
\({a_N > b_N \ge c_N}\) and \({c_\varPi }\ge a_\varPi >b_\varPi \). \(I_{G}\)(a,c)=(\(c_N\),1). \(I_{G}\)(b,c)\(_N\) \({\ge }\) \({c_N}\). \(I_{G}\) \({(b,c)_\varPi }\)=1. Thus \({\theta }\)=(\(c_N\),\(b_\varPi \)) \(\Rightarrow \) (\(I_{G}\)(a,c)\(_N\)=\({\theta _N}\) and \(I_{G}\)(a,c)\(_\varPi \) \({>}\) \({\theta _\varPi }\)).
-
4.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({a_\varPi > b_\varPi \ge c_\varPi }\). \(I_{G}\)(a,c)\(_N\) \({\ge } \ c_N\). \(I_{G}\)(a,c)\(_\varPi \) = \(c_\varPi \). If \({b_\varPi > c_\varPi }\) then \(I_{G}\)(b,c) = (\(c_\varPi \),\(c_\varPi \)). If \({b_\varPi = c_\varPi }\) then \(I_{G}\)(b,c) = (1,1). Thus \({\theta }\) = (\(b_N\),\(c_\varPi \)) \(\Rightarrow \) (\(I_{G}\)(a,c)\(_N\) \({\ge }\) \({\theta _N}\) and \(I_{G}\)(a,c)\(_\varPi \) = \({\theta _\varPi }\)).
-
5.
\({c_N \ge a_N > b_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\). \(I_{G}\)(a,c) = (\(c_\varPi \),\(c_\varPi \)). If \({b_\varPi > c_\varPi }\) then \(I_{G}\)(b,c) = (\(c_\varPi \),\(c_\varPi \)) and if \({b_\varPi = c_\varPi }\) then \(I_{G}\)(b,c) = (1,1). Thus \({\theta }\) = (\(b_N\),\(c_\varPi \)) \(\Rightarrow \) (\(I_{G}\)(a,c)\(_N\) \({>}\) \({\theta _N}\) and \(I_{G}\)(a,c)\(_\varPi \) = \({\theta _\varPi }\)).
-
II.
Let \({a_N > b_N}\) and \({a_\varPi \le b_\varPi }\) . Thus \(I_{G}\)(a,b) = (\(b_N\),1).
-
1.
\({a_N > b_N \ge c_N}\) and \({b_\varPi \ge a_\varPi \ge c_\varPi }\). \(I_{G}\) \({(a,c)}\) \(_N\) = \(c_N\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({\ge }\) \(c_\varPi \). If (\({b_N > c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = c \(\Rightarrow \) \({\theta }\) = c \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) = \(\theta _N\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({\ge \theta _\varPi }\)). If (\({b_N > c_N}\) and \({b_\varPi = c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = (\(c_N\),1) \(\Rightarrow \) \({\theta }\) = (\(c_N\),1). If \({b_\varPi = c_\varPi }\) then \({a_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) = (\(c_N\),1) = \({\theta }\). If (\({b_N = c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \({\theta }\) = c \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) = \(\theta _N\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({\ge \theta _\varPi }\)). If \({b = c}\) then (\(I_{G}\) \({(b,c)}\) = (1,1) and \(I_{G}\) \({(a,c)}\) = (\(c_N\),1)) \(\Rightarrow \) \({\theta }\) = (\(c_N\),1) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) \({= \theta }\).
-
2.
\({a_N > b_N \ge c_N}\) and \({b_\varPi \ge c_\varPi \ge a_\varPi }\). \(I_{G}\) \({(a,c)}\) = (\(c_N\),1). \(I_{G}\) \({(b,c)_N}\) \({\ge }\) \(c_N\) \(\Rightarrow \) \({\theta _N}\) = \(c_N\) \(\Rightarrow \) \(I_{G}\) \({(a,c)_N}\) \({= \theta _N }\).
-
3.
\({a_N > b_N \ge c_N}\) and \({c_\varPi \ge b_\varPi \ge a_\varPi }\). \(I_{G}\) \({(a,c)}\) = (\(c_N\),1). If \({b_N > c_N}\) then \(I_{G}\) \({(b,c)}\) = (\(c_N\),1) \(\Rightarrow \) \({\theta }\) = (\(c_N\),1) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) \({= \theta }\). If \({b_N = c_N}\) then \(I_{G}\) \({(b,c)}\) = (1,1) \(\Rightarrow \) \({\theta }\) = (\(c_N\),1) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) \({= \theta }\).
-
4.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({b_\varPi \ge a_\varPi \ge c_\varPi }\) \(I_{G}\)(a,c)\(_N\) \({\ge }\) \(c_N\) and \(I_{G}\)(a,c)\(_\varPi \) \({\ge }\) \(c_\varPi \). \(I_{G}\)(b,c)\(_N\) = 1 \(\Rightarrow \) \({\theta _N}\) = \(b_N\) \(\Rightarrow \) \(I_{G}\)(a,c)\(_N\) \({\ge }\) \(\theta _N\). If \({b_\varPi > c_\varPi }\) then \(I_{G}\)(b,c)\(_\varPi \) = \(c_\varPi \) \(\Rightarrow \) \({\theta _\varPi }\) = \(c_\varPi \) \(\Rightarrow \) \(I_{G}\)(a,c)\(_\varPi \) \({\ge }\) \(\theta _\varPi \). If \({b_\varPi = c_\varPi }\) then \(I_{G}\)(b,c)\(_\varPi \) = 1 \(\Rightarrow \) \({\theta _\varPi }\) = 1. If \({b_\varPi = c_\varPi }\) then \({a_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(a,c)\(_\varPi \) = 1 = \({\theta _\varPi }\) .
-
5.
(\({a_N > c_N \ge b_N}\) or \({a_N \ge c_N > b_N}\)) and \({b_\varPi \ge c_\varPi \ge a_\varPi }\) \(I_{G}\)(a,c)\(_N\) \({\ge }\) \(c_N\) and \(I_{G}\)(a,c)\(_\varPi \) = 1. \(I_{G}\)(b,c)\(_N\) = 1 \(\Rightarrow \) \({\theta _N}\) = \(b_N\) \(\Rightarrow \) \(I_{G}\)(a,c)\(_N\) \({\ge }\) \(\theta _N\) .
-
6.
\({c_N \ge a_N > b_N}\) and \({b_\varPi \ge a_\varPi \ge c_\varPi }\). I(a,c)\(_N\) \({\ge }\) \(c_\varPi \) and I(a,c)\(_\varPi \) \({\ge }\) \(c_\varPi \). I(b,c)\(_N\) \({\ge }\) \(c_\varPi \) \(\Rightarrow \) \({\theta _N}\) = \(b_N\) \(\Rightarrow \) I(a,c)\(_N\) \({\ge }\) \(\theta _N\). If \({b_\varPi > c_\varPi }\) then \(I_{G}\)(b,c)\(_\varPi \) = \(c_\varPi \) \(\Rightarrow \) \({\theta _\varPi }\) = \(c_\varPi \) \(\Rightarrow \) \(I_{G}\)(a,c)\(_\varPi \) \({\ge }\) \(\theta _\varPi \). If \({b_\varPi = c_\varPi }\) then \(I_{G}\)(b,c)\(_\varPi \) = 1 \(\Rightarrow \) \({\theta _\varPi }\) = 1. If \({b_\varPi = c_\varPi }\) then \({a_\varPi = c_\varPi }\) \(\Rightarrow \) \(I_{G}\)(a,c)\(_\varPi \) = 1 = \({\theta _\varPi }\) .
-
III.
Let \({a_N \le b_N}\) and \({a_\varPi > b_\varPi }\) . Thus \(I_{G}\)(a,b) = (\(b_\varPi \),\(b_\varPi \)).
-
1.
\({b_N \ge a_N \ge c_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\) If \({a_N > c_N}\) then \(I_{G}\) \({(a,c)}\) = c, otherwise \(I_{G}\) \({(a,c)}\) = (\(c_\varPi \),\(c_\varPi \)). If (\({b_N > c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = c \(\Rightarrow \) \({\theta }\) = c \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) \({= \theta _N }\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({= \theta _\varPi }\)). If (\({b_N > c_N}\) and \({b_\varPi = c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = (\(c_N\),1) \(\Rightarrow \) \({\theta }\) = c \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) \({\ge \theta _N }\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({= \theta _\varPi }\)). If (\({b_N = c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \({\theta }\) = (\(c_\varPi \),\(c_\varPi \)). If \({b_N = c_N}\) then \({a_N = c_N}\) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) = (\(c_\varPi \),\(c_\varPi \)) = \({\theta }\). If \({b = c}\) then \(I_{G}\)(b,c) = (1,1) \(\Rightarrow \) \({\theta }\) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \(I_{G}\)(a,c) = \({\theta }\).
-
2.
\({b_N \ge a_N \ge c_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)) \(I_{G}\) \({(a,c)}\) \(_N\) \({\ge c_N }\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({\ge c_\varPi }\). \(I_{G}\) \({(b, c)}\) \(_\varPi \) = 1. If \({b_N > c_N}\) then \(I_{G}\) \({(b, c)}\) = (\(c_N\),1) \(\Rightarrow \) \({\theta }\) = (\(c_N\),\(b_\varPi \)) \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) \({\ge \theta _N }\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({\ge \theta _\varPi }\)). If \(b_N\)=\(c_N\) then \(I_{G}\) \({(b,c)}\) = (1,1) \(\Rightarrow \) \({\theta }\) = (\(b_\varPi \),\(b_\varPi \)). If \(b_N\)=\(c_N\) then \(a_N\)=\(c_N\) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) \(_N\) \({\ge }\) \(c_\varPi \) \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) \({\ge }\) \({\theta _N }\) and \(I_{G}\) \({(a, c)}\) \(_\varPi \) \({\ge }\) \({\theta _\varPi }\)).
-
3.
\({b_N \ge a_N \ge c_N}\) and \({c_\varPi \ge a_\varPi > b_\varPi }\). \(I_{G}\) \({(a,c)}\) \(_N\) \({\ge }\) \(c_N\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) = 1. \(I_{G}\) \({(b,c)}\) \(_\varPi \) = 1. If \({b_N > c_N}\) then \(I_{G}\) \({(b,c)}\) = (\(c_N\),1) \(\Rightarrow \) \({\theta }\) = (\(c_N\),\(b_\varPi \)) \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) \({\ge \theta _N}\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({> \theta _\varPi }\)). If \(b_N\)=\(c_N\) then \(I_{G}\) \({(b,c)}\) = (1,1) \(\Rightarrow \) \({\theta }\) = (\(b_\varPi \),\(b_\varPi \)). If \(b_N\)=\(c_N\) then \(a_N\)=\(c_N\) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) \(_N\) = 1 \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) \({> }\) \({\theta _N }\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) \({> }\) \({\theta _\varPi }\)).
-
4.
\({b_N \ge c_N \ge a_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\). \(I_{G}\) \({(a,c)}\) = (\(c_\varPi \),\(c_\varPi \)). If (\({b_N > c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = c \(\Rightarrow \) \({\theta }\) = c \(\Rightarrow \) (\(I_{G}\) \({(a, c)}\) \(_N\) \({\ge \theta _N}\) and \(I_{G}\) \({(a, c)}\) \(_\varPi \) = \({\theta _\varPi }\)). If (\({b_N > c_N}\) and \({b_\varPi = c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = (\(c_N\),1) \(\Rightarrow \) \({\theta }\) = c \(\Rightarrow \) (\(I_{G}\) \({(a,c)}\) \(_N\) \({\ge \theta _N}\) and \(I_{G}\) \({(a,c)}\) \(_\varPi \) = \({\theta _\varPi }\)). If (\({b_N = c_N}\) and \({b_\varPi > c_\varPi }\)) then \(I_{G}\) \({(b,c)}\) = (\(c_\varPi \), \(c_\varPi \)) \(\Rightarrow \) \({\theta }\) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) = \({\theta }\). If \({b = c}\) then \(I_{G}\) \({(b,c)}\) = (1,1) \(\Rightarrow \) \({\theta }\) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \(I_{G}\) \({(a,c)}\) = \({\theta }\).
-
5.
\({b_N \ge c_N \ge a_N}\) and (\({a_\varPi > c_\varPi \ge b_\varPi }\) or \({a_\varPi \ge c_\varPi > b_\varPi }\)) If \({a_\varPi > c_\varPi }\) then \(I_{G}\)(a,c)=(\(c_\varPi \),\(c_\varPi \)). If \(a_\varPi \)=\(c_\varPi \) then \(I_{G}\)(a,c)=(1,1). If \({b_N > c_N}\) then \(I_{G}\)(b,c)=(\(c_N\),1) \(\Rightarrow \) \({\theta }\)=(\(c_N\),\(b_\varPi \)) \(\Rightarrow \) (\(I_{G}\)(a,c)\(_N\) \({\ge \theta _N}\) and \(I_{G}\)(a,c)\(_\varPi \) \({\ge \theta _\varPi }\)). If \(b_N\)=\(c_N\) then \(I_{G}\)(b,c)=(1,1) \(\Rightarrow \) \({\theta }\)=(\(b_\varPi \),\(b_\varPi \)) \(\Rightarrow \) (\(I_{G}\)(a,c)\(_N\) \({\ge \theta _N}\) and \(I_{G}\)(a,c)\(_\varPi \) \({\ge \theta _\varPi }\)).
-
6.
\({c_N \ge b_N \ge a_N}\) and \({a_\varPi > b_\varPi \ge c_\varPi }\). \(I_{G}\)(a,c) = (\(c_\varPi \),\(c_\varPi \)).
If \({b_\varPi > c_\varPi }\) then \(I_{G}\)(b,c) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \({\theta }\) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \(I_{G}\)(a, c) = \({\theta }\).
If \({b_\varPi = c_\varPi }\) then \(I_{G}\)(b,c) = (1,1) \(\Rightarrow \) \({\theta }\) = (\(c_\varPi \),\(c_\varPi \)) \(\Rightarrow \) \(I_{G}\)(a,c) = \({\theta }\). \(\Box \)
Moreover, the extended Gödel implicator has the following properties [9]:
P4: \({a_N \le a'_N}\) \({\wedge }\) \({a_\varPi \le a'_\varPi }\) \(\Rightarrow \) \({I_{G}(a,b)_N \ge I_{G}(a',b)_N}\) \({\wedge }\) \({I_{G}(a,b)_\varPi \ge I_{G}(a',b)_\varPi }\),
P5: \({b_N \ge b'_N}\) \({\wedge }\) \({b_\varPi \ge b'_\varPi }\) \(\Rightarrow \) \({I_{G}(a,b)_N \ge I_{G}(a,b')_N}\) \({\wedge }\) \({I_{G}(a,b)_\varPi \ge I_{G}(a,b')_\varPi }\),
P6: \({I_{G}(1,b)_N}\) = \(b_N\) and \({I_{G}(1,b)_\varPi }\) = \(b_\varPi \),
P7: \({I_{G}(a,b)_N \ge b_N}\) and \({I_{G}(a,b)_\varPi \ge b_\varPi }\),
P8: \({I_{G}(a,I_{G}(b,c))_N}\) = \({I_{G}(b,I_{G}(a,c))_N}\) and \({I_{G}(a,I_{G}(b,c))_\varPi }\) = \({I_{G}(b,I_{G}(a,c))_\varPi }\).
4 Soundness and Completeness of the Inference Rules
The set of extended Armstrong’s axioms can be used to derive new fuzzy functional dependencies implied by a given set of FFDs. Let F be a set of FFDs (7) with respect to the relation scheme R (U). Let us denote by \(F^+\) the set of all FFDs which can be derived from F by means of the extended Armstrong’s axioms:
Theorem 2
The extended Armstrong’s axioms are sound.
Proof
Let F be a set of FFDs for the relation scheme R(U). Let \(t_1\) and \(t_2\) be tuples of r, where r is relation of R(U). Let X, Y, Z \({\subseteq U}\).
Let a = \({=_c(t_1(X), t_2(X))}\), b = \({=_c(t_1(Y), t_2(Y))}\), c = \({=_c(t_1(Z), t_2(Z))}\).
A1: If Y \({\subseteq X}\) then by (4) \({a_N \le b_N}\) and \({a_\varPi \le b_\varPi }\). Since \(I_{G}\) satisfies P1, we get \(I_{G}(a,b)\) = (1, 1) and so
A2: Since \({X \rightarrow _{\theta } Y}\) holds, we have \(I_{G}(a,b)_N\) \({\ge \theta _N}\) and \(I_{G}(a,b)_{\varPi }\) \({\ge \theta _{\varPi }}\). Let \(a'\) = \({=_c(t_1(XZ), t_2(XZ))}\) and \(b'\) = \({=_c(t_1(YZ), t_2(YZ))}\). From (4) we get \(a'_N\) = min(\(a_N\),\(c_N\)), \(a'_{\varPi }\) = min(\(a_{\varPi }\),\(c_{\varPi }\)) and \(b'_N\) = min(\(b_N\),\(c_N\)), \(b'_{\varPi }\) = min(\(b_{\varPi }\),\(c_{\varPi }\)). Since \(I_{G}\) satisfies P2, we obtain \(I_{G}(a',b')_N\) \({\ge \theta _N}\) and \(I_{G}(a',b')_{\varPi }\) \({\ge \theta _{\varPi }}\) and so
Thus, if \({X \rightarrow _{\theta } Y \in F^+}\) then \({XZ \rightarrow _{\theta } YZ \in F^+}\).
A3: Since \({X \rightarrow _{\alpha } Y}\) and \({Y \rightarrow _{\beta } Z}\) hold, we have: \(I_{G}(a,b)_N\) \({\ge \alpha _N}\), \(I_{G}(a,b)_{\varPi }\) \({\ge \alpha _{\varPi }}\) and \(I_{G}(b,c)_N\) \({\ge \beta _N}\), \(I_{G}(b,c)_{\varPi }\) \({\ge \beta _{\varPi }}\). By P3 we obtain \(I_{G}(a,c)_N\) \({\ge \gamma _N}\) and \(I_{G}(a,c)_{\varPi }\) \({\ge \gamma _{\varPi }}\), where \({\gamma _N}\) = min(\({\alpha _N,\beta _N}\)) and \({\gamma _{\varPi }}\) = min(\({\alpha _{\varPi },\beta _{\varPi }}\)) and so
Thus, if \({X \rightarrow _{\alpha } Y \in F^+}\) and \({Y \rightarrow _{\beta } Z \in F^+}\) then \({X \rightarrow _{\gamma } Z \in F^+}\) for \({\gamma }\)=(min(\({\alpha _N,}\) \({\beta _N}\)), min(\({\alpha _\varPi ,\beta _\varPi }\))). \(\Box \)
The following rules result from Armstrong’s axioms:
D1:\({X \rightarrow _{\alpha }Y}\) \(\wedge \) \({X \rightarrow _{\beta }Z}\) \(\Rightarrow \) \({X \rightarrow _{\lambda }YZ}\) for \({\gamma }\) = (min(\({\alpha _N,\beta _N}\)), min(\({\alpha _\varPi ,\beta _\varPi }\)))
Proof
By A2 we have \({X \rightarrow _\alpha }\) \({Y}\) \({\Rightarrow X \rightarrow _\alpha }\) \({XY}\) and \({X \rightarrow _\beta }\) \({Z}\) \({\Rightarrow XY \rightarrow _\beta }\) \({ZY}\). Then by A3 we obtain \({X \rightarrow _\alpha }\) \({XY}\) \({\wedge }\) \({XY \rightarrow _\beta }\) \({YZ}\) \({\Rightarrow X \rightarrow _\gamma }\) \({YZ}\) for \(\gamma \) = (min(\({\alpha _N}\),\({\beta _N}\)), min(\({\alpha _\varPi }\),\({\beta _\varPi }\))). \(\Box \)
D2:\({X \rightarrow _{\alpha }Y}\) \(\wedge \) \({WY \rightarrow _{\beta }Z}\) \(\Rightarrow \) \({XW \rightarrow _{\lambda }Z}\) for \({\gamma }\) = (min(\({\alpha _N,\beta _N}\)), min(\({\alpha _\varPi ,\beta _\varPi }\)))
Proof
By A2 we have \({X \rightarrow _\alpha }\) \(Y\) \({\Rightarrow XW \rightarrow _\alpha }\) \({YW}\). Then by A3 we obtain \({XW \rightarrow _\alpha }\) YW \({\wedge }\) \({WY \rightarrow _\beta }\) \(Z\) \({\Rightarrow XW \rightarrow _\gamma }\) \({Z}\) for \(\gamma \) = (min(\({\alpha _N}\),\({\beta _N}\)), min(\({\alpha _\varPi }\),\({\beta _\varPi }\))). \(\Box \)
D3: \({X \rightarrow _{\alpha }Y}\) \(\wedge \) \({Z\subseteq Y}\) \(\Rightarrow \) \({X \rightarrow _{\alpha } Z}\)
Proof
By A1 we have \({Z\subseteq Y}\) \(\Rightarrow \) \({Y \rightarrow _{\alpha } Z}\) for every \(\alpha \) = (\({\alpha _N, \alpha _\varPi }\)), \({\alpha _N, \alpha _\varPi \in }\) [0,1]. Then by A3 we obtain \({X \rightarrow _\alpha Y \wedge Y \rightarrow _\alpha Z \Rightarrow X \rightarrow _\alpha Z}\). \(\Box \)
D4: \({X \rightarrow _{\alpha }Y}\) \(\Rightarrow \) \({X \rightarrow _{\beta } Y}\) for \({\beta _N \le \alpha _N}\) and \({\beta _\varPi \le \alpha _\varPi }\)
Proof
By A1 we have \({Y \rightarrow _{\theta }}\) \({Y}\) for every \(\theta \)=(\({\theta _N,\theta _\varPi }\)), \({\theta _N,\theta _\varPi \in }\) [0,1]. Then by A3 we obtain \({X \rightarrow _\alpha }\) \({Y}\) \({\wedge }\) \({Y \rightarrow _\theta }\) \(Y\) \({\Rightarrow }\) \({X \rightarrow _\beta }\) \({Y}\) for \(\beta \)=(min(\({\alpha _N}\),\({\theta _N}\)),min(\({\alpha _\varPi }\),\({\theta _\varPi }\))). \(\Box \)
The closure of a set of attributes \({X \subseteq U}\) with respect to the set F of FFDs, denoted by \({X^{+}_{F}}\), is defined as a set of triples (\({A, \theta _N, \theta _\varPi }\)), where \({A \in U}\), \({\theta _N}\) = \({\text {sup} \left\{ \alpha : X \rightarrow _{(\alpha , \beta )} A \in F^+\right\} }\) and \({\theta _\varPi }\) = \({\text {sup} \left\{ \beta : X \rightarrow _{(\alpha , \beta )} A \in F^+\right\} }\). The set of attributes occurring in \({X^{+}_{F}}\) will be denoted by DOM(\({X^{+}_{F}}\)):
Lemma 1
Let F be a set of FFDs defined over a relation scheme R(U). Let \({X,Y \subseteq U}\) and \({Y = \left\{ A_1, A_2,...,A_k\right\} ,\ A_i \in U}\). Then \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) is deduced by means of the extended Armstrong’s axioms if and only if \({\forall i (A_i,\theta _{i,N}, \theta _{i,\varPi })}\) \({ \in {X^{+}_{F}}}\), where \({\theta _{i,N} \ge \theta _N}\) and \({\theta _{i,\varPi } \ge \theta _\varPi }\).
Proof
Necessity: If \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) is deduced by means of the extended Armstrong’s axioms then by D3 we obtain \({X \rightarrow _{(\theta _N,\theta _\varPi )} A_i}\) for i = 1, 2,...,k. Thus there exist \({\theta _{i,N} \ge \theta _N}\) and \({\theta _{i,\varPi } \ge \theta _\varPi }\) such that \({(A_i,\theta _{i,N}, \theta _{i,\varPi })}\) \({ \in {X^{+}_{F}}}\) (definition of \({X^{+}_{F}}\)).
Sufficiency: If \({(A_i,\theta _{i,N}, \theta _{i,\varPi })}\) \({ \in {X^{+}_{F}}}\) where \({\theta _{i,N} \ge \theta _N}\) and \({\theta _{i,\varPi } \ge \theta _\varPi }\) for i = 1, 2,...,k, then \({X \rightarrow _{(\theta _{i,N},\theta _{i\varPi })} A_i \in F^+}\). By D1 we obtain \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\), where \({\theta _N}\) = \({\text {min}_i(\theta _{i,N})}\) and \({\theta _\varPi }\) = \({\text {min}_i(\theta _{i,\varPi })}\). \(\Box \)
Theorem 3
The extended Armstrong’s axioms are complete.
Proof
In order to prove the theorem we will show that if \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) \({\notin F^+}\), then it is possible to construct a relation where all FFDs in F are satisfied and \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) does not hold, which means that \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) cannot be derived from F. Let F be a set of FFDs for relation scheme R(U). Suppose that \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) \({\notin F^+}\). Let X = \({\left\{ X_1, X_2,...,X_k\right\} }\) and DOM(\({X^{+}_{F}}\)) = \({\{X_1, X_2,...,}\) \({X_k,A_1,A_2,...,}\) \({A_l\}}\). Let us construct a relation r of the scheme R(U), U = \({\{\text {DOM( }X^{+}_{F}),B_1,B_2,...,B_m\}}\), consisting of two tuples \(t_1\) and \(t_2\) such that:
where \(c_i\) and \(d_i\) are possibility distributions with degrees of closeness \({\phi _{i,N}}\) and \({\phi _{i,\varPi }}\). Let \({\phi _{0,N} = \text {min}_i \phi _{i,N}}\) and \({\phi _{0,\varPi } = \text {min}_i \phi _{i,\varPi }}\).
We will show that each FFD \(V\) \({\rightarrow _{(\gamma _N,\gamma _\varPi )}}\) \(W\) \({\in F}\) holds in r. One should consider only the case when \({V \subseteq }\) \({\text {DOM(}X^{+}_{F})}\) and \({W \subseteq \text {DOM(}X^{+}_{F})}\) \(-\) \(X\). (If V \({\nsubseteq \text {DOM(}X^{+}_{F})}\) then \(t_1\)(V) \({\ne }\) \(t_2\)(V) and so \(V\) \({\rightarrow _{(1,1)}}\) \(W\). Similarly, if \({W \subseteq X}\) then \(t_1\)(W) = \(t_2\)(W) and so \(V\) \({\rightarrow _{(1,1)}}\) \(W\). Suppose that \({V \subseteq \text {DOM(}X^{+}_{F})}\) and \({W \subseteq U}\) − \({\text {DOM(}X^{+}_{F})}\). Degrees of closeness of \(t_1\)(W) and \(t_2\)(W) are equal to 0. By Lemma 1 we obtain \(X\) \({\rightarrow _{(\phi _{0,N},\phi _{0,\varPi })}}\) \(V\) \({\in F}\). Since \(V\) \({\rightarrow _{(\gamma _N,\gamma _\varPi )}}\) \(W\) \({\in F}\) we have \(X\) \({\rightarrow _{(\psi _N,\psi _\varPi )}}\) W \({\in F}\), where \({\psi _N = \text {min}(\phi _{0,N}, \gamma _N)}\) and \({\psi _\varPi =}\) \({\text {min}(\phi _{0,\varPi }, \gamma _\varPi )}\). Thus W \({\subseteq }\) \({\text {DOM(}X^{+}_{F})}\): a contradiction.)
Suppose that there exists \(V\) \({\rightarrow _{(\gamma _N,\gamma _\varPi )}}\) \(W\) \({\in F}\), which does not hold in r. Let \({V \subseteq }\) \({\text {DOM(}X^{+}_{F})}\), \(V\) \(-\) \(X\) = \({\{A_{p_1},A_{p_2},...,A_{p_r}\}}\), \({W \subseteq \text {DOM(}X^{+}_{F})}\) − X and \({W =}\) \({\{A_{s_1}, A_{s_2},...,A_{s_t}\}}\), where \({p_1,p_2, ...,p_r,s_1,s_2, ...,s_t \in \{1,2,...,l\}}\). Let \({\phi _{V,N}}\) = \({\text {min}_i}\) \({\phi _{p_i,N}}\), \({\phi _{V,\varPi } =}\) \({\text {min}_i\phi _{p_i,\varPi }}\) and \({\phi _{W,N} =}\) \({\text {min}_i\phi _{s_i,N}}\), \({\phi _{W,\varPi } =}\) \({\text {min}_i\phi _{s_i,\varPi }}\). Thus, \({=_c(t_1(V),t_2(V))}\) = (\({\phi _{V,N}, \phi _{V,\varPi }}\)) and \({=_c(t_1(W),t_2(W))}\) = (\({\phi _{W,N}, \phi _{W,\varPi }}\)). If \(V\) \({\rightarrow _{(\gamma _N,\gamma _\varPi )}}\) \(W\) does not hold in r, then \({\phi _{W,N} <}\) min(\({\gamma _N, \phi _{V,N}}\)) or \({\phi _{W,\varPi } <}\) min(\({\gamma _\varPi ,}\) \({\phi _{V,\varPi }}\)). Thus, \({\phi _{p_i,N} >}\) \({\phi _{W,N}}\) or \({\phi _{p_i,\varPi } > \phi _{W,\varPi }}\) for every \(p_i\). By Lemma 1 we obtain \(X\) \({\rightarrow _{(\phi _{V,N},\phi _{V,\varPi })}}\) \(V\) \({\in }\) \({F^{+}}\). Since \(V\) \({\rightarrow _{(\gamma _N,\gamma _\varPi )}}\) \(W\) \({\in F}\) we have \(X\) \({\rightarrow }\) \({_{(\psi _N,\psi _\varPi )}}\) \(W\) \({\in }\) \({F^{+}}\), where \({\psi _N = \text {min}(\phi _{V,N},\gamma _N)}\) and \({\psi _\varPi =}\) \({\text {min}(\phi _{V,\varPi },\gamma _\varPi )}\). Since \({W \subseteq \text {DOM(}X^{+}_{F})}\) − X then \({(A_{s_i},}\) \({\phi _{s_i,N},\phi _{s_i,\varPi })}\) \({\in X^{+}_{F}}\) for every \(s_i\). According to the definition of \({X^{+}_{F}}\), \({\phi _{s_i,N}}\) and \({\phi _{s_i,\varPi }}\) are upper bounds. Thus, conditions \({\phi _{p_i,N} > \phi _{W,N}}\) or \({\phi _{p_i,\varPi } > \phi _{W,\varPi }}\) for every \(p_i\) are not satisfied. We obtained a contradiction. Thus, \(V\) \({\rightarrow _{(\gamma _N,\gamma _\varPi )}}\) \(W\) holds in r.
Now we prove that \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y \notin F^{+}}\) does not hold in r. We should consider only the case when \({Y \subseteq }\) \({\text {DOM(}X^{+}_{F})}\). (If Y \({\nsubseteq \text {DOM(}X^{+}_{F})}\) then \({=_c(t_1(Y),}\) \({t_2(Y))_N =}\) \({=_c(t_1(Y),t_2(Y))_\varPi }\) = 0 and so \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) does not hold). Let \({Y \subseteq }\) \({\left\{ A_1, A_2,...,A_l\right\} }\). Let \({\phi _{Y,N} =}\) \({\text {min}_i\phi _{i,N}}\) and \({\phi _{Y,\varPi } =}\) \({\text {min}_i\phi _{i,\varPi }}\). By Lemma 1, it follows that \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y}\) holds in r for \({ \phi _{Y,N} \ge \theta _N}\) and \({\phi _{Y,\varPi } \ge }\) \({\theta _\varPi }\) and \({X \rightarrow _{(\theta _N,\theta _\varPi )} Y \in F^{+}}\) which is a contradiction to the assumption. \(\Box \)
Example 1
Let us consider relation scheme R(A,B,C,D) with the following set of FFDs: F = \({\{}\) \({{ABC}\rightarrow _{(0,0.8)}}\) \(D\), \({{BCD}\rightarrow _{(0.5,1)}}\) \(A\), \({{ACD}\rightarrow _{(1,1)}}\) \(B\), \({{ABD}\rightarrow _{(0.8,1)}}\) C, \({A\rightarrow _{(0,0.7)}}\) \(C\), \({A\rightarrow _{(1,1)}}\) \(D\), \({B\rightarrow _{(0,0.6)}}\) \({AC}\) \({\}}\). By D2 we obtain: \(AB\) \({\rightarrow _{(0,0.7)}}\) \(D\), \(AD\) \({\rightarrow _{(0,0.7)}}\) \(B\), \(AC\) \({\rightarrow _{(1,1)}}\) \(B\), \(AB\) \({\rightarrow _{(0.8,1)}}\) \(C\) and \(B\) \({\rightarrow _{(0,0.6)}}\) \(D\). Since \(A\) \({\rightarrow _{(1,1)}}\) \(D\) \({\Rightarrow }\) \(AB\) \({\rightarrow _{(1,1)}}\) \(D\) (by A2 and D3) and \(AB\) \({\rightarrow _{(1,1)}}\) \(D\) \({\Rightarrow }\) \(AB\) \({\rightarrow _{(0,0.7)}}\) \(D\) (by D4) we conclude that \(AB\) \({\rightarrow }\) \({_{(0,0.7)}}\) \(D\) is redundant. Similarly \({{ABC}\rightarrow _{(0,0.8)}}\) \(D\), \({{ACD}\rightarrow _{(1,1)}}\) \(B\), \({{ABD}\rightarrow _{(0.8,1)}C}\) are also redundant. By D3 we have \(B\) \({\rightarrow _{(0,0.6)}}\) \(A\) and \(B\) \({\rightarrow _{(0,0.6)}}\) \(C\). Thus \(F_{m}\) = \({\{{BCD}\rightarrow _{(0.5,1)}A, {AD}\rightarrow _{(0,0.7)}B, {AC}\rightarrow _{(1,1)}B, {AB}\rightarrow _{(0.8,1)}C, A\rightarrow }\) \({_{(0,0.7)}C, A\rightarrow _{(1,1)}D, B\rightarrow _{(0,0.6)}A, B\rightarrow _{(0,0.6)}C, B\rightarrow _{(0,0.6)}D \}}\) is a minimal set of FFDs for the scheme R.
5 Conclusions
The paper deals with data dependencies in possibilistic databases. We applied and extended the definition of fuzzy functional dependency which was formulated by Chen [2]. Its level is evaluated by measures of possibility and necessity. For FFDs we have established inference rules which are an extension of Armstrong’s axioms for conventional databases and showed that they form a sound and complete system. Similar results may be expected for other approaches. The obtained results could be generalized when using t-norms. Another line of future work is an extension of the presented considerations by taking into account unknown and inapplicable (missing) values.
References
Bosc, P., Pivert, O.: Querying possibilistic databases: three interpretations. In: Yager, R.R., Abbasov, A.M., Reformat, M., Shahbazova, S.N. (eds.) Soft Computing: State of the Art Theory and Novel Applications. STUDFUZZ, vol. 291, pp. 161–176. Springer, Heidelberg (2013)
Chen, G.: Fuzzy Logic in Data Modeling - Semantics, Constraints and Database Design. Kluwer Academic Publishers, Boston (1998)
Dubois, D., Lorini, E., Prade, H.: A possibility theory viewpoint. In: Andreasen, T., et al. (eds.) FQAS 2015. Advances in Intelligent Systems and Computing, vol. 400, pp. 3–13. Springer International Publishing, Switzerland (2016)
Galindo, J., Urrutia, A., Piattini, M.: Fuzzy Databases: Modeling, Design and Implementation. Idea Group Publishing, London (2005)
Link, S., Prade, H.: Relational database schema design for uncertain data. CDMTCS-469 Research report, Centre for Disctere Mathematics and Theoretical Computer Science (2014)
Link, S., Prade, H.: Possibilistic functional dependencies and their relationship to possibility theory. IEEE Trans. Fuzzy Syst. (2015). doi:10.1109/TFUZZ.2015.2466074
Małysiak-Mrozek, B., Mrozek, D., Kozielski, S.: Processing of crisp and fuzzy measures in the fuzzy data warehouse for global natural resources. In: García-Pedrajas, N., Herrera, F., Fyfe, C., Benítez, J.M., Ali, M. (eds.) IEA/AIE 2010, Part III. LNCS, vol. 6098, pp. 616–625. Springer, Heidelberg (2010)
Miłek, M., Małysiak-Mrozek, B., Mrozek, D.: A fuzzy data warehouse: theoretical foundations and practical aspects of usage. Studia Informatica 31(2A–89), 489–504 (2010)
Nakata, M.: On inference rules of dependencies in fuzzy relational data models: functional dependencies. In: Pons, O., Vila, M., Kacprzyk, J. (eds.) Knowledge Management in Fuzzy Databases. Studies in Fuzziness and Soft Computing, vol. 39, pp. 36–66. Physica-Verlag, Heidelberg (2000)
Tyagi, B., Sharfuddin, A., Dutta, R., Devendra, K.: A complete axiomatization of fuzzy functional dependencies using fuzzy function. Fuzzy Sets Syst. 151(2), 363–379 (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Myszkorowski, K. (2016). Inference Rules for Fuzzy Functional Dependencies in Possibilistic Databases. In: Kozielski, S., Mrozek, D., Kasprowski, P., Małysiak-Mrozek, B., Kostrzewa, D. (eds) Beyond Databases, Architectures and Structures. Advanced Technologies for Data Mining and Knowledge Discovery. BDAS BDAS 2015 2016. Communications in Computer and Information Science, vol 613. Springer, Cham. https://doi.org/10.1007/978-3-319-34099-9_13
Download citation
DOI: https://doi.org/10.1007/978-3-319-34099-9_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-34098-2
Online ISBN: 978-3-319-34099-9
eBook Packages: Computer ScienceComputer Science (R0)