Formal Concept Analysis - HestiaProject/PAxSPL GitHub Wiki

Definition:

A mathematical method that provides a way to identify "meaningful groupings of objects that have common attributes".

Variations:

Clarified:

The context does not have duplicate rows or columns

Reduced:

No context rows can be expressed as intersection of other rows. The lattice of such context is meet-reduced. No context columns can be expressed as intersection of other columns. The lattice of such context is join-reduced

Priority Order:

Extraction > Categorize > Group

Inputs:

Outputs:

  • Concept lattice.

Examples:

Tools:

There are a lot of different tools and plugins for FCA that can be found in here

Related Techniques:

Recommended situations

Formal Concept Analysis is recommended when program elements (such as classes, methods, etc.) have meaningful names ("attribute" instead of "atr" or "home" instead of "hm"). Besides that, is highly recommended to use this technique in products well documented.

Not Recommended situations

A Information Retrieval Technique cannot achieve quality results when applied to products with no documentation and no meaningful identifiers names. For that reason we don't recommend the use of Formal Concept Analysis or any other Information Retrieval Technique in those situations.