<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">A lattice-free concept lattice update algorithm based on * CbO</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author role="corresp">
							<persName><forename type="first">Jan</forename><surname>Outrata</surname></persName>
							<email>jan.outrata@upol.cz</email>
							<affiliation key="aff0">
								<orgName type="department">Dept. Computer Science</orgName>
								<orgName type="institution">Palacky University</orgName>
								<address>
									<addrLine>Olomouc 17. listopadu 12</addrLine>
									<postCode>CZ-77146</postCode>
									<settlement>Olomouc</settlement>
									<country key="CZ">Czech Republic</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">A lattice-free concept lattice update algorithm based on * CbO</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">5E49B266122516EDB950A767D4F9B98B</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T04:40+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Updating a concept lattice when introducing new objects to input data can be done by any of the so-called incremental algorithms for computing concept lattice of the data. The algorithms use and update the lattice while introducing new objects one by one. The present concept lattice of input data without the new objects is thus required before the update. In this paper we propose an efficient algorithm for updating the lattice from the present and new objects only, not requiring the possibly large concept lattice of present objects. The algorithm results as a modification of the CbO algorithm for computing the set of all formal concepts, or its modifications like FCbO, PCbO or PFCbO, to compute new and modified formal concepts only and the changes of the lattice order relation when input data changes. We describe the algorithm and present an experimental evaluation of its performance and a comparison with AddIntent incremental algorithm for computing concept lattice.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>In applications of Formal Concept Analysis (FCA) <ref type="bibr" target="#b2">[3,</ref><ref type="bibr" target="#b15">16]</ref> the input data are often not fixed during the life of the application and concept lattice is not computed from the data once. The changes of input data result in corresponding changes of concept lattice of the data and to compute the new, changed, concept lattice we would like to compute the changes only and "update" the present lattice instead of recomputing the whole lattice from new, changed, input data.</p><p>The particular change of object-attribute relational data processed in FCA, namely the introduction of new objects (described by particular values of attributes), can be handled by the so-called incremental algorithms for computing concept lattice, Norris's <ref type="bibr" target="#b12">[13]</ref>, Object Intersections <ref type="bibr" target="#b1">[2]</ref> or, more recent, AddIntent <ref type="bibr" target="#b11">[12]</ref>, for instance, or the incremental lattice update algorithms presented in <ref type="bibr" target="#b1">[2]</ref>. The algorithms build/update the lattice incrementally by adding objects of input data, one by one, to present concept lattice computed so far from already processed objects, starting from the first object and empty concept lattice.</p><p>Support by the ESF project No. CZ.1.07/2.3.00/20.0059, the project co-financed by the European Social Fund and the state budget of the Czech Republic, is acknowledged.</p><p>The lattice is required for the computation and the present lattice of input data before the introduction of new objects would be required for the update of the lattice when adding the objects. However, that lattice can be large, the application may not store it (it can be even impossible due to space requirements) or it can be stored at different (presentation) place than the computation place, or there can be other drawbacks and difficulties of keeping the whole lattice. Moreover, handling of the other changes of input data like deletion or alteration (i.e. changing of values of attributes) of existing objects would call for more or less (depending on the particular algorithm) extensive modifications of the incremental algorithm.</p><p>In the following we propose efficient algorithm for updating the concept lattice, i.e. computing the lattice changes resulting by input data changes, from the present (already processed) and new objects only, not requiring the concept lattice of present objects. The algorithm results as a modification of Kuznetsov's Close-by-One (CbO) algorithm <ref type="bibr" target="#b7">[8]</ref><ref type="bibr" target="#b8">[9]</ref><ref type="bibr" target="#b9">[10]</ref> for computing the set of all formal concepts or any of its recent derivatives including FCbO <ref type="bibr" target="#b13">[14]</ref>, PCbO <ref type="bibr" target="#b6">[7]</ref> or PFCbO <ref type="bibr" target="#b5">[6]</ref>. When introducing new objects to input data the modified algorithm computes and outputs the resulting new and modified formal concepts only and the respective changes in the lattice order relation (pairs of formal concepts to be created or deleted). Note that (1) new formal concept here is a concept in new data with (some of the) introduced objects in its object set (extent) and attribute set (intent) not equal to intent of any concept in the data before the update and modified formal concept is a concept in new data with the same intent as some existing concept in data before update and enlarging its extent by (some of the) introduced objects, other formal concepts in new data are called old; (2) since the concept lattice (before update) is not required by the algorithm the computed changes in the lattice order relation are output only and have to be applied where the (part of the) lattice is stored and (3) introducing new objects to input data cannot result in removal of formal concepts from the concept lattice <ref type="bibr" target="#b3">[4,</ref><ref type="bibr" target="#b14">15]</ref>. Moreover, considering instead the new objects to be some of the objects of input data to be deleted from the data, the present objects to be the set of objects of input data after the deletion and the computed formal concepts to be resulting concepts to remove or modify together with the "inverse" changes of the lattice order relation, we have easily handled also the change of input data consisting of deleting existing objects. The change by altering objects can be handled by first deleting the objects and then by introducing the altered objects, interpreting the output formal concepts accordingly. Finally, changes of input data by introducing new and deleting or altering existing attributes are completely analogical and can be handled (better than by altering objects) by an algorithm re-described with objects and attributes switched or by the present algorithm with objects and attributes switched in input data (transposed data) and in output formal concepts.</p><p>The algorithm is described in Section 2, for the case of changing input data by introducing new objects, including an illustrative example. In Section 3 we present an experimental evaluation of performance of the algorithm and a com-parison with AddIntent algorithm <ref type="bibr" target="#b11">[12]</ref>, which is considered one of the up-to-date most efficient incremental algorithms for computing concept lattice.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">The algorithm</head><p>We describe the algorithm as a modification of Fast Close-by-One (FCbO) algorithm <ref type="bibr" target="#b13">[14]</ref>, as it happens to be one of the up-to-date most efficient (sequential/serial) derivatives of CbO <ref type="bibr" target="#b4">[5]</ref>. In essence, the modification equally applies also to other CbO derivatives and CbO itself. A deep knowledge of FCbO is not required in the description, however, basic knowledge is beneficial. The modification consists of two parts: (1) computing new and modified formal concepts only when introducing new objects to input data and (2) determining changes in the lattice order relation. We describe the parts separately in Sections 2.1 and 2.2.</p><p>In the descriptions below we assume the reader is familiar with basics of FCA, see <ref type="bibr" target="#b1">[2,</ref><ref type="bibr" target="#b2">3]</ref> for reference. Input object-attribute data (formal context) is denoted by the triplet X, Y, I , with assumed finite nonempty sets of objects X = {0, 1, . . . , m} and attributes Y = {0, 1, . . . , n}, and I ⊆ X × Y being an incidence relation with x, y ∈ I saying that object x ∈ X has attribute y ∈ Y . Concept-forming operators defined on I as usual <ref type="bibr" target="#b2">[3]</ref> are denoted by ↑ I : 2 X → 2 Y and ↓ I : 2 Y → 2 X , B(X, Y, I) denotes the set of all formal concepts in I and ≤ the partial order relation on B(X, Y, I) forming together a concept lattice.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">New and modified concepts</head><p>In this section we describe how to compute new and modified formal concepts when introducing new objects to input data. Let us suppose we are introducing to input data X, Y, I (finite nonempty set of) new objects X N = {m + 1, . . . , m } not present in X (X N ∩ X = ∅), sharing (finite nonempty set of) attributes Y N = {i, . . . , k}. We do not assume any overlap of Y N and Y (Y N can contain new attributes not present in Y ) but in usual scenario of introducing new objects to input data we have Y N ⊆ Y . Denote the incidence relation between X N and Y N by N ⊆ X N × Y N and the new input data with new objects added by the triplet X , Y , I , where</p><formula xml:id="formula_0">X = X ∪ X N = {0, . . . , m }, Y = Y ∪ Y N = {0, . . . , n }, n = k if k &gt; n and n = n otherwise, and I ⊆ X ×Y such that I ∩(X ×Y ) = I, I ∩ (X N × Y N ) = N and I ∩ (X × (Y N \ Y )) = I ∩ (X N × (Y \ Y N )) = ∅.</formula><p>Hence I is the union of I and N both extended to X and Y .</p><p>First, observe that attributes of Y N which are not shared by any of objects X N cannot participate in any new nor modified formal concept of B(X , Y , I ), with the exception of formal concept Y ↓ I , Y . Hence we will assume in the following, without loss of generality, that all attributes of Y N are shared by at least one object from X N . For an algorithm for computing new and modified formal concepts only it is then sufficient to process only attributes Y N . Now, for any Procedure UpdateFastGenerate-From( A, B , y, {N y | y ∈ Y }), cf. <ref type="bibr" target="#b13">[14]</ref> // list A, B , e.g., print it on screen or store it </p><formula xml:id="formula_1">B = B ↓ I ↑ I ⊆ Y N , if B = B = B ↓ I ↑ I then the formal concept A , B ∈ B(X ,</formula><formula xml:id="formula_2">1 if (A ∩ X) ↑ I = B then 2 if (A ∩ X) ⊂ A then 3 list A, B</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A , B by objects</head><formula xml:id="formula_3">A \ A ⊆ X N if A ⊃ A (otherwise A , B = A , B is old). Otherwise, if B ⊂ B = B ↓ I ↑ I (</formula><p>since the ⊃ inclusion cannot happen since X ⊃ X) then the formal concept A , B ∈ B(X , Y , I ) is a new formal concept and the formal concept A , B ∈ B(X, Y, I) is called its generator <ref type="bibr" target="#b3">[4,</ref><ref type="bibr" target="#b14">15]</ref>. In both cases, A ∩ X = A .</p><p>We use the above presented ideas to modify FCbO algorithm described in <ref type="bibr" target="#b13">[14]</ref> as recursive procedure FastGenerateFrom. The procedure computes and lists the set B(X, Y, I) of all formal concepts of input data X, Y, I . We modify the procedure to compute and list the new and modified formal concepts of X , Y , I only when adding new objects X N described by attributes Y N to X, Y, I . The modified procedure UpdateFastGenerateFrom is depicted in Algorithm 1. The original procedure FastGenerateFrom is thoroughly described in <ref type="bibr" target="#b13">[14]</ref> so we describe only the modifications introduced in Update-FastGenerateFrom.</p><p>The procedure accepts as its arguments a formal concept A, B (an initial formal concep t), an attribute y ∈ Y N (first attribute to be processed) and a set {N y ⊆ Y | y ∈ Y } of subsets of attributes Y (see <ref type="bibr" target="#b13">[14]</ref> for the meaning of the set), and uses local variables queue as a temporary storage for computed formal concepts and M y (y ∈ Y ) as sets of attributes which are used in pl ace of the third argument for further invocations of the procedure. After invocation, the procedure recursively descends through the space of new and modified formal concepts of X , Y , I resulted by adding new objects X N described by attributes Y N to X, Y, I .</p><p>When invoked with A, B and y ∈ Y N (first attribute to be processed) and</p><formula xml:id="formula_4">{N y | y ∈ Y }, UpdateFastGenerateFrom first checks if (A ∩ X) ↑ I equals B (line 1</formula><p>), in which case, if further (A∩X) ⊂ A (line 2), A, B is a modified formal concept (see above) and it is listed as such. In the other case, A, B is a new formal concept. Then the procedure behaves exactly as the original procedure FastGenerateFrom, see <ref type="bibr" target="#b13">[14]</ref> for full description, with the exception that it goes through attributes j ∈ Y N only (line 13). Let us recall that the set Y j ⊆ Y is defined by</p><formula xml:id="formula_5">Y j = {y ∈ Y | y &lt; j}.</formula><p>In order to list all new and modified formal concepts of X , Y , I which are not formal concepts of X, Y, I , each of them exactly once, we invoke Up-dateFastGenerateFrom with ∅ ↓ I , ∅ ↓ I ↑ I , y being the first attribute in Y N and {N y = ∅ | y ∈ Y } as its initial arguments. The correctness of Algorithm 1 follows from the correctness of FCbO algorithm <ref type="bibr" target="#b13">[14]</ref> and the above description of its modification.</p><p>Example 1. We illustrate Algorithm 1 on the following example. Consider an input data given in an usual way (rows correspond to objects, columns to attributes and table entries indicate whether an object has an attribute) by the upper part, rows 0 to 2, of the table depicted below (left). The data induces 8 formal concepts C 1 to C 8 depicted on the right.</p><formula xml:id="formula_6">I 0 1 2 3 4 5 0 × × × 1 × × × × 2 × × × 3 × × × 4 × × × × C1 = {0, 1, 2}, ∅ , C5 = {0}, {0, 2, 3} , C2 = {0, 2}, {0} , C6 = {1, 2}, {1, 5} , C3 = {2}, {0, 1, 5} , C7 = {1}, {1, 3, 4, 5} , C4 = ∅, {0, 1, 2, 3, 4, 5} , C8 = {0, 1}, {3} . C * 1 = {0, 1, 2, 3, 4}, ∅ , C * 6 = {1, 2, 3}, {1, 5} , C * 2 = {0, 2, 4}, {0} , C11 = {1, 3}, {1, 3, 5} , C * 5 = {0, 4}, {0, 2, 3} , C * 8 = {0, 1, 3, 4}, {3} , C9 = {4}, {0, 2, 3, 5} , C12 = {1, 3, 4}, {3, 5} , C10 = {2, 4}, {0, 5} , C13 = {1, 2, 3, 4}, {5} .</formula><p>Now we introduce to the data two new objects represented by rows 3 and 4 of the lower part of the table. The introduction results in induction of 5 new formal concepts C 9 to C 13 and 5 modified formal concepts C * depicted below the old formal concepts. The concepts are listed down-right in order in which they are listed by procedure UpdateFastGenerateFrom.</p><p>Remark 1. Algorithm 1 can be easily used to list all formal concepts of input data X , Y , I incrementally, i.e. processing the data object by object, as incremental algorithms for computing concept lattice do. Namely, we invoke procedure UpdateFastGenerateFrom with initial arguments repeatedly for each</p><formula xml:id="formula_7">object i ∈ X = {0, . . . , n }, setting X, Y, I := {0, . . . , i − 1}, i−1 j=0 {j} ↑ I , I ∩ ({0, . . . , i − 1} × i−1 j=0 {j} ↑ I ) , X N := {i}, Y N := {i} ↑ I and N := X N × Y N</formula><p>for each invocation, and filter out listed modified formal concepts listing new formal concepts only. Such a computation of all formal concepts of data is, however, quite inefficient due to many repeated (though efficient) computations of formal concepts listed as modified by procedure UpdateFastGenerateFrom, see the performance evaluation in Section 3. The concepts are, moreover, filtered out from the listing but, however, necessary to compute in order to decide whether a concept is new or modified. Incremental algorithms iterate over (so far) incrementally computed and stored concept lattice to decide and compute new formal concepts which is more efficient. On the other hand, as discussed in introduction Section 1, the concept lattice is required for the computation and must be stored by the incremental algorithms, while Algorithm 1 requires input data only/instead and does not need to store anything.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">Lattice order relation</head><p>In this section we describe how to determine the changes in the concept lattice order relation which need to be done with the addition of new formal concepts to the lattice. Note that the modified formal concepts cannot raise a change in the relation since attribute set (intent) of a modified concept remains unchanged with introduction of new objects to input data, as discussed above.</p><p>In order to determine the changes in concept lattice order relation by the modified FCbO algorithm introduced in previous Section 2.1, we first have to determine the concept lattice order relation alone since the FCbO algorithm, as well as the modification, computes the set of formal concepts of input data only. So, in the following, we describe an extension of Fast Close-by-One (FCbO) algorithm <ref type="bibr" target="#b13">[14]</ref> to determine the concept lattice order relation ≤ on the set of all formal concepts B(X, Y, I) of input data X, Y, I computed by the original algorithm, i.e. making an algorithm for computing concept lattice of X, Y, I . In fact, we will not determine the whole order relation but rather its cover relation. Recall that the cover relation on B(X, Y, I) for ≤ is defined such that a formal concept</p><formula xml:id="formula_8">A 2 , B 2 covers a formal concept A 1 , B 1 if A 1 , B 1 ≤ A 2 , B 2 and there is no formal concept A 3 , B 3 distinct from both A 1 , B 1 and A 2 , B 2 such that A 1 , B 1 ≤ A 3 , B 3 ≤ A 2 , B 2 , i.e</formula><p>. the cover relation is the transitive reduct of ≤. And since we do not store and use the computed concept lattice in our algorithm for updating the lattice, we will not store and use the computed formal concepts nor the concept lattice order cover relation in the extended FCbO algorithm as well. Besides listing the formal concepts, we will only list the pairs of formal concepts to be created or deleted in the relation at the place where it is stored.</p><p>We now describe how to extend FCbO algorithm, as described in <ref type="bibr" target="#b13">[14]</ref>, to determine the concept lattice order cover relation on the set of computed formal concepts, i.e. to compute concept lattice. We can use the pseudocode in Algorithm 1 if we look apart from the modifications to FCbO introduced there (the check whether A, B is new or modified formal concept between lines 1 and 6 and going through attributes from Y N only at line <ref type="bibr" target="#b11">12)</ref>, in which case we obtain the original procedure FastGenerateFrom from <ref type="bibr" target="#b13">[14]</ref>. We will need a little knowledge of FCbO (or CbO) now. The algorithm, see the pseudocode of procedure UpdateFastGenerateFrom, computes a formal concept C, D = A ∩ {j} ↓ , (A ∩ {j} ↓ ) ↑ (lines 14 and 15) from a formal concept A, B for all attributes j ∈ Y such that y ≤ j ≤ n which are not present in B (lines 12 and 13). Certainly C, D ≤ A, B . If C, D passes the canonicity test (line 16) and is listed we list the pair C, D , A, B as to be created in the cover relation in spite of that the formal concepts in it need not fulfill the definition of cover relation. We do it since a test for the fulfilment would be too expensive compared to that in the case of nonfulfilment we will list the pair later again as to be deleted from the relation.</p><p>Next, since further formal concepts C ∩ {j } ↓ , (C ∩ {j } ↓ ) ↑ are computed from C, D in the next recursive invocation of(Update)FastGenerateFrom for attributes j ≥ j + 1 (j + 1 is passed in y argument in the invocation, line 20), in order to list pairs E, F , C, D to be created in the cover relation, we determine formal concepts E, F = C ∩ {i} ↓ , (C ∩ {i} ↓ ) ↑ for all attributes j − 1 ≥ i ≥ 0 (which are not present in D). Due to the order in which formal concepts are computed by FCbO, formal concepts E, F were already computed (and listed) in some of the previous stages of the algorithm before the computation of C, D . However, since formal concepts are not stored in FCbO nor in our extension, we have to compute the concepts E, F repeatedly. Again, formal concepts E, F , C, D in the pairs need not fulfill the definition of cover relation. Here, however, we can use a cheap test known from Lindig's NextNeighbor algorithm <ref type="bibr" target="#b10">[11]</ref>, but limited to attributes 0, . . . , j − 1 ∈ Y . The test is based on the fact that a formal concept <ref type="bibr" target="#b10">[11]</ref>). If the test passes, we list the pair E, F , C, D as to be created in the cover relation. We do it even for formal concepts in the pair which pass the test and do not fulfill the definition of cover relation due to the limitation of the test to attributes 0, . . . , j − 1 ∈ Y for the same reason as above for pairs C, D , A, B . To resolve these cases we simply, together with listing the pair E, F , C, D , list as to be deleted from the relation the pair E, F , A, B which does not fulfill the definition of the relation and could have been listed as to be created in the cover rela-tion in this or the previous stage (previous recursive invocation of procedure (Update)FastGenerateFrom) of the extended algorithm. The justification of this and that all such pairs will be listed as to be deleted from the cover relation is postponed to the full version of the paper.</p><formula xml:id="formula_9">C, D = Y ↓ , Y covers a for- mal concept E, F = C ∩ {i} ↓ , (C ∩ {i} ↓ ) ↑ , i ∈ D iff (C ∩ {k} ↓ ) ↑ = F for all attributes k ∈ F \ D (cf. Theorem 1 in</formula><p>The modified procedure LatticeFastGenerateFrom, which implements the above presented ideas to procedure FastGenerateFrom to extend FCbO algorithm to determine the concept lattice order cover relation on the set of formal concepts computed by FCbO, i.e. to compute concept lattice, is depicted in Algorithm 2. As with the procedure UpdateFastGenerateFrom in Section 2.1, we describe only the modifications introduced to FastGenerateFrom.</p><p>The original FCbO algorithm remains in essence intact, including its arguments and local variables, all the modifications to original procedure FastGen-erateFrom are in the computed formal concept C, D processing part before the recursive call of the procedure (line 28), between lines 16 and 29. First note that the listing of C, D moved from the beginning of the procedure (see Algorithm 1) here, resulting effectively in the need to list the formal concept passed in the initial invocation of the procedure before the invocation. Note also that this move does not change the order of listed formal concepts. Then, after listing the pair C, D , A, B as to be created in the cover relation, between lines 18 and 27, formal concepts E, F = C ∩{i} ↓ , (C ∩{i} ↓ ) ↑ , i ∈ D covered by C, D are re-computed (lines 20 and 21) and listed in pairs E, F , C, D as to be created in the cover relation, for attributes j − 1 ≥ i ≥ 0. The test of covering (line 23) is performed using the min local variable in a slightly modified form borrowed from the original description of Lindig's NextNeighbor algorithm in <ref type="bibr" target="#b10">[11]</ref>. With listing of E, F , C, D , the pair E, F , A, B is listed as to be deleted from the cover relation as discussed above.</p><p>In order to output concept lattice of X, Y, I , that means to list all formal concepts of X, Y, I , each of them exactly once, together with all pairs of formal concepts to create or delete (if the pair exists) in order to obtain the cover relation of concept lattice of X, Y, I , each pair of formal concepts in the cover relation listed exactly once, we first list ∅ ↓ , ∅ ↓↑ and then invoke Lat-ticeFastGenerateFrom with ∅ ↓ , ∅ ↓↑ , y = 0 and {N y = ∅ | y ∈ Y } as its initial arguments. The correctness of Algorithm 2 follows from the correctness of FCbO algorithm <ref type="bibr" target="#b13">[14]</ref> and the above description of its extension. Determination of changes in (the cover relation of) concept lattice of X, Y, I needed to be done in reaction to the introduction of new objects to input data is then a matter of merging the Algorithms 1 and 2. In addition to that we list, for each new formal concept C, D computed from formal concept A, B (or C, D = ∅ ↓ I , ∅ ↓ I ↑ I ) and its generator E, F = C ∩ X, (C ∩ X) ↑ I , with listing of C, D also pairs F ↓ I , F , C, D as to be created in the cover relation and F ↓ I , F , A, B as to be deleted from the cover relation. The pairs will then not be listed in the extension introduced in procedure LatticeFast-GenerateFrom. Due to space limitations of the paper, the merged algorithm is postponed to the full version of the paper.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Algorithm 2:</head><p>Procedure LatticeFastGenerate-From( A, B , y, {N y | y ∈ Y }), cf. <ref type="bibr" target="#b13">[14]</ref> 1 if B = Y or y &gt; n then Next (to the right) to the lattice there is then the concept lattice and below the listing of the 8 formal concepts the listing of the 5 new formal concepts C 9 to C 13 and changes in the cover relation after the introduction of the two new objects to the data. The changes are depicted in bold face in the lattice and the listing of concepts and pairs of concepts in the changes are again listed down-right in order in which would be listed by a procedure describing the merged algorithm. •|X|), because when "introducing" all objects to empty data it actually performs FCbO. The complexity of Algorithm 2 is in the worst case |Y | factor higher but on average it performs a constant factor slower than FCbO (and ramification of the worst-case time complexity of FCbO itself remains a challenging open problem <ref type="bibr" target="#b13">[14]</ref>).</p><p>We have run several experiments to evaluate the performance of Algorithms 1 and 2 and also the merged algorithm. For listing all formal concepts or concept lattice of input data we also compared the algorithms with AddIntent incremental algorithm <ref type="bibr" target="#b11">[12]</ref> for computing concept lattice. In the comparison, we also run Algorithm 1 and the merged algorithm in the way processing input data incrementally as mentioned in Remark 1, for the sake of presenting more fair comparison with true incremental algorithm, though such usage of our algorithms is not efficient (as mentioned in the remark).</p><p>In the experiments, we used our implementations of the presented algorithms in ANSI C, which are modifications of our (performance efficient) FCbO algorithm implementation used for performance evaluation in <ref type="bibr" target="#b13">[14]</ref>, while the implementation of AddIntent algorithm was borrowed from one of the authors of <ref type="bibr" target="#b11">[12]</ref>.  The experiments were run on otherwise idle 32-bit i386 hardware (2× Intel Xeon 3.2 GHz, 3 GB RAM) and we were interested in the performance of all algorithms measured by running time. We have run the algorithms on synthetic randomly generated data with various size and percentage of ×s in the table (fill ratio, with normal distribution) as well as with three selected real benchmark datasets from the UCI Machine Learning Repository <ref type="bibr" target="#b0">[1]</ref>.</p><p>In the first set of experiments we evaluated Algorithm 1 for updating the set of all formal concepts (computing new and modified concepts) when introducing new objects to input data. The performance for introducing a single new object (with randomly generated attributes) to random data with 100000 objects is illustrated in Figure <ref type="figure" target="#fig_3">1</ref>. The graphs show the dependency of time required to compute the update on the number of attributes, of data with fixed table fill ratio 5 % (the graph on the left) and on the fill ratio of tables with fixed 150 attributes (the graph in the middle). Figure <ref type="figure" target="#fig_3">1</ref> (right) then illustrates the performance for introducing a growing number of new objects to random data with the number of objects being 100000 minus the number of the new objects, 200 attributes and 5 % table fill ratio. Note that the number of new objects in the graph is in logarithmic scale. The illustration for the benchmark datasets, of the performance of introducing a growing number of last objects of the data to the data without the objects, is presented in Figure <ref type="figure" target="#fig_4">2</ref> (right). In the graph the solid line is for data with objects ordered as in the original dataset and the dashed line is for data with randomly ordered objects (the time is an average from three orderings).</p><p>We can see from the graphs showing the performance of updating the set of all formal concepts when introducing a single new object to the data (Figure <ref type="figure" target="#fig_3">1</ref>,  left and middle) that this operation is extremely fast compared to computing all formal concepts which took 7061 seconds for 500 attributes and 355 seconds for fill ratio 10 %! The reason is of course computing only a bare fraction of new and modified formal concepts among all concepts. Introducing more new objects (Figure <ref type="figure" target="#fig_3">1</ref>, right, and Figure <ref type="figure" target="#fig_4">2</ref>) is much faster too, up to a limit of the number of new objects depending on the total number of objects in data and then being close to the time of computing all formal concepts (compare for benchmark datasets with FCbO times in Table <ref type="table" target="#tab_1">1</ref>). Note also that running times for mushroom dataset differ for original and random orderings of objects.</p><p>In the second set of experiments we evaluated Algorithm 2 for determining the cover relation of concept lattice of input data. The performance for random data is illustrated in Figure <ref type="figure" target="#fig_5">3</ref>. The graph on the left shows the dependency of required time on the number of attributes, of data with 10000 objects and fixed table fill ratio 5 %, the graph in the middle shows the dependency on the fill ratio of tables with 1000 objects and fixed 100 attributes. The graphs show also the comparison with AddIntent algorithm and the original FCbO algorithm; the solid line is for Algorithm 2, the dashed line is for AddIntent and the dotted line is for FCbO. The performance for the benchmark datasets is presented in Table <ref type="table" target="#tab_1">1</ref>. Again, the times are given for data with objects ordered as in the original dataset and for data with randomly ordered objects (the time is an average from three orderings), and we also put information on size, fill ratio and the number of all formal concepts for each dataset.</p><p>From the graphs we can see that Algorithm 2 considerably outperforms AddIntent algorithm on synthetic random data (in particular for higher fill ratio of data table), while for real benchmark datasets this must not always be the case (T10I4D100K, closely mushroom). This, however, heavily depends on the concept lattice structure (size of the cover relation) of the datasets. We can also Finally, the comparison of performance of Algorithm 1 and the merged algorithm with AddIntent, of computing the set of all formal concepts or concept lattice when processing input data incrementally as mentioned in Remark 1, is presented in Figure <ref type="figure" target="#fig_5">3</ref> (right) and Table <ref type="table" target="#tab_2">2</ref>. The graph shows the performance for the data with 10000 objects and fixed table fill ratio 5 % from the preceding evaluation of Algorithm 2 (the time is an average from three random orderings of objects); the solid line is for the merged algorithm, the dashed line is for AddIntent and the dotted line is for Algorithm 1. In the table we also put, for our algorithms, for the sake of comparison, the numbers of formal concepts computed in total (for original ordering of objects in datasets).</p><p>The results are really interesting here. For the real benchmark datasets AddIntent algorithm significantly outperforms our algorithms, see Table <ref type="table" target="#tab_2">2</ref>. This was expected since, as hinted by Remark 1, the algorithms are not designed and ment to be used as incremental algorithms (processing objects one by one). What is, however, very surprising is that on synthetic random data both Algorithm 1 and the merged algorithm considerably outperform AddIntent and, moreover, computing concept lattice (determining cover relation) takes just a little more time than computing the set of formal concepts only. It seems that the usage of the algorithms as incremental algorithms, after all, deserves more attention!</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Conclusion</head><p>We have introduced algorithms for updating the set of all formal concepts of object-attribute relational data when the data change (new objects or attributes are introduced or existing are deleted or altered) by computing only new and modified formal concepts and for determining the concept lattice order relation, i.e. computing concept lattice of the data. Together the algorithms form an algorithm for updating concept lattice of object-attribute data from the data only, not requiring the possibly large concept lattice computed before the update as the so-called incremental (update) algorithms do. The algorithms result as modification or extension of FCbO algorithm for computing the set of all formal concepts of data and the modifications can be equally applied to any other recent algorithms (PCbO, PFCbO) derived from Kuznetsov's CbO algorithm. The experimental evaluation of performance of the algorithms have shown that the update is performed by the first algorithm significantly faster than re-computing all formal concepts or whole concept lattice and that the second algorithm is performance comparable to incremental algorithms for computing concept lattice.</p><p>The future research will be focused on further experimental and real-world application use evaluation of the algorithms and performance comparison with other incremental (update) algorithms for computing concept lattice.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head></head><label></label><figDesc>Y , I ) with the same intent B = B as formal concept A , B ∈ B(X, Y, I) is a modified formal concept enlarging the extent of Algorithm 1:</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>2 return 3 end 4 for j from y upto n do 5 set 12 setExample 2 .</head><label>25122</label><figDesc>Mj to Nj; 6 if j ∈ B and Nj ∩ Yj ⊆ B ∩ Yj then 7 set C to A ∩ {j} ↓ ; 8 set D to C ↑ ; 9 if B ∩ Yj = D ∩ Yj then 10 put C, D , j to queue; 11 else Mj to D; 13 end 14 end 15 end 16 while get C, D , j from queue do // list C, D , e.g., print it on screen or store it // list C, D , A, B as to be created in the cover relation, e.g., print C and A (or D and B) on screen or store them 17 set min to Yj; 18 for i from j − 1 downto 0 do 19 if i ∈ D then 20 set E to C ∩ {i} ↓ ; 21 set F to E ↑ ; 22 set min to min \ {i}; 23 if D ∩ Yj ∩ min = F ∩ Yj ∩ min then // list E, F , C, D as to be created in the cover relation // list E, F , A, B as to be deleted from the cover relation 24 set min to min ∪ {i}; , D , j + 1, {My | y ∈ Y }); 29 end 30 return We illustrate Algorithm 2 and the merged algorithm for the input data from Example 1. Below (top left) there is depicted concept lattice consisting of the 8 formal concepts C 1 to C 8 , with the concepts and pairs of concepts in cover relation of the lattice, listed in the order in which they are listed by procedure LatticeFastGenerateFrom, below the lattice.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head></head><label></label><figDesc>: C5, C2 , C4, C5 , C2 : C2, C1 , C6 : C6, C1 , C3, C6 , C3 : C3, C2 , C7 : C7, C6 , C4, C7 , C4 : C4, C3 , C8 : C8, C1 , C7, C8 , C5, C8 . C9 : C9, C * 5 , C4, C9 , C12 : C12, C * 8 , C11, C12 , C9, C12 , C10 : C10, C * 2 , C3, C10 , C9, C10 , C13 : C13, C * 1 , C * 6 , C13 , C12, C13 , C10, C13 . C11 : C11, C * 6 , C7, C11 , 3 Experimental evaluation The asymptotic worst-case time complexity of Algorithm 1 remains the same as of FCbO (and CbO) algorithm, O(|B(X, Y, I)|•|Y | 2</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. Running time of Algorithm 1 on random data dependent on number of attributes (on the left, introducing a single new object), on fill ratio (percentage of ×s, in the middle, introducing a single new object) and on number of new objects (on the right).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Fig. 2 .</head><label>2</label><figDesc>Fig. 2. Running time of Algorithm 1 dependent on number of new (last) objects for mushroom (on the left), anonymous-msweb (in the middle) and T10I4D100K datasets (on the right), solid line-orig. object ordering, dashed line-random object ordering.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head>Fig. 3 .</head><label>3</label><figDesc>Fig. 3. Running time dependent on number of attributes (on the left and right) and on fill ratio (percentage of ×s, in the middle), solid line-Algorithm 2 (left, middle)/merged algorithm (right), dashed line-AddIntent, dotted line-FCbO (left, middle)/Algorithm 1 (right).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>as modified; B and j ∈ YN and Nj ∩ Yj ⊆ B ∩ Yj then</figDesc><table><row><cell>4</cell><cell>end</cell></row><row><cell cols="2">5 else</cell></row><row><cell>6</cell><cell>list A, B as new;</cell></row><row><cell cols="2">7 end</cell></row><row><cell cols="2">8 if B = Y or y &gt; n then</cell></row><row><cell>9</cell><cell>return</cell></row><row><cell cols="2">10 end</cell></row><row><cell cols="2">11 for j from y upto n do</cell></row><row><cell>12</cell><cell>set Mj to Nj;</cell></row><row><cell></cell><cell>// go through attributes from YN only</cell></row><row><cell cols="2">13 if j ∈ 14 set C to A ∩ {j} ↓ I ; 15 set D to C ↑ I ;</cell></row><row><cell>16 17</cell><cell>if B ∩ Yj = D ∩ Yj then put C, D , j to queue;</cell></row><row><cell>18</cell><cell>else</cell></row><row><cell>19</cell><cell>set Mj to D;</cell></row><row><cell>20</cell><cell>end</cell></row><row><cell>21</cell><cell>end</cell></row><row><cell cols="2">22 end</cell></row><row><cell cols="2">23 while get C, D , j from queue do</cell></row><row><cell cols="2">24 25 end UpdateFastGenerateFrom( C, D , j + 1, {My | y ∈ Y });</cell></row><row><cell cols="2">26 return</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head>Table 1 .</head><label>1</label><figDesc>Running time (in seconds) of determining the cover relation of concept lattice and numbers of formal concepts for selected datasets.</figDesc><table><row><cell>dataset</cell><cell cols="2">size fill ratio #concepts</cell><cell>orig. object ordering random object ordering Alg. 2 AddInt. FCbO Alg. 2 AddInt. FCbO</cell></row><row><cell cols="2">mushroom anon. web T10I4D100K 100000 × 1000 1.010 % 8124 × 119 19.167 % 32711 × 296 1.019 %</cell><cell cols="2">238710 10.010 129009 2.860 2347376 453.060 342.966 55.523 452.893 343.056 55.490 9.760 0.830 11.025 8.061 0.919 6.540 1.326 2.841 6.521 1.306</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head>Table 2 .</head><label>2</label><figDesc>Running time (in seconds) of computing all formal concepts or concept lattice when processing input data incrementally and numbers of formal concepts computed in total for selected datasets.see from the comparison with FCbO algorithm, as to the rest expected, that determining the cover relation takes considerably more time than computing just the set of the formal concepts. Also, ordering of objects in the benchmark datasets makes almost no difference in the running times.</figDesc><table><row><cell cols="2">dataset #concepts in total</cell><cell cols="6">orig. object ordering merged alg. AddInt. Alg. 1 merged alg. AddInt. random object ordering Alg. 1</cell></row><row><cell>mushroom</cell><cell>9577435</cell><cell>130.746</cell><cell cols="2">9.760 128.993</cell><cell>284.983</cell><cell cols="2">8.061 284.130</cell></row><row><cell>anon. web</cell><cell>992259</cell><cell>41.386</cell><cell>6.540</cell><cell>41.320</cell><cell>41.342</cell><cell>6.521</cell><cell>41.077</cell></row><row><cell>T10I4D100K</cell><cell>14240918</cell><cell cols="3">2389.180 342.966 2384.160</cell><cell cols="3">2388.793 343.056 2378.703</cell></row></table></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" xml:id="foot_0">Jan Outrata   </note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">UCI Machine Learning Repository</title>
		<author>
			<persName><forename type="first">K</forename><surname>Bache</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Lichman</surname></persName>
		</author>
		<ptr target="http://archive.ics.uci.edu/ml" />
		<imprint>
			<date type="published" when="2013">2013</date>
			<pubPlace>Irvine, CA,</pubPlace>
		</imprint>
		<respStmt>
			<orgName>University of California ; School of Information and Computer Sciences</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Concept data analysis</title>
		<author>
			<persName><forename type="first">C</forename><surname>Carpineto</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Romano</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Theory and applications</title>
				<imprint>
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Formal concept analysis</title>
		<author>
			<persName><forename type="first">B</forename><surname>Ganter</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Wille</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Mathematical foundations</title>
				<meeting><address><addrLine>Berlin</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="1999">1999</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Incremental Concept Formation Algorithms Based on Galois Lattices</title>
		<author>
			<persName><forename type="first">R</forename><surname>Godin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Missaoui</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Alaoui</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Computation Intelligence</title>
		<imprint>
			<biblScope unit="volume">11</biblScope>
			<biblScope unit="page" from="246" to="267" />
			<date type="published" when="1995">1995</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Formal Concept Discovery in Semantic Web Data</title>
		<author>
			<persName><forename type="first">M</forename><surname>Kirchberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Leonardi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">S</forename><surname>Tan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Link</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>K L Ko</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">S</forename><surname>Lee</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. ICFCA 2012</title>
				<meeting>ICFCA 2012</meeting>
		<imprint>
			<date type="published" when="2012">2012</date>
			<biblScope unit="volume">7278</biblScope>
			<biblScope unit="page" from="164" to="179" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Advances in algorithms based on CbO</title>
		<author>
			<persName><forename type="first">P</forename><surname>Krajca</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Outrata</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Vychodil</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. CLA 2010</title>
				<meeting>CLA 2010</meeting>
		<imprint>
			<biblScope unit="page" from="325" to="337" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Parallel algorithm for computing fixpoints of galois connections</title>
		<author>
			<persName><forename type="first">P</forename><surname>Krajca</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Outrata</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Vychodil</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Annals of Mathematics and Artificial Intelligence</title>
		<imprint>
			<biblScope unit="volume">59</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="257" to="272" />
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Interpretation on graphs and complexity characteristics of a search for specific patterns</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">O</forename><surname>Kuznetsov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Automatic Documentation and Mathematical Linguistics</title>
		<imprint>
			<biblScope unit="volume">24</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="37" to="45" />
			<date type="published" when="1989">1989</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">A fast algorithm for computing all intersections of objects in a finite semi-lattice</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">O</forename><surname>Kuznetsov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Automatic Documentation and Mathematical Linguistics</title>
		<imprint>
			<biblScope unit="volume">27</biblScope>
			<biblScope unit="issue">5</biblScope>
			<biblScope unit="page" from="11" to="21" />
			<date type="published" when="1993">1993</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Learning of Simple Conceptual Graphs from Positive and Negative Examples</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">O</forename><surname>Kuznetsov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">PKDD</title>
		<imprint>
			<biblScope unit="page" from="384" to="391" />
			<date type="published" when="1999">1999</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<title level="m" type="main">Fast concept analysis. Working with Conceptual Structures--Contributions to ICCS</title>
		<author>
			<persName><forename type="first">C</forename><surname>Lindig</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2000">2000. 2000</date>
			<biblScope unit="page" from="152" to="161" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">AddIntent: A New Incremental Algorithm for Constructing Concept Lattices</title>
		<author>
			<persName><forename type="first">D</forename><surname>Van Der Merwe</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">A</forename><surname>Obiedkov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">G</forename><surname>Kourie</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. ICFCA 2004</title>
				<meeting>ICFCA 2004</meeting>
		<imprint>
			<date type="published" when="2004">2004</date>
			<biblScope unit="volume">2961</biblScope>
			<biblScope unit="page" from="205" to="206" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">An Algorithm for Computing the Maximal Rectangles in a Binary Relation</title>
		<author>
			<persName><forename type="first">E</forename><forename type="middle">M</forename><surname>Norris</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Revue Roumaine de Mathématiques Pures et Appliquées</title>
		<imprint>
			<biblScope unit="volume">23</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="243" to="250" />
			<date type="published" when="1978">1978</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Fast Algorithm for Computing Fixpoints of Galois Connections Induced by Object-Attribute Relational Data</title>
		<author>
			<persName><forename type="first">J</forename><surname>Outrata</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Vychodil</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Information Sciences</title>
		<imprint>
			<biblScope unit="volume">185</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="114" to="127" />
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<analytic>
		<title level="a" type="main">Building Concept (Galois) Lattices from Parts: Generalizing the Incremental Methods</title>
		<author>
			<persName><forename type="first">P</forename><surname>Valtchev</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Missaoui</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">LNAI</title>
		<imprint>
			<biblScope unit="volume">2120</biblScope>
			<biblScope unit="page" from="290" to="303" />
			<date type="published" when="2001">2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">Restructuring lattice theory: an approach based on hierarchies of concepts</title>
		<author>
			<persName><forename type="first">R</forename><surname>Wille</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Ordered Sets</title>
		<imprint>
			<biblScope unit="page" from="445" to="470" />
			<date type="published" when="1982">1982. 1982</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
