Skip to main navigation Skip to search Skip to main content

Functional Stream Semantics for a Synchronous Block-Diagram Compiler

  • Inria Paris
  • Université PSL

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

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.

Original languageEnglish
Title of host publicationProceedings - 2025 40th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2025
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages609-621
Number of pages13
ISBN (Electronic)9798331554644
DOIs
Publication statusPublished - 1 Jan 2025
Externally publishedYes
Event40th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2025 - Singapore, Singapore
Duration: 23 Jun 202526 Jun 2025

Publication series

NameProceedings - Symposium on Logic in Computer Science
ISSN (Print)1043-6871

Conference

Conference40th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2025
Country/TerritorySingapore
CitySingapore
Period23/06/2526/06/25

Keywords

  • Denotational semantics
  • Interactive Theorem Proving
  • Program correctness
  • Synchronous languages

Fingerprint

Dive into the research topics of 'Functional Stream Semantics for a Synchronous Block-Diagram Compiler'. Together they form a unique fingerprint.

Cite this