Abstract

Three-way concept lattices have been widely used in various types of applications. As the construction of three-way concept lattices is rather time consuming, especially for large formal contexts, it is not applicable to construct the lattices from the beginning when changes are made to the contexts. Motivated by this problem, the influences of three-way concept lattices caused by variations of attribute values are explored in this study. Specifically, we discuss two types of changes. One is changing the value of a specific incidence relation from 0 to 1, and the other is from 1 to 0. Furthermore, two types of three-way concept lattices are investigated. One is the object-induced three-way concept lattice, and the other is the attribute-induced three-way concept lattice. Both the mathematical proofs and the examples show the effectiveness of our proposed methods.

1. Introduction

Formal concept analysis (FCA) is a mathematical theory put forward by Wille in 1982 [1, 2]. Concept lattice is one of the main outcomes of FCA and describes a domain by using a set of concepts. At present, FCA has been used as an effective tool in data analysis and knowledge discovery. For instance, it has been applied in the fields of CT analysis [3], expert systems [4, 5], data mining [6, 7], data clustering [8, 9], software engineering [10], etc. However, it is worth noting that although both positive attributes and negative attributes play equal roles in many knowledge-based activities [11, 12, 13], classical concepts concern only positive attributes while left negative ones aside. As a result, we may lose many useful information.

By taking both positive and negative attributes into consideration, Qi et al. [14, 15] proposed the theory of three-way concept analysis (3WCA). In essence, 3WCA generalizes classical FCA by absorbing the theory of three decisions [1621]. In 3WCA, there are two types of concept lattices. One is object-induced three-way concept lattice, and the other is attribute-induced three-way concept lattice. It has been proved that as a generalization of classical concepts, three-way concepts can provide more details than that of classical concepts [15]. On the basis of an object-induced three-way concept, we divide the attributes of the intent of this concept into three disjoint parts: positive parts, negative parts, and the rest, based on which we can make further decisions.

Nowadays, three-way concept analysis has attracted more and more attentions. Li and Wang [22] proposed three-way approximate concepts under the framework of three-way concept analysis. Shivhare and Cherukuri [23] applied the idea of three-way concept analysis to simulate a cognitive learning process. Mouliswaran et al. [24] designed a role-based access control scheme by using three-way formal concept analysis. Ren and Wei [25] studied the attribute reduction of three-way concept lattices. Li et al. [26] described a three-way cognitive concept learning process from a multigranularity perspective. Zhi and Li [27] studied granular description based on positive and negative attributes. Furthermore, in order to manage fuzziness, Singh [28, 29] proposed three-way fuzzy concepts. In addition, Singh also generalized three-way concepts to bipolar fuzzy concepts [30] and m-polar fuzzy concepts [31] to derive useful concepts from fuzzy contexts for decision making.

As three-way concept lattice is of vital importance in 3WCA-based applications, the construction of three-way concept lattices is an important topic and deserves our continuous efforts. For instance, Qi et al. [14, 15] elaborated on the relationship between three-way concept lattices and classical concept lattices and constructed three-way concept lattices by combining the sublattices of classical concept lattices.

Compared with the construction of three-way concept lattices, how to effectively update the three-way concept lattices to cater the continuous changing of formal context has not received enough attentions. However, this is very important both in theoretical research and applications. Let’s consider the following example.

Example 1. Consider five European students, each of which wants to learn some courses about Chinese history. At present, the available courses are about five dynasties of Chinese history, i.e., Tang Dynasty, Song Dynasty, Yuan Dynasty, Ming Dynasty, and Qing Dynasty. Before they come to China, each student has chosen their interested dynasties. In Table 1, their interests are listed and a “” indicates a student favors a specific dynasty. For instance, as the Yuan Dynasty had a great influence on European history, four students have chosen this dynasty. By using this table, we want to analysis the main interests of the students.
However, after they came to China, some of them changed their minds. For instance, the charming of Xi’an attracted another two students to choose Tang Dynasty. At the same time, three students removed Yuan Dynasty from their curriculums. Accordingly, Table 1 is updated to Table 2, and we have to update our analysis result. Furthermore, if the analysis is based on three-way concept lattices, we must initially update the three-way concept lattice and then update the analysis result. Then, incremental approaches are needed to solve this problem, and studies have shown their effectiveness to cater dynamic systems [32, 33, 34].
Motivated by the above problems, we will investigate the approach to update the three-way concept lattice caused by variations of attribute values. Specifically, this problem can be formulated as follows: given a formal context and its three-way concept lattice, if the attribute values are changed, how to update the corresponding three-way concept lattice. As in dynamic information systems, the values of attributes keep changing from time to time and the construction of a concept lattice is rather time consuming, the problem discussed in this paper is extremely important in both theoretical research and applications.
The rest of this paper is organized as follows. Section 2 briefly reviews some basic notions in 3WCA. In Section 3, the influences of changing attribute values on the object-induced three-way concept lattice are studied, and the algorithms for updating the object-induced three-way concept lattice are proposed. In Section 4, we investigate the effect of changing attribute values on the attribute-induced three-way concept lattice. Finally, conclusions are provided in Section 5.

