Giter VIP home page Giter VIP logo

conexp-clj's Introduction

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 a pre-compiled version, unpacking the zip file and puting the contained bin directory into 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

See AUTHORS.md.

License

Copyright ⓒ 2009—2018 Daniel Borchmann

Distributed under the Eclipse Public License.

This program uses an adapted version of the G library, a 2D graphics library and rendering engine for Java, ⓒ 2009 GeoSoft, licensed under the GNU Lesser General Public License (LGPL). Modifications to the original version of G are only concerned with exposing internals necessary for conexp-clj to work. The modified version of G is again licensed under LGPL.

This program uses parts of the LatDraw library, ⓒ 2002 Ralph Freese.

conexp-clj's People

Contributors

exot avatar immo avatar kanterov avatar tomhanika avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.