paperbot · PL 论文追踪

全部论文 待读 收藏

P2 KATch: A Fast Symbolic Verifier for NetKAT

KATch:面向 NetKAT 的快速符号验证器
PLDI 8(PLDI)2024匹配度 2/10 · 该论文属于形式化验证与领域特定语言(NetKAT)方向,提出符号自动机验证工具;但用户核心关注的是PL与LLM/Agent交叉、浮点程序分析及贝叶斯程序分析,该论文不涉及LLM/Agent、浮点或贝叶斯方法,因此与研究方向仅有边缘关联。引用 8 inbox
Mark Moeller, Jules Jacobs, Olivier Savary Belanger, David Darais, Cole Schlesinger, Steffen Smolka, Nate Foster, Alexandra Silva
dblp: 2026-09-10crossref: 2026-09-10arxiv: 2026-09-10

AI 速览

一句话:为 NetKAT 网络规约语言设计新的符号自动机数据结构与算法,实现快速可扩展的等价性验证工具 KATch。

NetKAT 是描述网络数据平面行为的领域特定语言,但其验证查询在规模上难以高效求解。本文扩展符号自动机技术,提出新的数据结构与算法以高效检查 NetKAT 验证查询。作者用 Scala 实现了工具 KATch,支持一组扩展的 NetKAT 算子以表达全网规约,其验证引擎通过构造 bisimulation 证明等价,或生成反例。在真实与合成基准上,KATch 通常能在远小于一秒内完成可达性、切片隔离等验证,比此前方法快若干数量级,展示了 NetKAT 作为实用声明式网络规约与验证语言的潜力。

问题
NetKAT 验证查询(如可达性、切片隔离)需要判定网络规约间的等价性,已有工具难以同时保证效率与可扩展性。
方法
扩展此前符号自动机技术,设计新的数据结构与算法来构造 bisimulation 或生成反例,并在 Scala 中实现支持扩展 NetKAT 算子的 KATch 验证器。
评估
在真实与合成基准上验证可达性、切片隔离等属性,通常亚秒级返回结果,比先前方法快若干数量级。
原文摘要(Abstract)

We develop new data structures and algorithms for checking verification queries in NetKAT, a domain-specific language for specifying the behavior of network data planes. Our results extend the techniques obtained in prior work on symbolic automata and provide a framework for building efficient and scalable verification tools. We present KATch, an implementation of these ideas in Scala, featuring an extended set of NetKAT operators that are useful for expressing network-wide specifications, and a verification engine that constructs a bisimulation or generates a counter-example showing that none exists. We evaluate the performance of our implementation on real-world and synthetic benchmarks, verifying properties such as reachability and slice isolation, typically returning a result in well under a second, which is orders of magnitude faster than previous approaches. Our advancements underscore NetKAT’s potential as a practical, declarative language for network specification and verification.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@article{MoellerJBDSSFS24,
  title = {KATch: A Fast Symbolic Verifier for NetKAT},
  author = {Mark Moeller and Jules Jacobs and Olivier Savary Belanger and David Darais and Cole Schlesinger and Steffen Smolka and Nate Foster and Alexandra Silva},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {8},
  number = {PLDI},
  year = {2024},
  doi = {10.1145/3656454}
}