2. Preliminaries

A formal context is a triple [1], consisting of a nonempty finite set of objects G, a nonempty finite set of attributes M, and a crisp binary relation I which is functionally given as with (resp. ), indicating that object x satisfies (resp. does not satisfy) the attribute a. Moreover, the complement of K is defined as , where .

For and , the associated positive operators and are, respectively, defined as

Besides, the associated negative operators and are, respectively, defined as

Let G be a nonempty finite set and be the Cartesian product. Then, is a poset. The corresponding partial order relation is defined as

Moreover, if and , then .

In addition, the intersection “” and union “” in are, respectively, defined as

In 3WCA, there are two types of three-way concept lattices. One is the object-induced three-way concept lattice, and the other is the attribute-induced three-way concept lattice.

Definition 1. [14, 15]. Let be a formal context, and . A pair of three-way operators and are defined, respectively, as

Definition 2. [14, 15]. Let be a formal context, and . If and , then the ordered pair is called an object-induced three-way concept. Moreover, X and are called the extent and intent of the concept , respectively.
Then, all the object-induced three-way concepts contained in K form a complete lattice, which is called the object-induced three-way concept lattice of K and denoted by .
Furthermore, let and be two concepts of K. If and there does not exist another concept of K such that , then is called a lower neighbour of or equivalently is called an upper neighbour of , which is denoted by or .

Definition 3. [14, 15]. Let be a formal context, and . A pair of three-way operators and are defined, respectively, as

Definition 4. [14, 15]. Let be a formal context, and . If and , then the ordered pair is called an attribute-induced three-way concept. Moreover, and A are called the extent and intent of the concept , respectively.
Then, all the attribute-induced three-way concepts contained in K form a complete lattice, which is called the attribute-induced three-way concept lattice of K and denoted by .
Furthermore, let and be two concepts of K. If and there does not exist another concept of K such that , then is called a lower neighbour of or equivalently is called an upper neighbour of , which is denoted by or .

3. The Effects on Object-Induced Three-Way Concept Lattices When Changing Attribute Values

In this section, we investigate the effects on object-induced three-way concept lattices caused by the variations of attribute values. At the beginning, we give several useful symbols.(i)Let I and be the binary relations before and after changing a specific attribute value of the original formal context, respectively(ii)Let and be the object-induced three-way concept lattices of the formal contexts before and after changing a specific attribute value of the original formal context, respectively

3.1. The Effects on Object-Induced Three-Way Concept Lattices When Changing Attribute Values from 0 to 1

In this section, we investigate the effects on object-induced three-way concept lattices when changing attribute values from 0 to 1.

Theorem 1. Let be a formal context, , , and . If we change the value of from 0 to 1, then the corresponding object-induced three-way concept lattice needs to be updated as follows:(i)If there are two concepts with and , then generate a new concept (ii)Furthermore, if and , then and are no longer concepts in the updated concept latticeAnd if and , then is no longer a concept in the updated concept lattice.
And if and , then is no longer a concept in the updated concept lattice.

Proof. Firstly, we prove that if with and , then is a new concept of the updated lattice.
On one hand, we have . As the only change made to the context is changing from 0 to 1 and , we can deduce that and . As , we get that and .
Then, we have thatOn the other hand, we haveBesides, based on the condition with and , we get that . As the only change made to the context is changing from 0 to 1, we can deduce that and . Moreover, it is easy to show that . To sum up, we derive thatBy combining (7) and (9), the first part of the theorem is proved.
As the proof of the second part of the theorem is trivial, we omit it here.

Theorem 2. Let be a formal context, , , and . If we change the value of from 0 to 1, then update the object-induced three-way concept lattice as follows: if there is a concept with , all the extents of its upper neighbours do not contain an element x, and is a smallest father concept of such that , then generate a new concept .

