We generalize a pushout complement algorithm from graph rewriting to finitely-presented C-sets and structured cospans, allowing us to perform double pushout rewrites generically over a broad class of combinatorial data structures and open systems thereof. As part of this work, we present a general algorithm for pattern matching in C-sets via the construction of C-set homomorphisms, which generalizes the computation of graph homomorphisms. We demonstrate the utility of this generalization through applications to Petri net model space exploration, rewriting of wiring diagrams with symmetric monoidal structure, and open Petri net rewriting. These applications highlight the important productivity gains due to our implementation of C-set rewriting for arbitrary C, which allows us to easily extend our implementation to new categorical constructions, including slice categories and cospan categories.
翻译:作为这项工作的一部分,我们提出了一个从图形重写到有限呈现的C组和结构化cospans的推出补充算法,使我们能够对广泛的组合数据结构及其开放系统普遍地进行双重推出重写。作为这项工作的一部分,我们提出了一个总算法,通过构建C组同系主义来对C组进行模式匹配,该算法将图形同系主义的计算简单化。我们通过应用Petrii 网模型空间探索、用对称一分子结构重写电线图以及开放Petri网络重写,展示了这种概括化的效用。这些应用法突出了由于我们执行C组专有C类重写而取得的重要生产力收益,这使我们能够很容易地将我们的执行范围扩大到新的绝对构造,包括切片类别和孔类别。