# CoPaR, the `Co`algebraic `Pa`rtition `R`efiner Copar implements a generic partition refinement algorithm with a fast run-time. The genericity of copar covers the minimization of - Transition Systems (under strong bisimilarity) - (Tree) Automata (under tree isomorphism) - Markov Chains, and other weighed systems (under weighed bisimilarity) - and *combinations* thereof (under derived bismilarity notions, e.g. backwards bisimilarity for weighted tree automata). The algorithm runs in *O(m log n)* on a system with *n* states and *m* transitions and has been developed in a series of publications, see the [literature file](doc/literature.md). ## Usage Installation instructions can be found in the [install file](INSTALL.md). The core partition-refinement algorithm can be called by ./copar refine FILENAME Examples for input files are in the directory `examples/`. Command line syntax is described in `copar --help` and the input file syntax in `copar help`. ## Benchmarks Extensive benchmarks of CoPaR on different input files can be found at [git8.cs.fau.de/software/copar-benchmarks](https://git8.cs.fau.de/software/copar-benchmarks). Micro-Benchmarks for internal data structures and routines are available in the `bench/` directory and can be executed with `stack bench`.