Abstract
Threeway concept lattices have been widely used in various types of applications. As the construction of threeway 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 threeway 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 threeway concept lattices are investigated. One is the objectinduced threeway concept lattice, and the other is the attributeinduced threeway 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 knowledgebased 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 threeway concept analysis (3WCA). In essence, 3WCA generalizes classical FCA by absorbing the theory of three decisions [16–21]. In 3WCA, there are two types of concept lattices. One is objectinduced threeway concept lattice, and the other is attributeinduced threeway concept lattice. It has been proved that as a generalization of classical concepts, threeway concepts can provide more details than that of classical concepts [15]. On the basis of an objectinduced threeway 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, threeway concept analysis has attracted more and more attentions. Li and Wang [22] proposed threeway approximate concepts under the framework of threeway concept analysis. Shivhare and Cherukuri [23] applied the idea of threeway concept analysis to simulate a cognitive learning process. Mouliswaran et al. [24] designed a rolebased access control scheme by using threeway formal concept analysis. Ren and Wei [25] studied the attribute reduction of threeway concept lattices. Li et al. [26] described a threeway 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 threeway fuzzy concepts. In addition, Singh also generalized threeway concepts to bipolar fuzzy concepts [30] and mpolar fuzzy concepts [31] to derive useful concepts from fuzzy contexts for decision making.
As threeway concept lattice is of vital importance in 3WCAbased applications, the construction of threeway concept lattices is an important topic and deserves our continuous efforts. For instance, Qi et al. [14, 15] elaborated on the relationship between threeway concept lattices and classical concept lattices and constructed threeway concept lattices by combining the sublattices of classical concept lattices.
Compared with the construction of threeway concept lattices, how to effectively update the threeway 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 threeway concept lattices, we must initially update the threeway 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 threeway concept lattice caused by variations of attribute values. Specifically, this problem can be formulated as follows: given a formal context and its threeway concept lattice, if the attribute values are changed, how to update the corresponding threeway 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 objectinduced threeway concept lattice are studied, and the algorithms for updating the objectinduced threeway concept lattice are proposed. In Section 4, we investigate the effect of changing attribute values on the attributeinduced threeway 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 threeway concept lattices. One is the objectinduced threeway concept lattice, and the other is the attributeinduced threeway concept lattice.
Definition 1. [14, 15]. Let be a formal context, and . A pair of threeway 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 objectinduced threeway concept. Moreover, X and are called the extent and intent of the concept , respectively.
Then, all the objectinduced threeway concepts contained in K form a complete lattice, which is called the objectinduced threeway 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 threeway 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 attributeinduced threeway concept. Moreover, and A are called the extent and intent of the concept , respectively.
Then, all the attributeinduced threeway concepts contained in K form a complete lattice, which is called the attributeinduced threeway 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 ObjectInduced ThreeWay Concept Lattices When Changing Attribute Values
In this section, we investigate the effects on objectinduced threeway 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 objectinduced threeway 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 ObjectInduced ThreeWay Concept Lattices When Changing Attribute Values from 0 to 1
In this section, we investigate the effects on objectinduced threeway 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 objectinduced threeway 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 objectinduced threeway 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 objectinduced threeway 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 objectinduced threeway 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 .

3.2. The Effects on ObjectInduced ThreeWay Concept Lattices When Changing Attribute Values from 1 to 0
In this section, we study the effects on objectinduced threeway 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 objectinduced threeway 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 objectinduced threeway 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 objectinduced threeway 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 objectinduced threeway 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 .

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 objectinduced threeway 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 objectinduced threeway 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 objectinduced threeway concept lattice restores its original lattice that is shown in Figure 1
4. The Effects on AttributeInduced ThreeWay Concept Lattices When Changing Attribute Values
By using duality principle, we can get the results about the effects on attributeinduced threeway concept lattices when changing attribute values. Hence, we just present our approaches but omit the details.
4.1. The Effects on AttributeInduced ThreeWay Concept Lattices When Changing Attribute Values from 0 to 1
In this subsection, we list the results about the effects on attributeinduced threeway 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 attributeinduced threeway 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 attributeinduced threeway 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 attributeinduced threeway 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 attributeinduced threeway 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 .

4.2. The Effects on AttributeInduced ThreeWay Concept Lattices When Changing Attribute Values from 1 to 0
In this subsection, we list the results about the effects on attributeinduced threeway 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 attributeinduced threeway 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 attributeinduced threeway 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 attributeinduced threeway 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 attributeinduced threeway 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 .
