Keywords

1 Introduction

Rough sets [14] have been used as a tool to analyze the uncertain and incomplete information systems in data mining, and granular computing models have been well established based on rough sets to process the uncertainly of objects. In data mining research, coverings are a useful form to describe the characteristics of attributes in information systems [57]. Covering-based rough sets serve as an efficient technique to deal with covering data [8, 9]. In recent years, covering-based rough sets play an important role in data representation and have been attracting more and more researcher interest [1012]. There are many significant achievements in both theory and application. For example, covering approximation models have been constructed [1315], covering axiomatic systems have been established [1618], covering reduction problems have been defined [19, 20], and covering decision systems have been proposed [6, 21].

Most existing research on covering-based rough sets has been conducted qualitatively. However, few quantitative analysis for covering-based rough sets have been conducted. Recently, Zhu and Wang define [19, 22] the upper approximation number function in covering-based approximation space. The upper approximation number of a covering approximation space is equivalent to the rank of matrix. In order to have a better understanding of covering-based rough set quantitatively, it is necessary to investigate the approximation number function.

In this paper, we propose a measurement to study covering-based rough sets quantitatively. Firstly, we define the lower approximation number, and study some properties of the lower approximation number. Secondly, with the low approximation number, we establish a lattice and two semilattice structures in covering-based rough set. Finally, a pair of matroid approximation operators  is constructed. What’s more, we compare the matroid approximation operators with a pair of lattice approximation operators, and the pair of matroid operators exhibit some quantitative characteristic.

The rest of the paper is organized as follows. Section 2 reviews some fundamental concepts to be used in this paper. Section 3 presents some quantitative analysis for covering-based rough set. Section 4 gives the conclusion.

2 Preliminaries

This section, we present some fundamental concepts to be used in this paper. First, the concept of the poset is given.

Definition 1

(Poset [23]). A relation \(\le \) on a set P is called a partial order if it is reflexive, antisymmetric and transitive. A set P together with a partial order \(\le \) is called a poset, denoted simply by \((P,\le )\).

In the following, we introduce the semilattice, which is widely applied to many areas.

Definition 2

(Semilattice [23]). An upper-semilattice is a poset (PR) in which every subset \(\{a,b\}\) has a least upper bound \(a \vee b\). A lower-semilattice is a poset (PR) in which every \(\{a,b\}\) has a greatest lower bound \(a \wedge b\). The upper-semilattice and the lower-semilattice are also called semilattices.

Based on the semilattice, the lattice is presented. In fact, a lattice is a poset (PR) which is an upper-semilattice and a lower-semilattice.

Definition 3

(Lattice [23]). A lattice is a poset \((L,\le )\) in which every subset \(\{x,y\}\) has a least upper bound \(x\vee y\) and a greatest lower bound \(x\wedge y\).

The operations \(\vee \) and \(\wedge \) are disjunction and conjunction respectively, and \((L,\wedge ,\vee )\) is an algebraic system induced by the lattice \((L,\le )\). In a lattice, for any set \(\{x,y\}\), and for any \(z\in L\), if \(x\le z\) and \(y\le z\), the z is called an upper bound of \(\{x,y\}\). The set \(\{x,y\}\) have more than one upper bound, and the least upper bound is denoted by \(x\vee y\). Similarly, the greatest lower bound of \(\{x,y\}\) is denoted by \(x\wedge y\). Generally, we also call \((L,\wedge ,\vee )\) a lattice. When there is no confusion, we call L a lattice.

Several special types of lattice are introduced in the following.

Definition 4

(Bounded, distributive, modular, and complemented lattices [23]). (i) A lattice \((L,\wedge ,\vee )\) is bounded if there exist \(\bot ,\top \in L\) such that \(\bot \le x\le \top \) for all \(x\in L\). Generally \((L,\wedge ,\vee ,\bot ,\top )\) is used to denote a bounded lattice \((L,\wedge ,\vee )\), where \(\top \) is the greatest element and \(\bot \) its least element.

(ii) A lattice \((L,\wedge ,\vee )\) is distributive if \(x\vee (y\wedge z)=(x\vee y)\wedge (x\vee z)\), and \(x\wedge (y\vee z)=(x\wedge y)\vee (x\wedge z)\) for all \(x,y,z\in L\).

