language-toolkit: A set of tools for analyzing languages via logic and automata

[ formal-languages, library, mit, program ] [ Propose Tags ]

This provides the Language Toolkit (LTK) library and associated executables. There are four main components:

  • factorize, which takes as input a set of finite-state automata and writes out for each one a set of constraints that approximates (or, if possible, defines) it.

  • plebby, an interactive theorem-prover in which one can define languages via logical constraints or import finite-state automata and get information about the languages so defined.

  • classify, a command-line classification program useful for batch jobs.

  • And the LTK library, which includes the functions used by factorize and plebby as well as several other useful tools.

This project began as a simple tool for working with finite-state automata, and has grown considerably more useful in working specifically with sub-regular languages as it has matured.


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],
Dependencies base (>=4.6 && <4.17), containers (>=0.5 && <0.7), deepseq (>=1.2 && <1.5), directory (>=1.0 && <1.4), filepath (>=1.0 && <1.5), haskeline (>=0.2 && <0.9), language-toolkit, parallel (>=2.0 && <3.3), process (>=1.1 && <1.7), transformers (>=0.2 && <0.6) [details]
License MIT
Copyright (c) 2014-2022 Dakotah Lambert
Author Dakotah Lambert, James Rogers
Maintainer Dakotah Lambert <>
Category Formal Languages
Home page
Source repo head: git clone git:// -b develop
Uploaded by dakotah_lambert at 2022-03-29T03:49:09Z
Distributions NixOS:
Executables classify, plebby, make-non-strict-constraints, factorize, dotify
Downloads 87 total (6 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2022-03-29 [all 1 reports]