中文

基于 enriched categories 的自动机与表达式结构及其相关算法的统一实现

形式语言与自动机理论 2020-12-22 v1 范畴论

摘要

在本文中,我们通过 Haskell 实现提出一种对正则表达式概念的推广,该推广使我们能够基于 enriched category 理论工具,将(树或字)自动机构造的定义与方法归总于一个通用结构之上。我们首先回顾几种从表达式到自动机的转换方法,阐明字情形与树情形之间的相似性。随后我们给出关于 enriched category 理论应用能力的原创性研究:1) 应用于自动机与表达式的实现,2) 应用于相关算法的研究,使用函数式编程的高级概念,同时构造 enriched category 理论概念及相应自动机的 Haskell 实现。更确切地说,通用自动机结构的 Haskell 实现与代数定义基于以下思想:- enriched categories、enriched functors、enriched monads 等可在 Haskell 中实现;- 类型级编程可用于恰当地编码函数元数;- 幺半群(字结构)与 operads(树结构)可编码为幺半群对象;- 树自动机与字自动机可通过 enriched categories 由同一代数结构表示。这一推广带来了令人惊讶的结论。例如,某些经典算法(确定化、补全、从交替自动机到确定自动机的转换)可被归并为同一个函数。随后我们将基于幺半张量积的概念定义广义表达式。Haskell 源代码可从以下地址获取:http://ludovicmignot.free.fr/HDR/src-HDR.zip

关键词

引用

@article{arxiv.2012.10641,
  title  = {A unified implementation of automata and expression structures, and of the associated algorithms using enriched categories},
  author = {Ludovic Mignot},
  journal= {arXiv preprint arXiv:2012.10641},
  year   = {2020}
}

备注

Manuscrit d'habilitation \`a diriger des recherches, in French