Grisette: Symbolic Compilation as a Functional Programming Library
Sirui Lu, Rastislav Bodík
摘要
The development of constraint solvers simplified automated reasoning about programs and shifted the engineering burden to implementing symbolic compilation tools that translate programs into efficiently solvable constraints. We describe Grisette, a reusable symbolic evaluation framework for implementing domain-specific symbolic compilers. Grisette evaluates all execution paths and merges their states into a normal form that avoids making guards mutually exclusive. This ordered-guards representation reduces the constraint size 5-fold and the solving time more than 2-fold. Grisette is designed entirely as a library, which sidesteps the complications of lifting the host language into the symbolic domain. Grisette is purely functional, enabling memoization of symbolic compilation as well as monadic integration with host libraries. Grisette is statically typed, which allows catching programming errors at compile time rather than delaying their detection to the constraint solver. We implemented Grisette in Haskell and evaluated it on benchmarks that stress both the symbolic evaluation and constraint solving.
问问这篇 Paper
问问你的智能体。
Lune 读过与它相关的顶会 Paper,每个回答都会注明依据哪几篇。
引用它的顶会 Paper8
- TensorRight: Automated Verification of Tensor Graph RewritesJai Arora, Sirui Lu, Devansh Jain, Tianfan Xu 等POPL 2025 · 被引用 6 次
- Superfusion: Eliminating Intermediate Data Structures via Inductive SynthesisRuyi Ji, Yuwei Zhao, Nadia Polikarpova, Yingfei Xiong 等PLDI 2024 · 被引用 4 次
- Synthesizing DSLs for Few-Shot LearningPaul Krogmeier, P. MadhusudanOOPSLA 2025 · 被引用 1 次
- HieraSynth: A Parallel Framework for Complete Super-Optimization with Hierarchical Space DecompositionSirui Lu, Rastislav BodíkOOPSLA 2025
- Soteria: Efficient Symbolic Execution as a Functional Library: Perhaps You Should Write Your Own Symbolic Execution Engine!Sacha-Élie Ayoun, Opale Sjöstedt, Azalea RaadPLDI 2026
相关 Paper
- A formal foundation for symbolic evaluation with mergingSorawee Porncharoenwase, Luke Nelson, Xi Wang, Emina TorlakPOPL 2022 · 被引用 13 次
- State Merging with Quantifiers in Symbolic ExecutionDavid Trabish, Noam Rinetzky, Sharon Shoham, Vaibhav SharmaFSE 2023 · 被引用 5 次
- Type Inference LogicsDenis Carnier, François Pottier, Steven KeuchelOOPSLA 2024 · 被引用 3 次
- Engineering a Formally Verified Automated Bug FinderArthur Correnson, Dominic SteinhöfelFSE 2023 · 被引用 6 次
- PureCake: A Verified Compiler for a Lazy Functional LanguageHrutvik Kanabar, Samuel Vivien, Oskar Abrahamsson, Magnus O. Myreen 等PLDI 2023 · 被引用 7 次
