conexp-clj

A General-Purpose Tool for Formal Concept Analysis

https://github.com/tomhanika/conexp-clj

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    13 of 24 committers (54.2%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.7%) to scientific vocabulary

Keywords

clojure closure-systems conceptual-knowledge data data-analysis data-science formal-concept-analysis lattice order order-theory

Keywords from Contributors

standardization
Last synced: 6 months ago · JSON representation ·

Repository

A General-Purpose Tool for Formal Concept Analysis

Basic Info
  • Host: GitHub
  • Owner: tomhanika
  • License: epl-1.0
  • Language: Clojure
  • Default Branch: master
  • Homepage:
  • Size: 13.9 MB
Statistics
  • Stars: 58
  • Watchers: 5
  • Forks: 23
  • Open Issues: 13
  • Releases: 5
Topics
clojure closure-systems conceptual-knowledge data data-analysis data-science formal-concept-analysis lattice order order-theory
Created over 14 years ago · Last pushed 6 months ago
Metadata Files
Readme License Citation Authors

README.md

conexp-clj Build Status Clojars Project built with nix

This is conexp-clj, a general purpose software tool for Formal Concept Analysis. Its main purpose is to enable nontrivial examples to be computed easily, but it can be used for much, much more.

Documentation

  1. Getting Started
  2. Don't Bother Me with Theory, I Want to Do Stuff! (aka: Tutorials)
    1. A Gentle Introduction (ICFCA 2013)
    2. Compute the Canonical Base from a Formal Context that is given in CSV Format
    3. Standalone Console Application
  3. A more complete overview over conexp-clj
    1. Notation and Syntax
    2. Creating and Working with Formal Contexts
    3. Concept Lattices
    4. IO for Formal Contexts
    5. Implications
    6. Exploration
    7. Scaling Many-Valued Contexts
  4. Example use cases of conexp-clj
    1. Formal Contexts from Implications
    2. A Formal Context of Functions
    3. Context of All Permutations on a Finite Set
    4. The Tamari Lattice
    5. Preconcept Covers
    6. Number of Elements of the Free Distributive Lattice
    7. Counting Linear Extensions
    8. Computing Traces in Contexts
    9. Counting Quasiorders
    10. Rudolph's Algorithm for Computing Bases
    11. Libkin Decompositions
    12. Direct Product Decompositions
  5. Advanced Topics
    1. pq-cores
    2. REST-API Usage
    3. triadic-exploration
    4. protoconcepts
    5. Incomplete Contexts
    6. Factorization of Formal Contexts
  6. API documentation
  7. Development

History

The project has been started by Daniel Borchmann under supervision of Christian Meschke as part of the DFG project GA 216/10-1. It has since been developed further into a general purpose FCA tool by Daniel Borchmann until his departure from academia in 2017. From then on, Tom Hanika took over and is still the principal maintainer of conexp-clj.

Limitations

Note that conexp-clj is not a high-performance tool for Formal Concept Analysis and may sometimes be considerably slower then comparable tools. If you want more performance, check out Uta Priss' website on FCA software.

Contributing Authors

See AUTHORS.md.

How to cite conexp-clj?

If you have used conexp-clj for your scientific work, the developers would appreciate if you use the following reference.