(iii) A lattice \((L,\wedge ,\vee )\) is modular if \(x\ge z\), we have \(x\wedge (y\vee z)=(x\wedge y)\vee z\) for all \(x,y,z\in L\).

(iv) A lattice \((L,\wedge ,\vee )\) is complemented if, for any \(x\in L\), there exists \(x^{'}\in L\), such that \(x\vee x^{'}=\top \) and \(x\wedge x^{'}=\bot \), we call \(x^{'}\) a complement of x in L.

This paper we focus on bounded lattice. In order to better understand bounded lattice, the following we give an example (Fig. 1).

Example 1

Let \(L=\{a,b,c,d,e\}\). A bounded lattice \((L,\wedge ,\vee ,\bot ,\top )\) is shown in Fig. 1. In fact, \(a=\bot \) and \(e=\top \).

Fig. 1.
figure 1

.

The following we will give the definition of the boolean algebra. In fact, a boolean algebra is a special lattice that forms a mathematical structure with high abstraction and broad application.

Definition 5

(Boolean algebra [23]). Let \((L,\wedge ,\vee ,\bot ,\top )\) be a bounded lattice. Suppose \((L,\wedge ,\vee ,\bot ,\top )\) is a distributive and complemented lattice, then \((L,\wedge ,\vee ,\bot ,\top )\) is called a Boolean algebra.

