paperbot · PL 论文追踪

RSS

JaVerT 2.0: compositional symbolic execution for JavaScript

POPL 3(POPL)2019
José Fragoso Santos, Petar Maksimović, Gabriela Sampaio, Philippa Gardner

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

We propose a novel, unified approach to the development of compositional symbolic execution tools, bridging the gap between classical symbolic execution and compositional program reasoning based on separation logic. Using this approach, we build JaVerT 2.0, a symbolic analysis tool for JavaScript that follows the language semantics without simplifications. JaVerT 2.0 supports whole-program symbolic testing, verification, and, for the first time, automatic compositional testing based on bi-abduction. The meta-theory underpinning JaVerT 2.0 is developed modularly, streamlining the proofs and informing the implementation. Our explicit treatment of symbolic execution errors allows us to give meaningful feedback to the developer during whole-program symbolic testing and guides the inference of resource of the bi-abductive execution. We evaluate the performance of JaVerT 2.0 on a number of JavaScript data-structure libraries, demonstrating: the scalability of our whole-program symbolic testing; an improvement over the state-of-the-art in JavaScript verification; and the feasibility of automatic compositional testing for JavaScript.

链接与引用

DOI 原文 ·

BibTeX
@article{paperbot657,
  title = {JaVerT 2.0: compositional symbolic execution for JavaScript},
  author = {José Fragoso Santos and Petar Maksimović and Gabriela Sampaio and Philippa Gardner},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {3},
  number = {POPL},
  year = {2019},
  doi = {10.1145/3290379}
}