Keywords

1 Introduction

There were proposed various methods of knowledge representation and reasoning. One of the most popular approaches to knowledge representation are the fuzzy rules. However, reasoning is mainly classified into two types: forward reasoning and backward reasoning. The inference mechanism of forward reasoning is based on a data-derived way, and has a powerful prediction ability, which is capable of alarming latent hazards, forthcoming accidents, and faults. By contrast, backward reasoning is based on a goal-derived manner, has explicit objectives, which are generally to search the most possible causes related to an existing fact. Backward reasoning plays an essential role in fault diagnosis, accident analysis, and defect detection. This kind of reasoning uses fuzzy logic [4] to reason about data in the inference mechanism instead of a variety of other logics, including Boolean logic, (non-fuzzy) many-valued logics, nonmonotonic logics, etc. From imprecise inputs and fuzzy rules imprecise conclusions are obtained. Approximate reasoning with fuzzy sets encompasses a wide variety of inference schemes.

Paper [5] discusses different representations of rules in a nonfuzzy setting and extends these representations to rules with a fuzzy conclusion part. It introduces the different types of fuzzy rules and put them in the framework of fuzzy sets and possibility theory.

In [2] a new fuzzy reasoning method by optimizing the similarity of truth-tables is presented. Its basic idea is to find a fuzzy set such that the truth-tables generated by the antecedent rule and the consequent rule are as similar as possible.

Fuzzy rules are often presented in the form of implications. A typology of fuzzy rules and the problem of multiple-valued implications are discussed in paper [4]. It reviews the problem of representing fuzzy knowledge, and ranges from linguistic variables to conditional if-then rules and qualified statements.

Fuzzy implications can be represented in many ways. One of them is the functional representation (e.g. [12, 13, 17]). The definition of fuzzy implications and their mathematical properties were studied e.g. in [1] and [16]. One of basic problems in building an inference system is choosing the relevant fuzzy implication (e.g. [2, 11]). In [11] authors proposed a method allowing to choose the most suitable fuzzy implication in an inference system application. They introduced an algorithm that calculates the distance between two fuzzy implications and which is based on generalized modus ponens.

In [14], we have presented a fuzzy forward reasoning methodology for rule-based systems using the functional representation of fuzzy rules (fuzzy implications). In this paper, we extend a methodology for selecting relevant fuzzy implications from [14] in backward reasoning. The proposed methodology takes full advantage of the functional representation of fuzzy implications and the algebraic properties of the family of all fuzzy implications. It allows to compare two fuzzy implications. If the truth value of the conclusion and the truth value of the implication are given, we can easily optimize the truth value of the implication premise. In particular, in this paper we introduced an algorithm of finding the fuzzy implication which has the highest truth value of the antecedent when the truth value of the consequent and the truth value of the implication are given. This methodology can be useful for the design of inference engine based on the rule knowledge for a given rule-based system.

In the solution in this paper to divide the domain of fuzzy implications into areas, in which it will be possible to select appropriate fuzzy implication we had to use the Lambert W function, also called product logarithm. Lambert W function is a special function used when solving equations containing unknown to both the base and the exponent power. It is defined as the inverse of \(f (z) = ze ^ z \), where z belongs to the set of complex numbers. It is marked \(W(z)\). Thus, for each complex number \(z\) holds: \(z = W (z) e ^ {W (z)}.\)

The rest of this paper is organized as follows. Section 2 contains basic information on fuzzy implications. In Sect. 3 the research problem is formulated. Section 4 presents the solution of the given research problem. Section 5 is devoted to the pseudo-code of an algorithm for determining a basic fuzzy implication which has the highest truth value of the antecedent when the truth value of the consequent and the truth value of the implication are given. Section 6 includes summarizing of our research and some remarks.

2 Preliminaries

In this section we recall a definition of a fuzzy implication and we list a few of basic fuzzy implications known from the subject literature [1].

A function \(I: [0,1]^2 \rightarrow [0,1]\) is called a fuzzy implication if it satisfies, for all \(x, x_1, x_2, y, y_1, y_2 \in [0,1],\) the following conditions:

  • if \(x_1 \le x_2\), then \(I(x_1,y) \ge I(x_2,y)\), i.e., \(I(.,y)\) is decreasing;

  • if \(y_1 \le y_2\), then \(I(x,y_1) \le I(x,y_2)\), i.e., \(I(x,.)\) is increasing;

  • \(I(0,0) = 1;\)

  • \(I(1,1) = 1;\)

  • \(I(1,0) = 0.\)

There exist uncountably many fuzzy implications. The following Table 1 contains a few examples of basic fuzzy implications. Figure 1 gives us some plots of these functions.

Table 1. Examples of basic fuzzy implications
Fig. 1.
figure 1

Plots of \(I_{LK}\) and \(I_{RC}\) fuzzy implications

3 Problem Statement

Our goal is to elaborate an algorithm to find a method of selecting fuzzy implication in view of the value of the implication antecedent.

Assume that there is given a basic fuzzy implication \(z = I(x,y)\), where \(x\), \(y\) belong to [0,1]. \(y\) is the truth value of the consequent and is known. \(z\) is the truth value of the implication and is also known. In order to determine the value of the truth of the implication antecedent \(x\) it is needed to compute the inverse function \(InvI(y,z)\). In other words, the inverse function \(InvI(y,z)\) has to be determined. Not every of basic implications can be inverted. The function can be inverted only when it is injective.

