FCA4J v0.4.6

Getting started

This walkthrough builds various FCA artifacts from the Animals11 example — a description of 10 animals by 11 attributes.

The following artifacts will be built:

  • Concept lattice
  • Iceberg50
  • AOC-Poset
  • Duquenne-Guigues Basis of Implications (DGBI)
  • Irreducible elements
  • A clarified and reduced formal context (and its concept lattice and AOC-Poset)

Step 0 — Download files

Download fca4j-cli.jar and Animals11.csv from the Downloads section.

Step 1 — Setup

Assume fca4j-cli.jar is in the current directory ./

Step 2 — Create working directory

mkdir ./Animals11

Place Animals11.csv in ./Animals11/

Step 3 — Build the Concept Lattice

mkdir ./Animals11/Lattice
java -jar fca4j-cli.jar LATTICE Animals11/Animals11.csv -i CSV -s SEMICOLON -g Animals11/Lattice/Animals11.dot

This builds Animals11.dot, a textual graph view of the simplified concept lattice with algorithm ADD_EXTENT.

To produce a PDF view (requires Graphviz):

dot -Tpdf Animals11/Lattice/Animals11.dot -o Animals11/Lattice/Animals11.pdf

Step 4 — Build the Iceberg50 Lattice

mkdir ./Animals11/Iceberg50
java -jar fca4j-cli.jar LATTICE -a ICEBERG Animals11/Animals11.csv -p 50 -i CSV -s SEMICOLON -g Animals11/Iceberg50/Animals11iceberg.dot

Produce a PDF view:

dot -Tpdf Animals11/Iceberg50/Animals11iceberg.dot -o Animals11/Iceberg50/Animals11iceberg50.pdf

Step 5 — Build the AOC-Poset

mkdir ./Animals11/AOCposet
java -jar fca4j-cli.jar AOCPOSET Animals11/Animals11.csv -i CSV -s SEMICOLON -g Animals11/AOCposet/Animals11aocposet.dot

Produce a PDF view:

dot -Tpdf Animals11/AOCposet/Animals11aocposet.dot -o Animals11/AOCposet/AOCposet.pdf

Step 6 — Compute the Duquenne-Guigues Basis of Implications

Rules will be stored by support in different TXT files.

mkdir ./Animals11/DGBI
java -jar fca4j-cli.jar RULEBASIS Animals11/Animals11.csv -i CSV -s SEMICOLON -folder ./Animals11/DGBI/

Step 7 — Compute the irreducible objects

java -jar fca4j-cli.jar IRREDUCIBLE Animals11/Animals11.csv -lobj -u -i CSV -s SEMICOLON Animals11/animals11irrobjs.txt

Step 8 — Compute the irreducible attributes

java -jar fca4j-cli.jar IRREDUCIBLE Animals11/Animals11.csv -lattr -u -i CSV -s SEMICOLON Animals11/animals11irrattrs.txt

Step 9 — Clarify the formal context

Clarify along objects and attributes:

java -jar fca4j-cli.jar CLARIFY Animals11/Animals11.csv -xa -xo -i CSV -s SEMICOLON Animals11/Animals11clarified.csv

Step 10 — Reduce the formal context

java -jar fca4j-cli.jar REDUCE Animals11/Animals11.csv -xa -xo -u -i CSV -s SEMICOLON Animals11/Animals11clarifiedreduced.csv

Step 11 — Lattice and AOC-Poset of the reduced context

mkdir -p ./Animals11/Reduced/Lattice
mkdir -p ./Animals11/Reduced/AOCposet

java -jar fca4j-cli.jar LATTICE Animals11/Animals11clarifiedreduced.csv -i CSV -s SEMICOLON -g Animals11/Reduced/Lattice/Animals11clarifiedreduced.dot
dot -Tpdf Animals11/Reduced/Lattice/Animals11clarifiedreduced.dot -o Animals11/Reduced/Lattice/Animals11clarifiedreduced.pdf

java -jar fca4j-cli.jar AOCPOSET Animals11/Animals11clarifiedreduced.csv -i CSV -s SEMICOLON -g Animals11/Reduced/AOCposet/Animals11clarifiedreduced.dot
dot -Tpdf Animals11/Reduced/AOCposet/Animals11clarifiedreduced.dot -o Animals11/Reduced/AOCposet/Animals11clarifiedreduced.pdf