Proof. It can be proved similarly as that of Theorem 1. Besides, it is trivial to show that both and are still concepts of the lattice after changing from 0 to 1.

Theorem 3. Let be a formal context, , , and . If we change the value of from 0 to 1 and if there is a concept with and , then update the object-induced three-way concept lattice as follows:(i)If there does not exist a concept , then generate a new concept (ii)If there does not exist a concept , then generate a new concept (iii) is no longer a concept after changing from 0 to 1

Proof. Before changing from 0 to 1, implies that a is not possessed by X. After changing from 0 to 1, a is possessed by object x. Then, is no longer a concept. Meanwhile, is the set of attributes which are not possessed by X. Moreover, as there does not exist a concept in the form of , we have to generate a new concept . Besides, as B is the set of attributes which are not possessed by and there does not exist a concept in the form of , we have to generate a new concept .
Based on the above discussions, we propose Algorithm 1 for updating an object-induced three-way concept lattice when changing a specific attribute value from 0 to 1.
Let N be the number of concepts of . In Algorithm 1, we visit the concept lattice only once. Therefore, the complexity of Algorithm 1 is .

Require: and changing from 0 to 1.
Ensure: .
(1)Sort the concepts into a queue Q based on the ascending order of their extents.
(2)For concept in Q
(3)If there exists another concept such that , , and
(4)  Then
(5)   Generate a new concept .
(6)   If and , delete and .
(7)   If and , delete .
(8)   If and , delete .
(9)End If
(10)If and all the extents of its upper neighbours do not contain x
(11)  Then
(12)   If is a smallest father concept of such that
(13)    then generate a new concept .
(14)End If
(15)If and
(16)  Then
(17)   If there does not exist a concept , then generate a concept .
(18)   If there does not exist a concept , then generate a concept .
(19)   Delete .
(20)End If
(21) Update partial orders between concepts where necessary.
(22)End For
(23)Return the updated lattice and end the algorithm.
3.2. The Effects on Object-Induced Three-Way Concept Lattices When Changing Attribute Values from 1 to 0

In this section, we study the effects on object-induced three-way concept lattices when changing attribute values from 1 to 0.

Theorem 4. Let be a formal context, , , and . If we change the value of from 1 to 0, then the corresponding object-induced three-way concept lattice needs to be updated as follows:(i)If there are two concepts with and , then generate a new concept (ii)Furthermore, if and , then and are no longer concepts in the updated concept latticeAnd if and , then is no longer a concept in the updated concept lattice.
And if and , then is no longer a concept in the updated concept lattice.

Proof. Firstly, we prove that if with and , then is a new concept of the updated lattice.
On one hand, we have . As the only change made to the context is changing from 1 to 0 and , we can deduce that and . As , we get that and .
Then, we have thatOn the other hand, we haveBesides, based on the condition with and , we get that . As the only change made to the context is changing from 1 to 0, we can deduce that and . Moreover, it is easy to show that . To sum up, we derive thatBy combining (10) and (12), the first part of the theorem is proved.
As the proof of the second part of the theorem is trivial, we omit it here.

Theorem 5. Let be a formal context, , , and . If we change the value of from 1 to 0, then update the object-induced three-way concept lattice as follows: if there is a concept with , all the extents of its upper neighbours do not contain an element x, and is a smallest father concept of such that , then generate a new concept .

Proof. It can be proved similarly as that of Theorem 4. Besides, it is trivial to show that both and are still concepts of the lattice after changing from 1 to 0.

Theorem 6. Let be a formal context, , , and . If we change the value of from 1 to 0 and if there is a concept with and , then update the object-induced three-way concept lattice as follows:(i)If there does not exist a concept , then generate a new concept (ii)If there does not exist a concept , then generate a new concept (iii) is no longer a concept after changing from 1 to 0

Proof. Before changing from 1 to 0, implies that a is possessed by X. After changing from 1 to 0, a is not possessed by object x. Then, is no longer a concept. Meanwhile, is the set of attributes which are commonly possessed by X. Moreover, as there does not exist a concept in the form of , we have to generate a new concept . Besides, as A is the set of attributes which are possessed by and there does not exist a concept in the form of , we have to generate a new concept .
Based on the above discussions, we propose Algorithm 2 for updating an object-induced three-way concept lattice when changing a specific attribute value from 1 to 0.
Let N be the number of concepts of . Similar to Algorithm 1, the complexity of Algorithm 2 is also .

