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