This thesis establishes formal equational properties of multi-stage calculi and related proof techniques that support analyses of staged programs. A key promise of staging is to make programs efficient without destroying clarity, thereby reducing the likelihood of bugs. However, few publications rigorously verify that their staged programs indeed behave as intended. In fact, little is known about how staged programs can be verified, or what correctness issues staging introduces. To solve this problem, I show a reduction of the correctness of a staged program to that of an unstaged program. This reduction not only clarifies the effects of staging on program behavior but also eases verification, as unstaged programs are...
Machine-checked using Coq 8.6. Contents: Generic Utility Concepts Util: Notations for lists...
For software development projects with very high correctness requirements (including safety requirem...
This work develops new automated reasoning techniques for verifying the correctness of equationally ...
Multi-stage programming (MSP) is a style of writing program generators---programs which generate pro...
We settle three basic questions that naturally arise when verifying multi-stage functional programs....
Staging is a programming technique for dividing the computation in order to exploit the early availa...
Multi-stage programming (MSP) is a style of writing program generators---programs which generate pr...
textThe goal of formal verification is to use mathematical methods to prove that a computing system...
It has been previously shown that there is a close relation between record calculus and program gene...
Due to copyright restrictions, the access to the full text of this article is only available via sub...
There is an intimate link between program structure and behaviour. Exploiting this link to phrase pr...
The present author as well as Andréka's group has experienced, while writing program- verifying prog...
Approximate program transformations such as task skipping [27, 28], loop perforation [20, 21, 32], m...
“When the time is ripe for certain things, these things appear in different places in the manner of ...
Static analysis of multi-staged programs is challenging because the basic assumption of conventional...
Machine-checked using Coq 8.6. Contents: Generic Utility Concepts Util: Notations for lists...
For software development projects with very high correctness requirements (including safety requirem...
This work develops new automated reasoning techniques for verifying the correctness of equationally ...
Multi-stage programming (MSP) is a style of writing program generators---programs which generate pro...
We settle three basic questions that naturally arise when verifying multi-stage functional programs....
Staging is a programming technique for dividing the computation in order to exploit the early availa...
Multi-stage programming (MSP) is a style of writing program generators---programs which generate pr...
textThe goal of formal verification is to use mathematical methods to prove that a computing system...
It has been previously shown that there is a close relation between record calculus and program gene...
Due to copyright restrictions, the access to the full text of this article is only available via sub...
There is an intimate link between program structure and behaviour. Exploiting this link to phrase pr...
The present author as well as Andréka's group has experienced, while writing program- verifying prog...
Approximate program transformations such as task skipping [27, 28], loop perforation [20, 21, 32], m...
“When the time is ripe for certain things, these things appear in different places in the manner of ...
Static analysis of multi-staged programs is challenging because the basic assumption of conventional...
Machine-checked using Coq 8.6. Contents: Generic Utility Concepts Util: Notations for lists...
For software development projects with very high correctness requirements (including safety requirem...
This work develops new automated reasoning techniques for verifying the correctness of equationally ...