A General-Purpose Tool for Formal Concept Analysis
Clojure C# HTML Python Makefile Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc
src
stuff
.gitignore
.gitmodules
.travis.yml
LICENSE
Makefile
README.md
project.clj

README.md

conexp-clj Build Status

This is conexp-clj, a general purpose software tool for Formal Concept Analysis.

The project has been started by Daniel Borchmann under supervision of Christian Meschke as part of the DFG project GA 216/10-1.

Features

conexp-clj is a pocket-calculator for Formal Concept Analysis. Its main purpose is to enable nontrivial examples to be computed easily.

conexp-clj features include:

  • Basic Operations on Formal Contexts
  • Relational Algebra with Formal Contexts
  • Transparent IO for Formal Contexts (in development)
  • Scaling for Many-Valued Contexts
  • Implicational Theory and Basic Attribute Exploration
  • NextClosure (of course)
  • Computing Luxenburger-Bases and Iceberg Concept Sets
  • IO for Many-Valued Contexts
  • Lattice Layouts and Lattice IO (some...)
  • A bit of Fuzzy-FCA
  • Interface for sage

Note that conexp-clj is not a high-performance tool for Formal Concept Analysis. If you want this, check out Uta Priss' website on FCA software.

Prerequisites

You need

  • a Jave Runtime Environment (≥ 1.6)
  • Leiningen (≥ 2.0.0) if you want to run conexp-clj from source

How to Run

The recommended way to run conexp-clj is to download the pre-compiled version here. Just unpack the zip file and put the contained bin directory in you path. You can then run

$ conexp-clj

from you command line (without the "$") to get a bare conexp-clj repl. If you want to try the experimental GUI, you can use

$ conexp-clj --gui

instead.

Documentation

The current main source of documentation on conexp-clj is its Wiki. Additionally, for general help on a function f, you can use the clojure function doc with

(doc f)

For finding functions you may find useful, you can use find-doc

(find-doc "Whatever you may find useful")

Additional Documentation:

Running conexp-clj from source

To run conexp-clj from source, switch in the source directory of conexp-clj and run

$ lein deps

This will download any missing jar files needed for conexp-clj to run. To quickly obtain a repl just issue

$ lein repl

If you want a more sophisticated repl, you may try nrepl.el.

Compilation Instructions for conexp-clj

To create a standalone zip on your own, just run make in the top source directory. This will (should) do everything to create a zip archive containing a compiled version of conexp-clj. You can also run this compiled version directly by invoking ./conexp-clj/bin/conexp-clj (after unpacking the .zip file.)

Contributing Authors

Currently conexp-clj is developed and maintained by

  • Daniel Borchmann

Additional Contributors are

  • Immanuel Albrecht (Context Editor Plugin for the GUI)
  • Stefan Borgwardt (Shared Intents)
  • Gleb Kanterov (interval-scale)
  • Johannes Wollbold (bug reports, feature requests)

License

Copyright ⓒ 2009—2016 Daniel Borchmann

Distributed under the Eclipse Public License.