1. Introduction
Formal concept analysis (FCA) [
1,
2] is a useful model for the mathematization of concept and conceptual hierarchy. It has become a useful method for knowledge discovery, and the method plays an important role in information retrieval, cognitive analytics, and many other applications. The set of formal concepts may be interpreted as a concept lattice. The lattice has been extensively studied [
3,
4,
5,
6,
7,
8,
9], for instance, Aragon, Medina and Poussa [
10] studied the impact of applying a local congruence on a concept lattice associated with a reduced context. Particularly, much research has been conducted on attribute reduction for such a lattice [
11,
12,
13,
14,
15].
Rough set theory (RST) [
16,
17] serves as an efficient data analysis technique to deal with vagueness and uncertainty. The theory has been extensively used for classification, feature extraction, pattern recognition, and data science. FCA and RST are closely related, for example, object-oriented concept lattices connect FCA and RST. Wei and Qi [
18] considered the relationship between FCA and RST. Many papers study concept lattices [
19,
20,
21,
22] in FCA by means of rough set approaches. Yao [
23,
24] gave a comparative study of two theories from a viewpoint of data science. Jose et al. [
25] introduced a new attribute reduction method in FCA considering the reduction philosophy given in RST. The method allows to carry out a deeper study of the relation between FCA and RST.
A rough approximation can induce many different lattices, for thorough comprehension of data processing using concept lattices, Gediga and Duntsch [
26] introduced attribute-oriented concept lattices (AOCL) based on RST. As a dual concept, Yao [
23] defined object-oriented concept lattices (OOCL). Both AOCL and OOCL are important generalizations of the classic concept lattices, they establish the connection between FCA and RST. Generally, a concept lattice may contain superfluous attributes and objects. This leads to the study of attribute or object reduction. The aims of attribute or object reduction for concept lattices are to remove these superfluous attributes or objects. Attribute reduction for concept lattices was proposed by Ganter and Wille [
2] and Zhang, Wei, and Qi [
27]. According to Konecny [
5], the clarification and reduction method can be derived from their book [
2]. Zhang, Wei, and Qi [
27] used discernibility matrix-based methods to identify all attribute reducts in classic concept lattices. Later, Qi [
28] improved their own reduction methods by defining a new discernibility matrix. Using binary integer programming, Li and Zhang [
29] proposed a reduction method that does not depend on the discernibility matrices for classic concept lattices.
Attribute reduction is helpful for construction of clear data-based classification and knowledge representation models. It is also a difficult problem in concept lattices. Liu et al. [
30] considered the reduction problem of AOCL and OOCL by means of RST. They proposed a discernibility matrix-based reduction algorithm and checked the algorithm by numerical computational results. A discernibility matrix-based algorithm [
31] has been standardized for identifying all reducts. The method comes from RST [
17] and a similar approach [
32] is used to bicluster continuous matrices on the basis of Boolean function analysis. Generally, both concept lattices and discernibility matrices must be calculated. Moreover, a discernibility function must be transformed into its minimal disjunctive normal form. Since it contains several short terms, the method can be used in general; however, it is inefficient and, for large formal contexts, prohibitively costly. For instance, an experimental evaluation by Konecny and Krajča [
6] that compared four different reduction algorithms found that the method is inefficient. Shao, Liu, and Guo [
33] proposed a Boolean vector-based reduction algorithm that is efficient; however, the algorithm can only identify one reduct rather than all reducts. So we need to set up an efficient reduction algorithm to identify all reducts.
Covering is widely studied in rough sets [
34]. Covering reduction is a powerful problem-solving technique, and this paper presents a new covering reduction perspective for solving attribute reduction problems. Fortunately, we have already obtained a simple covering reduction algorithm in [
20]. This paper studies the reduction problems in OOCLs and the aim of the paper is to design a simple reduction algorithm to identify all reducts. Specifically, we consider attribute reduction, object reduction and bireduction for OOCLs in formal contexts. We first transform the reduction problem for OOCLs into the reduction problem in coverings and then obtain the corresponding algorithms with the help of the covering reduction algorithm in [
20]. All reducts can be directly identified by a Boolean matrix transformation. In particular, our algorithms are simpler than the algorithms given by Liu et al. [
30]. This paper can be seen as an application of the covering reduction in reduction theory in formal contexts.
The paper is structured as follows.
Section 2 briefly reviews some basic concepts and properties of rough sets, concept lattices and coverings. We show an isomorphic relationship between AOCLs and OOCLs.
Section 3 studies the attribute reduction problem for OOCLs and gives an algorithm to identify all reducts with the help of the covering reduction. In
Section 4, as a dual of attribute reduction, we consider the object reduction problem in OOCLs and give its reduction algorithm. In
Section 5, we discuss the bireduction problem in OOCLs and derive a simple bireduction algorithm. Finally,
Section 6 concludes the paper.
2. Preliminaries
We briefly recall basic definitions and properties of rough sets, formal contexts and two types of concept lattices. The detailed definitions can be found in [
30]. An isomorphic relationship between AOCLs and OOCLs are established.
We assume that
O is a finite object set and
A is a finite attribute set.
is the power set of
O.
I is called a relation from
O to
A if
. We write
for
. A triplet
[
2] is called a formal context (for short, context) if
I is a relation from
O to
A. Inverse relation of
I is denoted by
and
. Let
be the complementary relation of
I.
is also a relation from
O to
A that can be expressed simple in terms of
I:
. Recall that
I is called regular [
35] if
I satisfies, for any
, (1) there exist
such that
and
, and (2) there exist
such that
and
. Clearly, if
I is regular, then
and
are also regular. Suppose
, the restriction of
I to
, denoted by
, is
. Let
, the right
I-related set of
p is
Similarly, for
, the left
I-related set of
q is
Clearly, for
,
and for
,
. The lower and upper approximations
is given by [
36],
respectively. Because
is a relation from
A to
O, for
, using
instead of
I, we also have the lower and upper approximations
and
. Let
, we denote [
23]
respectively. Similarly, for
, we denote [
23]
Proposition 1 ([
23,
30])
. Let S be a context,(1) for and for .
(2) and for . Similarly, and for .
Definition 1 ([
2,
23,
27])
. Let S be a context.(1) Assume that , define the meet and join operations on as follows.respectively. (2) Assume that , define the meet and join operations on as follows.respectively. is a lattice [
2,
23,
27] and called the object-oriented concept lattice (OOCL) of
S. Similarly,
is also a lattice and called the attribute-oriented concept lattice (AOCL) of
S. As Yao points out in [
23], the OOCL and AOCL of
S are anti-isomorphic. The following theorem reflects the isomorphic relationship between
and
.
Theorem 1 ([
30])
. Let S be a context.(1) .
(2) is isomorphic to .
By Theorem 1, the reduction problems in AOCLs can be transformed into the reduction problems in OOCLs. Thus, we only consider the reduction problems in OOCLs. We denote
is a lattice, its meet and join operations are given by
respectively. Clearly,
for each
and each set of
is a union of some
.
Similarly,
is also a lattice, and its meet and join operations are
respectively.
Theorem 2. Let S be a context, three lattices , and are isomorphic.
Definition 2. Let S be a context. S is row clarified if implies for each ; S is column clarified if implies for each ; S is clarified [2] if S is row and column clarified. Clearly, in a row clarified context, different objects have different intents, similarly, in a column clarified context, different attributes have different extents. The clarification process is as below. Let be a context, we define an equivalence relation on A as follows. for . The equivalence class containing q is denoted by and the corresponding quotient set is denoted by . This induces a relation from O to as follows. for some . It is easy to check that is a column clarified context. Similarly, if we define an equivalence relation on O as follows. for . Let denote the equivalence class containing and denote the corresponding quotient set, a relation from to A is given by for some . Then, is a row clarified context. Using similar techniques, we can construct a clarified context .
Example 1. Let a context S be given in Table 1, where is the object set and is the attribute set. A star * in position of the table means that the object has the attribute . That is, . By direct computation, , and . Thus , , where and . 1. The column clarified context
is given as in
Table 2.
2. The row clarified context
is given as in
Table 3.
3. The clarified context
is given as in
Table 4.
Definition 3 ([
34])
. A covering Γ of O is a family of nonempty subsets of O such that . Assume , Z is called reducible if such that and ; otherwise, Z is irreducible. If , is a covering of O and consists of irreducible elements in Γ, then is called a reduct of Γ. Each covering has a unique reduct [34]. Coverings and column clarified contexts are closely related. Let
,
, if
is a covering of
O, we define
and a relation
I from
O to
A via
for
. Clearly,
is a column clarified context. Conversely,
is a column clarified context with
for
, then
is a covering of
. We [
20] proposed a covering reduction algorithm to identify the reduct. We will use the covering reduction algorithm [
20] to identify all reducts for OOCLs.
3. Attribute Reduction in Object-Oriented Concept Lattices
Liu et al. [
30] considered attribute reduction for OOCLs in contexts. We continue to consider the same reduction problem and provide an attribute reduction algorithm for such a concept lattice in contexts. However, our algorithm is much simpler than that of Liu et al. [
30]. In fact, this is an application of covering reduction to attribute reduction in OOCLs. The following are the definitions of attribute and object reductions for OOCLs.
Definition 4 ([
27])
. Let S be a context and B be a nonempty subset of A. If B satisfies the following axioms:(1) (lattice isomorphism), and
(2) , is not lattice isomorphic to .
Then, B is called an attribute reduct of S.
Note that in Definition 4, (1) guarantees that is invariant under lattice isomorphism and (2) requires B to be minimal.
Definition 5. Let S be a context and V be a nonempty subset of O. If V satisfies the following axioms:
(1) (lattice isomorphism), and
(2) for , is not lattice isomorphic to .
Then V is called an object reduct of S.
Similarly, in Definition 5, (1) guarantees that
is invariant under lattice isomorphism and (2) requires
V to be minimal. For an AOCL, we can define the attribute and object reductions, respectively. Let
, we use Span
to denote the family spanned by
E, that is, each element in Span
can be written as a union of subsets in
E. For example, if
and
, then Span
. Recall that each covering [
34] has a unique reduct. We obtained a covering reduction algorithm in [
20].
Theorem 3. Let S be a context and C be a nonempty subset of A.
(1) For , .
(2) For , .
(3) if and only if Span=Span.
(4) Let S be column clarified, C is an attribute reduct of S if and only if is a covering reduct of . In particular, S has a unique attribute reduct.
Proof. (1) For , , .
(2) , by part (1),
.
(3) Suppose that
, then
. Thus,
and
are spanned by
and
, respectively. Hence,
This proves the theorem.
(4) is always a covering of . In this situation, C is an attribute reduct of S, then is a covering reduct of and vice versa. S has a unique attribute reduct because each covering has unique reducts. □
We always have for any context S. For a column clarified context, by Theorem 3, to identify an attribute reduct of S is equivalent to identifying the covering reduct of . If S is not column clarified, we use a column clarified context to replace . Let be the unique attribute reduct of , then each attribute reduct of has the form . Thus, there are different attribute reducts, where is the cardinality of X. Therefore, we only need to give a reduction algorithm for column clarified contexts.
Let
be column clarified, where
and
,
.
is the relation matrix of
I. Suppose that
and
for
. By characteristic function of sets, we write
as an
n-Boolean column vector
and Boolean matrix
, where
is transpose. A combination of Theorem 3 and the covering reduction algorithm [
20] derives the following Algorithm 1.
Algorithm 1: An attribute reduction algorithm for OOCL. |
Input: A column clarified context S. Output: A unique attribute reduct of S. 1. For to a. For to n 1. If , then times the ith column is added to the jth column. That is, is added to (denoted by . The family of all attributes, whose columns contain at least one 1, forms the reduct. |
Algorithm 1 follows from Theorem 3(4) and the reduction algorithm of coverings [
20]. We now analyze the number of steps required by Algorithm 1. We require
n steps to finish the calculation of the last step in Algorithm 1; thus, this algorithm requires at most
steps. Hence, its computational complexity is
.
If we compare with the existing reduction algorithm in [
30], the advantages of our algorithm are as follows.
(1) Omit the computation of .
(2) Omit the calculation of discernibility matrix and discernibility function.
As we know, the computation of
, discernibility matrix and discernibility function are difficult and time-consuming. Our reduction algorithms save substantial time and are a significant improvement over discernibility matrix-based techniques. Compared with the clarification and reduction method [
6], our algorithms are also more intuitive and easy to understand. We present its reduction algorithm via the following example.
Example 2. Let a context S be given in Example 1, S is not column clarified. Now we identify the unique reduct of covering of O by our algorithm.
Step 1. We obtain a column clarified context and construct a Boolean matrix W.
, where and .
Step 2. According to Algorithm 1, we do the column transformation for W.
, wheremeans thatmultiplying the ith column is added to the jth column.
Step 3. Obtain all reducts.
is the unique reduct of covering of O. Since , and , there are two different attribute reducts. Hence, and are all attribute reducts of S.
In fact,
Figure 1 shows the Hasse diagram of
.
By Theorem 1, we can induce an object reduction algorithm for .
Corollary 1. Let S be a context and V be a nonempty subset of O, then if and only if Span. In particular, V is an object reduct for if and only if is a covering reduct of . Moreover, if S is row clarified, then S has a unique object reduct.
Proof. By duality principle, the proof is straightforward. □
Example 3. Let S be given in Example 1, . C is a covering of A. is the unique reduct of C. Thus, and are all object reducts for .
4. Object Reduction in Object-Oriented Concept Lattices
The dual concept of attribute reduction is object reduction. We will set up an object reduction algorithm for OOCLs. Let A be a finite set and , we denote and for .
Theorem 4. Let S be a context and V be a nonempty subset of O, then:
(1) For each , .
(2) if and only if Span.
(3) Let S be row clarified, then V is an object reduct of S if and only if is a covering reduct of . In particular, a row clarified context has a unique reduct.
Proof. (1) By Proposition 1(2), . In particular, for , we have . Since , we obtain for each .
By part (1), is spanned by . Similarly, is spanned by . Thus, if and only if Span.
(3) and are coverings of A because I is regular. By part (2), if V is an object reduct of S, then is a covering reduct of and vice versa. □
If is not a row clarified, we use a row clarified context to replace S. Let be the unique object reduct of , then each object reduct has the form , where for . Thus, there are different object reducts of S.
Example 4. Let S be a context defined in Example 1. By direct computation, , , , and . is a covering of A. is the unique reduct of covering . Thus and are all object reducts of S.
By Theorem 1, , C is an attribute reduct for if and only if C is an object reduct for . Thus, we derive an attribute reduction algorithm for , however, we omit it.
5. A Bireduction in Object-Oriented Concept Lattices
Bireduction for decision tables was first proposed by Slezak and Janusz [
37] and its aim is to remove superfluous condition attributes and objects. Jose et al. [
38] considered bireducts in a general framework in which attributes induce tolerance relations over the available objects. Jose et al. [
39] applied the philosophy of RST to reduce formal context in the environment of FCA. Here, we consider the bireduction in an OOCL. Bireduction considers not only attribute reduction but also object reduction for a given context. Let
S be a context, if
V and
C are non-empty subsets of
O and
A, respectively, we have a subcontext
.
Definition 6. Let be a context and be a subcontext of S. If
(1) (lattice isomorphism), and
(2) for or , is not lattice isomorphic to .
The pair is called a bireduct of S.
A bireduction needs to remove superfluous objects and attributes for a given context. Clearly, to identify a bireduct is to find a minimal subcontext such that and are isomorphic. Now let us set up a bireduction algorithm.
Lemma 1. Let S be a context and V be a nonempty subset of O, if , then .
Proof. means that and . We show that . By Proposition 1(2), . Now we show that .
Let , then . For , we have , thus, and . Hence, . Moreover, implies and . This proves that and . Therefore, . □
Lemma 2. Let S be a context and C be a nonempty subset of A, if , then .
Proof. Since , we have and . Clearly, . We show that . In fact, , because of and , this implies . Thus, , that is, and . Hence, and . We obtain and , thus, and . Therefore, and . We obtain and . □
Theorem 5. Let S be a context and be a subcontext of S. If , then .
Proof. By Lemma 2,
. By Lemma 1,
. Thus,
. If
, then
, we define a mapping
Clearly,
f is a bijection. Now we show that
f is a lattice isomorphism. For
, we denote
and
, thus,
and
. Moreover,
This shows that f is a lattice isomorphism. Hence, . Similarly, . □
Theorem 6. Let S be a context and be a subcontext of S. If , then .
Proof. If
, by Theorem 4(2),
thus Span
, that is, Span
. By using Theorem 4(2) again, we have
. Since
, we have
. □
Corollary 2. Let S be a context and be a subcontext of S.
(1) .
(2) is a bireduct of S if and only if P is an object reduct and Q is an attribute reduct of S.
Proof. By Theorems 5 and 6, The proof is straightforward. □
Corollary 3. A clarified context has a unique bireduct.
Proof. By Theorems 3 and 4, the proof is straightforward. □
The computation process of identifying bireducts can be divided into the following two steps:
(1) identify object reducts for , and
(2) identify attribute reducts for .
Let be a context, then is clarified. By Corollary 3, let be the unique bireduct of , then there are different bireducts of S.
Example 5. Let S be a context given in Example 1. By Example 4, and are all object reducts of S. By Example 2, and are all attribute reducts of S. Thus, all bireducts of S are as follows. , , and .
Let and , then is a subcontext. Moreover, = Figure 2 shows the Hasse diagram of . Clearly, . The bireduction process is as follows.
where . We obtain all object reducts and . We continue the reduction process with the following column operations.
We obtain all attribute reducts and . Hence, we can derive all bireducts of S. As we can see from this example, identifying all bireducts of a context is just matrix transformation processes.
For a given context S, Theorem 1 tells us that . Thus, attribute reduction, object reduction and bireduction for can be turned into object reduction, attribute reduction and bireduction for , respectively.
(1) Attribute reduction for coincides with object reduction for .
(2) Object reduction for coincides with attribute reduction for .
(3) is a bireduct of if and only if is a bireduct of .
Therefore, our proposed bireduction algorithm for OOCLs can be used to identify bireducts for AOCLs.