Require: and changing from 1 to 0.
Ensure: .
(1)Sort the concepts into a queue Q based on the ascending order of their extents.
(2)For concept in Q
(3)If there exists another concept such that , , and
(4)  Then
(5)   Generate a new concept .
(6)   If and , delete and .
(7)   If and , delete .
(8)   If and , delete .
(9)End If
(10)If and all the extents of its upper neighbours do not contain x
(11)  Then
(12)   If is a smallest father concept of such that
(13)   then generate a new concept .
(14)End If
(15)If and
(16)  Then
(17)   If there does not exist a concept , then generate a concept .
(18)   If there does not exist a concept , then generate a concept .
(19)   Delete .
(20)End If
(21) Update partial orders between concepts where necessary.
(22)End For
(23)Return the updated lattice and end the algorithm.

Example 2. Table 3 shows a formal context with and . In the table, “” means an object has an attribute and a blank indicates the opposite. The corresponding object-induced three-way concept lattice is shown in Figure 1.
For convenience, in the representation of a concept we omit the curly braces and commas. For instance, we use instead of .
When we change from 0 to 1, the updating process is described briefly as follows:(i)As there exist two cases that fulfill the conditions of Theorem 1, i.e., there exist and , we generate two new concepts and , respectively, and delete the old concepts and (ii)As there exist three cases that fulfill the conditions of Theorem 3, i.e., there exist , and , we finally generate two new concepts and respectively, and delete the old concepts , , and (iii)Update partial orders between concepts where necessary, and the updated object-induced three-way concept lattice is shown in Figure 2Continued with the above discussions, if we restore to its original value 0, the updating process is shown as follows:(i)As there exist four cases that fulfill the conditions of Theorem 4, i.e., there exist , , , and , we generate four new concepts , , , and , respectively, and delete the old concepts , , and (ii)As there exists a concept that fulfills the conditions of Theorem 6, we generate a new concept and delete the old concept (iii)Update partial orders between concepts when necessary, and the updated object-induced three-way concept lattice restores its original lattice that is shown in Figure 1

4. The Effects on Attribute-Induced Three-Way Concept Lattices When Changing Attribute Values

By using duality principle, we can get the results about the effects on attribute-induced three-way concept lattices when changing attribute values. Hence, we just present our approaches but omit the details.

4.1. The Effects on Attribute-Induced Three-Way Concept Lattices When Changing Attribute Values from 0 to 1

In this subsection, we list the results about the effects on attribute-induced three-way concept lattices when changing attribute values from 0 to 1.

Theorem 7. Let be a formal context, , , and . If we change the value of from 0 to 1, then the corresponding attribute-induced three-way concept lattice needs to be updated as follows:(i)If there are two concepts with and , then generate a new concept (ii)Furthermore, if and , then and are no longer concepts in the updated concept latticeAnd if and , then is no longer a concept in the updated concept lattice.
And if and , then is no longer a concept in the updated concept lattice.

Theorem 8. Let be a formal context, , , and . If we change the value of from 0 to 1, then update the attribute-induced three-way concept lattice as follows: if there is a concept with , all the intents of its lower neighbours do not contain an element a, and is a biggest son concept of such that , then generate a new concept .

Theorem 9. Let be a formal context, , , and . If we change the value of from 0 to 1 and if there is a concept with and , then update the attribute-induced three-way concept lattice as follows:(i)If there does not exist a concept , then generate a new concept (ii)If there does not exist a concept , then generate a new concept (iii) is no longer a concept after changing from 0 to 1Based on the above discussions, we propose Algorithm 3 for updating an attribute-induced three-way concept lattice when changing a specific attribute value from 0 to 1.
Let N be the number of concepts of . The complexity of Algorithm 3 is .

Require: and changing from 0 to 1.
Ensure: .
(1)Sort the concepts into a queue Q based on the descending order of their extents.
(2)For concept in Q
(3)If there exists another concept such that , , and
(4)  Then
(5)   Generate a new concept .
(6)   If and , delete and .
(7)   If and , delete .
(8)   If and , delete .
(9)End If
(10)If and all the intents of its lower neighbours do not contain a
(11)  Then
(12)   If is a biggest son concept of such that
(13)    then generate a new concept .
(14)End If
(15)If and
(16)  Then
(17)   If there does not exist a concept , then generate a new concept .
(18)   If there does not exist a concept , then generate a new concept .
(19)   Delete .
(20)End If
(21) Update partial orders between concepts where necessary.
(22)End For
(23)Return the updated lattice and end the algorithm.
4.2. The Effects on Attribute-Induced Three-Way Concept Lattices When Changing Attribute Values from 1 to 0