Note that in a boolean algebra \((L,\wedge ,\vee ,\bot ,\top )\), any element x has a unique complement which we denote by \(x^{'}\).

The following definition introduce a covering on a boolean algebra.

Definition 6

(Covering [24]). Let \((L,\wedge ,\vee ,\bot ,\top )\) be a bounded lattice and let \(C\subseteq L-\{\bot \}\). C is called a covering of L if \(\vee _{x\in C}x=\top \). Further, if C is a covering of L, and \(x\wedge y=\bot \) for all \(x,y\in C\), \(x\ne y\), then C is called a partition of L.

An example is given to illustrate the definition of covering in the following.

Example 2

(Continued from Example 1). A bounded lattice \((L,\wedge ,\vee ,\bot ,\top )\) is shown in Fig. 1. Let \(L=\{a,b,c,d,e\}\) and \(C=\{b,c,d\}\). Since \(\vee _{x\in C}x=b\vee c \vee d=\top \), we know C is a covering of L. However, \(c\wedge d=c\ne \bot \), then C is not a partition of L.

In the following definition, a pair of approximation operators is introduced.

Definition 7

[24] Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra and let \(C\subseteq L-\{\bot \}\). For all \(x\in L\),

$$\begin{aligned} \underline{apr}_{C}^{\varTheta }(x)=\vee \{c\in C|c\le x\}, \end{aligned}$$
$$\begin{aligned} \overline{apr}_{C}^{\varTheta }(x)=(\underline{apr}_{C}(x^{'}))^{'}. \end{aligned}$$

are called the lower, upper lattice approximation of x with respect to C, respectively. When there is no confusion, we omit the subscript C.

3 The Lower Approximation Number

In this section, we first present some properties of the lower approximation number. Based on the lower approximation number, we establish a lattice and two semilattice structures in covering-based rough set. Finally, a pair of matroid approximation operators is established with the lower approximation number.

3.1 Properties of the Lower Approximation Number

Inspired by the approximation operators in rough sets, the low approximation number based on bounded lattices is defined as follow.

Definition 8

(The lower approximation number). Let \((L,\wedge ,\vee ,\bot ,\top )\) be a bounded lattice, and let C be a covering of L. For all \(x\in L\),

$$\begin{aligned} g_{C}(x)=|\{c\in C|c\le x\}| \end{aligned}$$

is called the lower approximation number of x, and \(g_{C}\) is called the lower approximation number function with respect to C. When there is no confusion, we omit the subscript C.

Note that the low approximation number is defined for a bounded lattice, so we can study covering-based rough set based on bounded lattices within this generalized framework. In the rest of this paper, we restrict ourselves to bounded lattice. To better understand the lower approximation number, an example is given.

Example 3

(Continued from Example 1). A bounded lattice \((L,\wedge ,\vee ,\bot ,\top )\) is shown in Fig. 1. Let \(L=\{a,b,c,d,e\}\) and \(C=\{a,b,d\}\). Since \(\vee _{x\in C}x=a\vee b \vee d=\top \), we know C is a covering of L. We will compute the lower approximation numbers of c and e. As \(a\le c\), then \(g_{C}(c)=|\{a\}|=1\), and \(a\le e,b\le e,d\le e\), so \(g_{C}(e)=|\{a,b,d\}|=3\).

The following proposition will give some key properties of the lower approximation number, which is very important to analyze covering-based rough set quantitatively.

Proposition 1

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra, and let C be a covering of L. The following properties of the lower approximation number function \(g_{C}\) hold:

(1) \(g_{C}(\perp )=0\);

(2) for all \(x,y\in L\), if \(x\le y\), \(g_{C}(x)\le g_{C}(y)\);

(3) for all \(x,y\in L\), \(g_{C}(x)+g_{C}(y)\le g_{C}(x\vee y)+g_{C}(x\wedge y).\)

Proof

(1) :  For all \(c\in C\), we have \(\bot \le c\), so \(g_{C}(\bot )=0\).

(2) :  For all \(a\in \{c\in C|c\le x\}\), we have \(a\le x\). If \(x\le y\), then \(a\le y\). Therefore, \(a\in \{c\in C|c\le y\}\). This prove \(\{c\in C|c\le x\}\subseteq \{c\in C|c\le y\}\). Thus \(|\{c\in C|c\le x\}|=g(x)\le g(y)=|\{c\in C|c\le y\}|\).

(3) :  For all \(a\in \{c\in C|c\le x\}\) or \(a\in \{c\in C|c\le y\}\), we have \(a\le x\) or \(a\le y\), so \(a\le x\vee y\). Then \(a\in \{c\in C|c\le x\vee y\}\). For all \(a\in \{c\in C|c\le x\}\) and \(a\in \{c\in C|c\le y\}\), we have \(a\le x\) and \(a\le y\), so \(a\le x\wedge y\). Then \(a\in \{c\in C|c\le x\wedge y\}\). Therefore \(g_{C}(x)+g_{C}(y)\le g_{C}(x\vee y)+g_{C}(x\wedge y)\).

Based on Definition 8, we present a necessary and sufficient condition for \(g_{C}(x)=n\).

Proposition 2

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L and \(|C|=n\). For any \(x\in L\), \(g_{C}(x)=n\) if and only if \(x=\top \).

Proof

\(\Leftarrow :\) It is straightforward.

\(\Rightarrow :\) If \(g_{C}(x)=n\), then \(\forall c_{i}\in C\), we have \(c_{i}\le x\). Hence \(\vee _{c_{i}\in C}c_{i}\le x\). Since C is a covering of L, according to Definition 6, we know that \(\vee _{c_{i}\in C}c_{i}=\top \). Therefore, \(x=\top \).

3.2 Lattice Establish with the Lower Approximation Number

It is known to us all that lattices are important algebraical structures, and have a variety of applications in the real world. This section we will establish two semilattice structures with lower approximation number. Moreover, we establish a boolean algebra.

Definition 9

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra, and let C be a covering of L. We define two sets as follow:

$$\begin{aligned} T_{1}=\{y\in L|(x\le y)\wedge (g_{C}(x)=g_{C}(y))\}, \end{aligned}$$
$$\begin{aligned} T_{2}=\{y\in L|(y\le x)\wedge (g_{C}(x)=g_{C}(y))\}. \end{aligned}$$

Based on Definition 9, we will get two semilattice structures. The following will give the proof.

Proposition 3

\((T_{1},\wedge )\) and \((T_{2},\vee )\) are semilattice.

Proof

First for all \(y_{1},y_{2}\in T_{1}\), we need to prove \(y_{1}\wedge y_{2}\in T_{1}\). Since \(y_{1},y_{2}\in T_{1}\), then \(x\le y_{1}\) and \(x\le y_{2}\), i.e., \(x\le y_{1}\wedge y_{2}\). From \(x\le y_{1}\wedge y_{2}\le y_{1}\), we know \(g_{C}(x)\le g_{C}(y_{1}\wedge y_{2})\le g_{C}(y_{1})\). For all \(y_{1}\in T_{1}\), \(g_{C}(y_{1})=g_{C}(x)\), that is, \(g_{C}(y_{1}\wedge y_{2})=g_{C}(x)\). Therefore, \(y_{1}\wedge y_{2}\in T_{1}\). Similarly, we can prove \(y_{1}\vee y_{2}\in T_{2}\) for all \(y_{1},y_{2}\in T_{2}\).

In order to better establish lattice structure, we give the following definition.

Definition 10

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L and \(|C|=n\). \(T_{3}\) is defined as follow:

$$\begin{aligned} T_{3}=\{x\in L|g_{C}(x)+g_{C}(x^{'})=n\}. \end{aligned}$$

In fact \(T_{3}\) is not only a lattice, but also a boolean algebra. The following proposition will give the proof.

Proposition 4

\((T_{3},\wedge ,\vee ,\bot ,\top )\) is a Boolean algebra.

Proof

(i) We need to prove \((T_{3},\wedge ,\vee )\) is a lattice. For all \(x_{1},x_{2}\in T_{3}\), we have \(g_{C}(x_{1})+g_{C}(x_{1}^{'})=n\) and \(g_{C}(x_{2})+g_{C}(x_{2}^{'})=n\). According to Proposition 1, we know \(g_{C}(x_{1})+g_{C}(x_{1}^{'})+g_{C}(x_{2})+g_{C}(x_{2}^{'})\le g_{C}(x_{1}\wedge x_{2})+g_{C}(x_{1}\vee x_{2})+g_{C}(x_{1}^{'}\wedge x_{2}^{'})+g_{C}(x_{1}^{'}\vee x_{2}^{'})\). So \(g_{C}(x_{1}\wedge x_{2})+g_{C}(x_{1}\vee x_{2})+g_{C}(x_{1}^{'}\wedge x_{2}^{'})+g_{C}(x_{1}^{'}\vee x_{2}^{'})=2n\). In fact, \(g_{C}(x_{1}^{'}\wedge x_{2}^{'})=g_{C}((x_{1}\vee x_{2})^{'})\), \(g_{C}(x_{1}^{'}\vee x_{2}^{'})=g_{C}((x_{1}\wedge x_{2})^{'})\). It means that \(g_{C}(x_{1}\wedge x_{2})+g_{C}((x_{1}\wedge x_{2})^{'})=n\) and \(g_{C}(x_{1}\vee x_{2})+g_{C}((x_{1}\vee x_{2})^{'})=n\). Thus \(x_{1}\vee x_{2}\in T_{3},x_{1}\wedge x_{2}\in T_{3}\). This proves \((T_{3},\wedge ,\vee )\) is a lattice.

(ii) It is easy to know that for all \(x\in T_{3}\), \(\bot \le x\le \top \). Hence \((T_{3},\wedge ,\vee )\) is bounded lattice.

(iii) For all \(x,y,z\in T_{3}\), we know \(x,y,z\in L\). Since \((L,\wedge ,\vee ,\bot ,\top )\) is a Boolean algebra, then for all \(x,y,z\in L\), \(x\vee (y\wedge z)=(x\vee y)\wedge (x\vee z)\), and \(x\wedge (y\vee z)=(x\wedge y)\vee (x\wedge z)\). Thus \((T_{3},\wedge ,\vee )\) is a distributive lattice.

(iv) For all \(x\in T_{3}\), we know \(g_{C}(x)+g_{C}(x^{'})=n\). Then \(g_{C}(x^{'})+g_{C}(x^{''})=g_{C}(x^{'})+g_{C}(x)=n\), that is, \(x^{'}\in T_{3}\). Thus \((T_{3},\wedge ,\vee )\) is a complemented lattice.

From \((i)-(iv)\), we have the conclusion that \((T_{3},\wedge ,\vee ,\bot ,\top )\) is a Boolean algebra.

3.3 A Pair of Matroid Approximation Operators

In this section, a pair of matroid approximation operators is defined using the lower approximation number. Then, we investigate some properties of the pair of matroid operators. What’s more, compared with a pair of lattice approximation operators, the pair of matroid operators exhibit some quantitative characteristic. First of all, we give the the definition of matroid approximation operators as follow.

Definition 11

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L and \(|C|=n\). For all \(x\in L\),

$$\begin{aligned} \underline{apr}_{C}(x)=\wedge \{l\in L|g_{C}(x)=g_{C}(x\wedge l)\}, \end{aligned}$$
$$\begin{aligned} \overline{apr}_{C}(x)=(\underline{apr}_{C}(x^{'}))^{'}. \end{aligned}$$

are called the lower, upper matroid approximation of x with respect to C, respectively. When there is no confusion, we omit the subscript C.

Based on Definition 11, we have some new properties of the matroid approximation operators. Therefore, a quantitative viewpoint to study covering-based rough sets is given.

Proposition 5

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L and \(|C|=n\). The following properties hold:

(1) for all \(x\in L\), \(g(x)=g(\underline{apr}(x));\)

(2) for all \(x,y\in L\), if \(x\le y\) and \(g(x)=g(y)\), then \(\underline{apr}(y)\le x;\)

(3) for all \(x,y\in L\), if \(x\le y\) and \(g(x)<g(y)\), then \(\underline{apr}(x)\ne \underline{apr}(y).\)

Proof

(1): For all \(x\in L\), suppose that \(a,b\in \{l\in L|g(x)=g(x\wedge l)\}\) and \(a\ne b\), so \(g(x)=g(x\wedge a)\), \(g(x)=g(x\wedge b)\). According to proposition 1, we know \(g(x\wedge a)+g(x\wedge b)\le g((x\wedge a)\vee (x\wedge b))+g((x\wedge a)\wedge (x\wedge b))\). Since \(g((x\wedge a)\wedge (x\wedge b))=g(x\wedge a\wedge b)\), and \(g(x)=g(x\wedge a)\le g((x\wedge a)\vee (x\wedge b))\le g(x)\), then \(g((x\wedge a)\vee (x\wedge b))=g(x)\). Thus \(g(x)+g(x)=g(x\wedge a)+g(x\wedge b)\le g(x)+g(x\wedge a\wedge b)\), that is \(g(x\wedge a\wedge b)=g(x)\). Therefore, \(g(\underline{apr}(x))=g(x\wedge a\wedge b\wedge \cdots )=g(x)\).

(2): Since \(x\le y\), then \(x\wedge y=x\), that is, \(g(x\wedge y)=g(x)\). As \(g(x\wedge y)=g(x)=g(y)\), we know \(x\in \{l\in L|g(y)=g(y\wedge l)\}\). Hence \(\underline{apr}(y)=\wedge \{l\in L|g(y)=g(y\wedge l)\}\le ~x\).

(3): If \(\underline{apr}(x)=\underline{apr}(y)\), then \(g(x)=g(\underline{apr}(x))=g(\underline{apr}(y))=g(y)\), which contradicts \(g(x)<g(y)\). Therefore \(\underline{apr}(x)\ne \underline{apr}(y)\).

The following proposition shows that the matroid approximation operators inherit some traditional properties of approximation operators such as monotony. However, the idempotence does not hold.

Proposition 6

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L and \(|C|=n\). The following properties of the matroid approximation operators \(\underline{apr},\overline{apr}\) hold: for all \(x,y\in L\),

\((1)\underline{apr}(\bot )=\bot ,\overline{apr}(\bot )=\bot ;\)

\((2)\underline{apr}(\top )=\top ,\overline{apr}(\top )=\top ;\)

\((3)\underline{apr}(x)\le x,x\le \overline{apr}(x);\)

\((4)\underline{apr}(\underline{apr}(x))\le \underline{apr}(x),\overline{apr}(x)\le \overline{apr}(\overline{apr}(x)).\)

Proof

Because of duality, we only need to prove that these properties hold for the matroid lower approximation operator.

(1) and (2): They are both straightforward.

(3): For all \(x\in L\), since \(g(x)=g(x\wedge x)\), we have \(x\in \{l\in L|g(x)=g(x\wedge l)\}\). Therefore, \(\wedge \{l\in L|g(x)=g(x\wedge l)\}\le x\), that is, \(\underline{apr}(x)\le x\).

(4): For all \(a\in \{l\in L|g(\underline{apr}(x))=g(\underline{apr}(x)\wedge l)\}\), we have \(g(\underline{apr}(x))=g(\underline{apr}(x)\wedge a)\). Since \(g(x)=g(\underline{apr}(x)\wedge a)\le g(x\wedge a)\le g(x)\), then we know \(g(x)=g(x\wedge a)\), which implies that \(a\in \{l\in L|g(x)=g(x\wedge l)\}\). Thus \(\{l\in L|g(\underline{apr}(x))=g(\underline{apr}(x)\wedge l)\}\subseteq \{l\in L|g(x)=g(x\wedge l)\}\). As \(\underline{apr}(\underline{apr}(x))=\wedge \{l\in L|g(\underline{apr}(x))=g(\underline{apr}(x)\wedge l)\}\) and \(\underline{apr}(x)=\wedge \{l\in L|g(x)=g(x\wedge l)\}\). Therefore \(\underline{apr}(\underline{apr}(x))\le \underline{apr}(x)\).

Based on the lower approximation operators, we investigate the properties of the lattice approximation operators.

Proposition 7

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L. For all \(x,y\in L\), if \(x\le y\) and \(g(x)=g(y)\), then

(1) \(\underline{apr}^{\varTheta }(x)=\underline{apr}^{\varTheta }(y);\)

(2) \(\underline{apr}^{\varTheta }(x\wedge y)=\underline{apr}^{\varTheta }(x\vee y)\).

Proof

(1): For all \(x,y\in L\), if \(x\le y\), then \(\{c\in C|c\le x\}\subseteq \{c\in C|c\le y\}\). Since \(g(x)=g(y)\), we know \(|\{c\in C|c\le x\}|=| \{c\in C|c\le y\}|\), that is \(\{c\in C|c\le x\}= \{c\in C|c\le y\}\). Therefore, \(\vee \{c\in C|c\le x\}=\underline{apr}^{\varTheta }(x)=\underline{apr}^{\varTheta }(y)=\vee \{c\in C|c\le y\}\).

(2): It is straightforward.

In the following, the relationship between the lower matroid approximation operator and the lower lattice approximation operator is studied.

Proposition 8

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L. For all \(x,y\in L\), if \(x\le \underline{apr}^{\varTheta }(y)\), then \(\underline{apr}(x)\le y\).

Proof

For all \(z\in \underline{apr}^{\varTheta }(y)\), we know \(z\le y\). Since \(x\le \underline{apr}^{\varTheta }(y)\), then \(x\le y\), that is, \(x\wedge y=x\). Hence \(g(x\wedge y)=g(x)\), that is \(y\in \{l\in L|g(x\wedge l)=g(x)\}\). As \(\underline{apr}(x)=\wedge \{l\in L|g(x\wedge l)\). Therefore, \(\underline{apr}(x)\le y\).

Similarly, by duality, the relation between the upper matroid approximation operator and the upper lattice approximation operator is also investigated.

Proposition 9

Let \((L,\wedge ,\vee ,\bot ,\top )\) be a Boolean algebra. Let C be a covering of L. For all \(x,y\in L\), if \(\overline{apr}^{\varTheta }(x)\le y\), then \(x\le \overline{apr}(y)\).

4 Conclusion

This paper further studies the concept of the lower approximation number function, and shows that the covering-based rough set can be characterized by the lower approximation number. On one hand, we investigate some key properties of the lower approximation number. On the other hand, we establish some lattice structures based on the lower approximation number. Moreover, a pair of matroid approximation operators is constructed with the lower approximation number. Finally, we investigate the relation between the pair of matroid approximation operators and a pair of lattice approximation operators. These studies illustrate that the lower approximation number can be viewed as a quantitative tool for analyzing the covering-based rough set.