有状态流的完整融合:有状态流的等式理论与归一化-即求值
数论
2024-12-23 v1 组合数学
摘要
处理大量数据快速、在恒定和小空间中运行,是流处理的核心优势,也是其日益增长的应用原因。然而,最高性能的命令式处理代码几乎不易阅读、修改、复用,甚至正确编写。我们提出了流编译理论及其实现,作为名为 Strymonas 的可移植流处理库,使我们能够仅通过拼接简单组合子即可组装复杂的流管道,同时达到手写命令式循环和状态机的性能。该库支持有限和无限流,并提供丰富的组合子集合。这些组合子可自由组合,然而生成的复杂命令式代码几乎不包含组合子抽象的痕迹:没有闭包或中间对象。高性能是可移植的且由静态保证,无需依赖编译器或黑盒优化。我们在 OCaml 中显著超越了现有流处理库的性能。该库生成 C 和 OCaml 代码。由 Strymonas 构建的声明式管道全部是有状态的。库中引入的流状态不可直接观察。因此,Strymonas API 看起来像熟悉的纯函数式组合子接口。程序员可以引入自己的流状态并在管道中共享。Strymonas 的开发与有状态流的等式理论同步进行。我们的理论模型代表所有期望的管道,并保证唯一归一形式的存在,这些归一形式可映射到(融合)状态机。我们描述归一化算法,作为归一化-即求值形式。等式理论允许我们陈述和证明完整融合优化的正确性。
引用
@article{arxiv.2412.15767,
title = {Some New Modular Rank Three Nahm Sums from a Lift-Dual Operation},
author = {Zhineng Cao and Liuquan Wang},
journal= {arXiv preprint arXiv:2412.15767},
year = {2024}
}
备注
32 page. Comments are welcome