Partition refinement is a method for minimizing automata and transition systems of various types. Recently, we have developed a partition refinement algorithm that is generic in the transition type of the given system and matches the run time of the best known algorithms for many concrete types of systems, e.g. deterministic automata as well as ordinary, weighted, and probabilistic (labelled) transition systems. Genericity is achieved by modelling transition types as functors on sets, and systems as coalgebras. In the present work, we refine the run time analysis of our algorithm to cover additional instances, notably weighted automata and, more generally, weighted tree automata. For weights in a cancellative monoid we match, and for non-cancellative monoids such as (the additive monoid of) the tropical semiring even substantially improve, the asymptotic run time of the best known algorithms. We have implemented our algorithm in a generic tool that is easily instantiated to concrete system types by implementing a simple refinement interface. Moreover, the algorithm and the tool are modular, and partition refiners for new types of systems are obtained easily by composing pre-implemented basic functors. Experiments show that even for complex system types, the tool is able to handle systems with millions of transitions.
翻译:分区精细化是尽量减少各种类型的自动和过渡系统的一种方法。 最近, 我们开发了一种在特定系统过渡类型中通用的分区精细算法, 该算法与许多具体类型系统最已知的算法运行时间相匹配, 例如确定性自动转换系统, 以及普通、 加权和概率( 标签) 过渡系统。 将过渡类型建模为机组的杀菌剂, 以及作为煤层的系统, 实现了通用性。 在目前的工作中, 我们改进了我们算法的运行时间分析, 以涵盖更多的实例, 特别是加权自动数据, 更一般地说, 加权树自成一体。 对于我们所匹配的可喜单项系统中的重量, 以及热带半成型( 添加单项单项) 等非可喜的单项算法运行时间, 热带最佳已知算法的无症状运行时间。 我们用一种通用工具实施了我们的算法, 通过实施简单的精细化接口, 将我们的算法转化为具体系统类型的系统。 此外, 算法和配制工具是模块化的, 甚至可变换式系统, 以简单化的系统, 以显示复杂的系统。