{'fraction_non_alphanumeric': 0.015330188679245283, 'fraction_numerical': 0.0, 'mean_word_length': 5.335820895522388, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Concept lattices: A representation space to structure software variability

Formal Concept Analysis is a theoretical framework which structures a set of objects described by properties. Formal Concept Analysis is a classification technique that takes data sets of objects and their attributes, and extracts relations between these objects according to the attributes they share. This structure reveals and categorizes commonalities and variability in a canonical form. From this canonical form, other structures can be derived, that can be more or less complex. In this paper, we revisit two papers from the literature of the software product line domain. We point to key contributions and limits of the representation of variability by concept lattices, with illustrative examples. We present tools to implement the approach and open a discussion.