Abstract
In this chapter, the correctness by construction approach is applied to an algorithmic problem that lies well off the beaten track of classical text book examples. The algorithm has been in the public domain since about 2000, but was only clearly explained and its correctness shown in 2010 [26]. The algorithm has also been shown to be considerably more efficient than its rivals.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
It is trivial to adapt the algorithm for cases where \(\neg (X \subset {\top }_{\mathcal{L}})\). Two cases then need to be handled. If \(X \supset {\top }_{\mathcal{L}}\) then X simply becomes the new top of the enlarged SICL. If \(\neg (X \subset {\top }_{\mathcal{L}}\wedge X \supset {\top }_{\mathcal{L}})\) then insert \(X \cap {\top }_{\mathcal{L}}\) into \(\mathcal{L}\), create a supremum for X and \({\top }_{\mathcal{L}}\) and join X and \({\top }_{\mathcal{L}}\) to their supremum.
- 2.
Of course, we assume that \(\vert \mathcal{X}\vert < \infty \). However, the algorithm specifications above are not inherently limited to dealing with finite sets. They could, in principle, be implemented on a computer that had some way of representing infinitely large sets and which could carry out the required set operations (intersection, membership, union) on those infinite sets.
- 3.
Note: Concept Explorer’s author has requested that users cite his Russian text, [49].
- 4.
Algorithms were implemented in C++ on the same codesbase. Tests were performed on a PentiumTM 4–2 GHz computer with 1 Gigabyte RAM running under Windows XPTM.
References
G. Arévalo, in Proceedings of LMO 2003: Langages et Modeles à Objets, Understanding behavioral dependencies in class hierarchies using concept analysis, Hermes, Paris, January 2003. pp 47–59
G. Birkhoff, Lattice Theory (Amer. Math. Soc. Coll. Publ., Providence, R.I., 1973)
C.L. Blake, C.J. Merz, UCI repository of machine learning databases. University of California, Irvine, Dept. of Information and Computer Sciences, 1998
J.P. Bordat, Calcul pratique du treillis de Galois d’une correspondance. Math. Sci. Hum. 23(2), 243–250 (1978)
C. Carpineto, G. Romano, Concept Data Analysis: Theory and Applications (John Wiley & Sons Ltd, New York, 2004)
C. Carpineto, G. Romano, A lattice conceptual clustering system and its application to browsing retrieval. Mach. Learn. 24(2), 95–122 (1996)
L.C. Freeman, D.R. White, Using Galois lattices to represent network data. Sociol. Methodol. 23, 127–146 (1993)
B. Ganter. Two basic algorithms in concept analysis, FB4-Preprint No. 831 (Technische Hochschule Darmstadt, June 1984)
B. Ganter, R. Wille, Formal Concept Analysis: Mathematical Foundations (Springer, Berlin, 1999)
R. Godin, R. Missaoui, H. Alaoui. Incremental concept formation algorithms based on Galois lattices. Comput. Intell. 11(2), 243–250 (1995)
P.A. Grigoriev, S.A. Yevtushenko, in Concept Lattices: Proc. of the 2nd Int. Conf. on Formal Concept Analysis, ed. by P. Eklund. Quda: applying formal concept analysis in a data mining environment, vol 2961/2004 (Springer, Berlin/Heidelberg, 2004), pp. 386–393
D.G. Kourie, S. Obiedkov, B.W. Watson, F.D. van der Merwe, An incremental algorithm to construct a lattice of set intersections. Sci. Comput. Program. 74(3), 128–142 (2009)
S. Kuznetsov, S. Obiedkov, Comparing performance of algorithms for generating concept lattices. J. Exp. Theor. Artif. Intell. 14(2/3), 189–216 (2002)
S. Kuznetsov, in Concept Lattices: Proceedings of the 2nd International Conference on Formal Concept Analysis, ed. by P. Eklund. Machine learning and formal concept analysis. LNCS, vol. 2961 (Springer-Verlag, Berlin, Heidelberg, 2004), pp. 287–312
E.M. Norris, An algorithm for computing the maximal rectangles in a binary relation. Rev. Roum. Math. Pures A. 23(2), 243–250 (1978)
L. Nourine, O. Raynaud, A fast algorithm for building lattices. Inform. Process. Lett. 71, 199–204 (1999)
U. Priss, in Formal Concept Analysis, Foundations and Applications, ed. by B. Ganter, G. Stumme, R. Wille. Linguistic applications of formal concept analysis. LNAI, vol. 3626 (Springer-Verlag, Berlin, Heidelberg, 2005), pp. 149–160
G. Stumme, A. Mädche, in Proceedings of the17th International Conference on Artificial Intelligence (IJCAI ’01), ed. by B. Nebel. FCA-merge: Bottom-up merging of ontologies, Seattle, WA, USA, 2001. pp. 225–230
T. Tilley, R. Cole, P. Becker, P. Eklund, in Formal Concept Analysis, Foundations and Applications, ed. by Bernhard Ganter, Robert Godin, A survey of formal concept analysis support for software engineering activities. Lecture Notes in Computer Science, vol. 3626, July 2005, pp. 250–271
P. Valtchev, R. Missaoui, R. Godin, in Concept Lattices: Proceedings of the 2nd International Conference on Formal Concept Analysis, ed. by P. Eklund. Formal concept analysis for knowledge discovery and data mining: The new challenges. LNCS, vol. 2961 (Springer-Verlag, Berlin, Heidelberg, 2004), pp. 352–371
F.J. van der Merwe, Constructing concept lattices and compressed pseudo-lattices, Master’s thesis, University of Pretoria, 2003
F.J. van der Merwe, S. Obiedkov, D.G. Kourie, in Concept Lattices: Proc. of the 2nd Int. Conf. on Formal Concept Analysis, ed. by P. Eklund. AddIntent: A new incremental algorithm for constructing concept lattices. LNCS, vol. 2961 (Springer-Verlag, Berlin, Heidelberg, 2004), p. 411
S.A. Yevtushenko, in Proceedings of the 7th national conference on Artificial Intelligence KII-2000. System of data analysis “concept explorer” (in Russian), Russia (2000), pp. 127–134
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Kourie, D.G., Watson, B.W. (2012). Case Study: Lattice Cover Graph Construction. In: The Correctness-by-Construction Approach to Programming. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-27919-5_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-27919-5_6
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-27918-8
Online ISBN: 978-3-642-27919-5
eBook Packages: Computer ScienceComputer Science (R0)