Choosing implications in the opposite situation, where the truth value of the antecedent and the truth value of the implication are given are described in the paper [14] and primary results regarding this problem in forward reasoning are included in the paper [15].

4 Results

Table 2 lists inverse fuzzy implications and their domains and in Fig. 2 there are some plots of them.

Table 2. Inverted fuzzy implications
Fig. 2.
figure 2

Plots of \(InvI_{LK}\), \(InvI_{RC}, InvI_{YG}\) and \(InvI_{GG}\) fuzzy implications

The domains of every considered inverted fuzzy implications are included in a half of the unit square, where \(y\le z< 1\) and \(y\in (0,1)\). Only one inverted fuzzy implication has a domain which is smaller than this area. This is inverted Fodor implication and in the whole its domain (\(y\le z<1-y, y\in [0,1]\)) this function is equal to inverted Kleene-Dienes implication.

For \(y \le z < 1-y\) there are the following inequalities: \(InvI_{FD} = InvI_{KD} < InvI_{RC} < InvI_{LK}\), \(InvI_{YG} < InvI_{RC} < InvI_{LK}\), \(InvI_{GG} < InvI_{LK}\). A graphical representation of the ordering of inverted basic fuzzy implications is given in Fig. 3.

Fig. 3.
figure 3

A graphical representation of the ordering of inverted basic fuzzy implications for \(y \le z < 1-y\)

For \(1-y \le z < 1\) and \(y \le z\) there are the same inequalities, but without inverted Fodor implication, because this function does not exist in this area.

Fig. 4.
figure 4

The unit square \([0,1]^2\) divided into separable areas

The resulting inverse functions can be compared with each other so that it is possible to order them. However, some of those functions are incomparable in the whole domain. Nevertheless, by dividing the domain into separable areas (see Fig. 4), we obtained 19 inequalities between inverted fuzzy implications for any \(y\le z< 1\) and \(y\in (0,1)\). A few from this inequalities are given below and their graphical representation is in Table 3. This is only a part of the analysis. Full description of the analysis will be in the full version of this work.

  1. 1.

    For \(z > 1-y\) and \(z > \frac{ProductLog(y Log(y))}{Log(y)}\)

    \(InvI_{YG} < InvI_{KD} < InvI_{RC} < InvI_{GG} < InvI_{LK}\)

  2. 2.

    For \(z > y\) and \(z > 1 - y\) and \(z < \frac{ProductLog(y Log(y))}{Log(y)}\)

    \(InvI_{KD} < InvI_{YG} < InvI_{RC} < InvI_{GG} < InvI_{LK}\)

  3. 3.

    For \(z < \frac{1 + \sqrt{1-4y}}{2}\) and \(z > \frac{y Log(y)}{ProductLog(y Log(y))}\)

    \(InvI_{YG} < InvI_{GG} < InvI_{KD} < InvI_{RC} < InvI_{LK}\)

  4. 4.

    For \(z > \frac{1 + \sqrt{1-4y}}{2}\) and \(z > \frac{ProductLog(y Log(y))}{Log(y)}\) and \(z< 1-y\)

    \(InvI_{YG} < InvI_{KD} < InvI_{GG} < InvI_{RC} < InvI_{LK}\)

All inequalities given in Table 3 can be proven in a similar way. As examples, we will consider one of inequalities. Let \(y \in (0, 1)\) and \(z \in (y, 1)\). \(y<z\), so obviously \(y^2<yz\). By adding and subtracting \(1-z+y\) to the equation we obtained \(1-z<1-z+y-y+yz-y^2\). And therefore, \(\frac{1-z}{1-y}<1-z+y\). This completes the proof of the inequality: \(InvI_{RC} < InvI_{LK}\) in domains of these functions.

Table 3. A part of the table of inequalities (4 out of 19 possible cases)

5 Algorithm

Below we present the pseudo-code of the algorithm (DetermineImplicationGTVA) for determining a basic fuzzy implication which has the highest truth value of the antecedent whereas the truth value of the consequent and the truth value of the implication are given.

The algorithm uses the results of our research presented in Table 3. The first step in the algorithm determines to which area \((1) - (19)\) from Table 3 point \((y,z)\) belongs to.

figure i
  1. 1.

    \(a \leftarrow area(y,z)\) //determines the area from \((1) - (19)\) to which a point \((y,z)\) belongs to;

  2. 2.

    order the set \(W\) with respect to the graph \(G_{a}\) of inequalities from the area \(a\);

  3. 3.

    \(I \leftarrow \) the maximal element(s) from the ordered set \(W\);

  4. 4.

    return \(I\);

6 Concluding Remarks

In this paper, we introduced an algorithm of finding the fuzzy implication which has the highest truth value of the antecedent from a given subset of the basic fuzzy implications, when the truth value of the consequent and the truth value of the implication are given.

Also it turned out, that an implication which has the largest truth value of the antecedent is always the inverted Łukasiewicz implication.

In the solution in this paper we used Lambert W function. Lambert W function cannot be expressed in terms of elementary functions. For this reason it is impossible to calculate the coordinates of a point \((y_0, z_0)\) in an analytical way (area number 19 in Table 3).

It is possible to avoid this problem if we skip Yager fuzzy implication in our analysis. This is one of problems which we would like to investigate applying the approach presented in the paper.