Functional Stream Semantics for a Synchronous Block-Diagram Compiler
Timothy Bourke, Paul Jeanmaire, Marc Pouzet
Abstract
Synchronous block-diagram languages have long been formalized as fixpoints of equations defining stream functions. We apply this approach to a compiler verified in an interactive theorem prover, allowing us to restate its end-to-end correctness theorem: if a program is accepted and has no runtime errors, its input/output behavior is preserved in the generated code. In a functional semantics, it is necessary to model all possible behaviors, including erroneous ones. We show that static typing and dependency analyses correctly rule out all errors except those arising from logical and arithmetic operators. Our definitions supplement existing formal ones, especially for the reset operator, which is both useful in itself and a basis of advanced control structures.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext a0a12fea-5554-4eb1-a3c8-390d87e19786Builds on3
- Interaction trees: representing recursive and impure programs in CoqLi-yao Xia, Yannick Zakowski, Paul He, Chung-Kil Hur et al.POPL 2020 · 133 citations
- Mechanized semantics and verified compilation for a dataflow synchronous language with resetTimothy Bourke, Lélio Brun, Marc PouzetPOPL 2020 · 22 citations
- PureCake: A Verified Compiler for a Lazy Functional LanguageHrutvik Kanabar, Samuel Vivien, Oskar Abrahamsson, Magnus O. Myreen et al.PLDI 2023 · 7 citations
Related papers
- The essence of Bluespec: a core language for rule-based hardware designThomas Bourgeat, Clément Pit-Claudel, Adam Chlipala, ArvindPLDI 2020 · 55 citations
- Refinement for Structured Concurrent ProgramsBernhard Kragl, Shaz Qadeer, Thomas A. HenzingerCAV 2020 · 10 citations
- Reactive probabilistic programmingGuillaume Baudart, Louis Mandel, Eric Atkinson, Benjamin Sherman et al.PLDI 2020 · 1 citation
- Let It Flow: A Formally Verified Compilation Framework for Asynchronous DataflowZhengyao Lin, Yi Cai, Milijana SurbatovichPLDI 2026 · 1 citation
- ElasticMiter: Formally Verified Dataflow Circuit RewritesAyatallah Elakhras, Jiahui Xu, Martin Erhart, Paolo Ienne et al.ASPLOS 2025 · 3 citations