In this subsection, we list the results about the effects on attribute-induced three-way concept lattices when changing attribute values from 1 to 0.

Theorem 10. Let be a formal context, , , and . If we change the value of from 1 to 0, then the corresponding attribute-induced three-way concept lattice needs to be updated as follows:(i)If there are two concepts with and , then generate a new concept (ii)Furthermore, if and , then and are no longer concepts in the updated concept latticeAnd if and , then is no longer a concept in the updated concept lattice.
And if and , then is no longer a concept in the updated concept lattice.

Theorem 11. Let be a formal context, , , and . If we change the value of from 1 to 0, then update the attribute-induced three-way concept lattice as follows: if there is a concept with , all the intents of its lower neighbours do not contain an element a, and is a biggest son concept of such that , then generate a new concept .

Theorem 12. Let be a formal context, , , and . If we change the value of from 1 to 0 and if there is a concept with and , then update the attribute-induced three-way concept lattice as follows:(i)If there does not exist a concept , then generate a new concept (ii)If there does not exist a concept , then generate a new concept (iii) is no longer a concept after changing from 1 to 0Based on the above discussions, we propose Algorithm 4 for updating an attribute-induced three-way concept lattice when changing a specific attribute value from 1 to 0.
Let N be the number of concepts of . The complexity of Algorithm 4 is .

Require: and changing from 1 to 0.
Ensure: .
(1)Sort the concepts into a queue Q based on the descending order of their extents.
(2)For concept in Q
(3)If there exists another concept such that , , and
(4)  Then
(5)   Generate a new concept .
(6)   If and , delete and .
(7)   If and , delete .
(8)   If and , delete .
(9)End If
(10)If and all the intents of its lower neighbours do not contain a
(11)  Then
(12)   If is a biggest son concept of such that
(13)    then generate a new concept .
(14)End If
(15)If and
(16)  Then
(17)   If there does not exist a concept , then generate a new concept .
(18)   If there does not exist a concept , then generate a new concept .
(19)   Delete .
(20)End If
(21) Update partial orders between concepts where necessary.
(22)End For
(23)Return the updated lattice and end the algorithm.

Example 3. Table 4 shows a formal context with and . In the table, “” means an object has an attribute and a blank indicates the opposite. The corresponding attribute-induced three-way concept lattice is shown in Figure 3.
When we change from 0 to 1, the updating process is recorded briefly as follows:(i)As there exists a pair of concepts that fulfill the conditions of Theorem 7, we generate a new concept and delete the old concept (ii)As there exists a concept that fulfills the conditions of Theorem 8, we generate a new concept (iii)As there exist three concepts , , and that fulfill the conditions of Theorem 9, we finally generate two new concepts and and delete old concepts , , and (iv)Update partial orders between concepts when necessary, and the updated attribute-induced three-way concept lattice is shown in Figure 4Continued with the above discussions, if we restore to its original value 0, the updating process is depicted briefly as follows:(i)As there exist three pairs of concepts , , and that fulfill the conditions of Theorem 10, we generate three new concepts , , and and delete the old concepts , , and (ii)As there exists a concept that fulfills the conditions of Theorem 11, we generate a new concept (iii)As there exists a concept that fulfills the conditions of Theorem 12, we delete this old concept(iv)Update partial orders between concepts when necessary, and the updated attribute-induced three-way concept lattice restores its original lattice that is shown in Figure 3

5. Conclusion

In this paper, we study the influences of three-way concept lattices caused by variations of attribute values. Concretely, changes can be classified into two types. One is changing a specific attribute value from 0 to 1, and the other is from 1 to 0. Besides, as there are two types of three-way concept lattices, i.e., object-induced three-way concept lattice and attribute-induce three-way concept lattice, we give our solutions to the problems of these two types of three-way concept lattices, respectively. Besides, we also employ illustrative examples to show the details of our proposed methods.

Some interesting and unsolved problems still deserve to be studied. For example, as knowledge representation and reasoning in fuzzy systems are extremely complex [35, 36, 37], how to update fuzzy concept lattice and fuzzy association rules are more interesting and challenging. In addition, how to effectively update approximate three-way concept lattices [22, 38, 39] is another interesting problem. These issues will be studied in our forthcoming work.

Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This work was supported by the National Natural Science Foundation of China (Nos. 61502150 and 61872126).