@inproceedings{DBLP:conf/icfca/HanikaH19, author = {Tom Hanika and Johannes Hirth}, editor = {Diana Cristea and Florence Le Ber and Rokia Missaoui and L{\'{e}}onard Kwuida and Baris Sertkaya}, title = {Conexp-Clj - {A} Research Tool for {FCA}}, booktitle = {Supplementary Proceedings of {ICFCA} 2019 Conference and Workshops, Frankfurt, Germany, June 25-28, 2019}, series = {{CEUR} Workshop Proceedings}, volume = {2378}, pages = {70--75}, publisher = {CEUR-WS.org}, year = {2019}, url = {http://ceur-ws.org/Vol-2378/shortAT8.pdf}, timestamp = {Wed, 12 Feb 2020 16:44:55 +0100}, biburl = {https://dblp.org/rec/conf/icfca/HanikaH19.bib}, bibsource = {dblp computer science bibliography, https://dblp.org} }

License

Copyright ⓒ 2009—2018 Daniel Borchmann, 2018—2025 Tom Hanika

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.

Owner

  • Name: Tom Hanika
  • Login: tomhanika
  • Kind: user
  • Location: Göttingen, Germany
  • Company: University of Hildesheim

Researcher in the fields of artificial intelligence, data science, order theory, lattice theory, applied algebra, and more ;)

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: conexp-clj
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Daniel
    family-names: Borchmann
    affiliation: Technische Universität Dresden
  - given-names: Tom
    family-names: Hanika
    affiliation: University of Hildesheim
    email: tom.hanika@uni-hildesheim.de
    orcid: 'https://orcid.org/0000-0002-4918-6374'
repository-code: 'https://github.com/fcatools/conexp-clj'
abstract: >-
  This is conexp-clj, a general purpose software tool for
  Formal Concept Analysis. Its main purpose is to enable
  nontrivial examples to be computed easily, but it can be
  used for much, much more.
preferred-citation:
  type: "conference-paper"
  publisher:
    name: "CEUR-WS.org"
  conference:
    name: "Supplementary Proceedings of ICFCA 2019 Conference and Workshops,
               Frankfurt, Germany, June 25-28, 2019"
  url: "http://ceur-ws.org/Vol-2378/shortAT8.pdf"
  date-released: "2019-01-01"
  volume: "2378"
  journal: "CEUR Workshop Proceedings"
  title: "Conexp-Clj - A Research Tool for FCA"
  volume-title: "Supplementary Proceedings of ICFCA 2019 Conference and Workshops,
               Frankfurt, Germany, June 25-28, 2019"
  editors:
    - given-names: Diana
      family-names: Cristea
    - given-names: Florence
      family-names: Le Ber
    - given-names: Rokia
      family-names:  Missaoui
    - given-names:  Léonard
      family-names:  Kwuida
    - given-names: Baris
      family-names: Sertkaya
  collection-title: "CEUR Workshop Proceedings"
  start: "70"
  end: "75"
  authors:
    - family-names: Hanika
      given-names: Tom
    - family-names: Hirth
      given-names: Johannes
license: EPL-1.0
commit: 5254a10eab6759a7d0c60228892952de93f2aa58
date-released: '2023-07-17'

GitHub Events

Total
  • Create event: 2
  • Issues event: 2
  • Watch event: 3
  • Delete event: 1
  • Member event: 1
  • Issue comment event: 2
  • Push event: 36
  • Pull request event: 25
  • Pull request review event: 8
  • Pull request review comment event: 3
  • Fork event: 1
Last Year
  • Create event: 2
  • Issues event: 2
  • Watch event: 3
  • Delete event: 1
  • Member event: 1
  • Issue comment event: 2
  • Push event: 36
  • Pull request event: 25
  • Pull request review event: 8
  • Pull request review comment event: 3
  • Fork event: 1

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 2,676
  • Total Committers: 24
  • Avg Commits per committer: 111.5
  • Development Distribution Score (DDS): 0.229
Past Year
  • Commits: 32
  • Committers: 7
  • Avg Commits per committer: 4.571
  • Development Distribution Score (DDS): 0.688
Top Committers
Name Email Commits
Daniel Borchmann d****n@m****e 2,063
Daniel Borchmann d****l@a****e 173
Immanuel Albrecht g****b@g****e 117
Anselm von Wangenheim a****w@g****e 52
Tom Hanika (sys:companion) h****a@c****e 51
Daniel Borchmann d****n@t****e 49
Jana j****r@s****e 40
Maximilian Stubbemann m****n@g****e 24
De Narm s****6@m****e 19
Maximilian Marx m****x@w****e 16
Jana Fischer 7****r 15
Dominik Dürrschnabel d****u@c****e 12
Johannes Hirth h****h@c****e 11
Johannes Hirth j****i@c****e 7
maximilian-felde 4****e 5
Maximilian Marx m****x@t****e 5
Maximilian Felde f****e@c****e 4
Immanuel Albrecht i****l@l****) 3
hirthjo 5****o 3
Tom Hanika T****a@c****e 2
De Narm s****n@g****m 2
github-actions[bot] 4****] 1
Maximilian Stubbemann s****n@c****e 1
Gleb Kanterov g****k@g****m 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 26
  • Total pull requests: 153
  • Average time to close issues: over 1 year
  • Average time to close pull requests: 3 months
  • Total issue authors: 9
  • Total pull request authors: 15
  • Average comments per issue: 0.46
  • Average comments per pull request: 0.37
  • Merged pull requests: 126
  • Bot issues: 0
  • Bot pull requests: 12
Past Year
  • Issues: 2
  • Pull requests: 24
  • Average time to close issues: N/A
  • Average time to close pull requests: 18 days
  • Issue authors: 2
  • Pull request authors: 4
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 7
Top Authors
Issue Authors
  • hirthjo (8)
  • exot (8)
  • tomhanika (4)
  • de-narm (2)
  • mmarx (1)
  • itchy2385 (1)
  • maximilian-felde (1)
  • JannikNordmeyer (1)
  • TareqAlbeeshG (1)
  • jana-fischer (1)
Pull Request Authors
  • JannikNordmeyer (30)
  • tomhanika (25)
  • hirthjo (24)
  • de-narm (18)
  • jana-fischer (17)
  • github-actions[bot] (15)
  • maximilian-felde (8)
  • mmarx (7)
  • ansvonwa (6)
  • mstubbemann (5)
  • domduerr (4)
  • maegustav (3)
  • exot (3)
  • rjoberon (2)
  • FWurmbach (1)
Top Labels
Issue Labels
new feature (7) user-meeting (4) bug (3)
Pull Request Labels
new feature (2) bug (1)

Packages

  • Total packages: 1
  • Total downloads:
    • clojars 1,578 total
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 13
  • Total maintainers: 1
clojars.org: conexp-clj

A ConExp rewrite in clojure -- and so much more ...

  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 1,578 Total
Rankings
Dependent packages count: 8.1%
Forks count: 9.4%
Dependent repos count: 14.0%
Average: 15.8%
Stargazers count: 18.0%
Downloads: 29.2%
Maintainers (1)
Last synced: 6 months ago

Dependencies

project.clj clojars
  • aysylu/loom 1.0.2
  • clj-http 3.11.0
  • clojure-complete 0.2.5
  • http-kit 2.5.0
  • luposlip/json-schema 0.3.3
  • org.apache.commons/commons-math 2.2
  • org.apache.commons/commons-math3 3.6.1
  • org.clojure/algo.generic 0.1.3
  • org.clojure/clojure 1.10.1
  • org.clojure/core.async 1.3.610
  • org.clojure/data.csv 1.0.1
  • org.clojure/data.int-map 1.0.0
  • org.clojure/data.json 2.4.0
  • org.clojure/data.xml 0.0.8
  • org.clojure/math.combinatorics 0.1.6
  • org.clojure/math.numeric-tower 0.0.4
  • org.clojure/tools.cli 1.0.194
  • reply 0.4.4
  • ring/ring-core 1.8.2
  • ring/ring-devel 1.8.2
  • ring/ring-json 0.5.0
  • rolling-stones 1.0.1
  • seesaw 1.5.0
.github/workflows/run-tests.yaml actions
  • actions/checkout v3 composite
  • cachix/install-nix-action v17 composite
.github/workflows/update-deps-lock.yaml actions
  • actions/checkout v3 composite
  • cachix/install-nix-action v17 composite
  • peter-evans/create-pull-request v4.0.3 composite