Transforming recursion into iteration eliminates the use of stack frames during program execution. It has been studied extensively. This paper describes a powerful and systematic ...
Many program optimisations and analyses, such as arraybound checking, termination analysis, etc, dependon knowing the size of a function's input and output. However, size inf...
Abstract. We summarize the results of several experiments in applying a metamethod for formal method integration [18, 19]. We provide a small example of using an instance of integr...
c specifications provide a powerful method for the specification of abstract data types in programming languages and software systems. Completeness and ground confluence are fundam...
Testing has a vital support role in the software engineering process, but developing tests often takes significant resources. A formal specification is a repository of knowledge a...
Modern software is often constructed using "spiral specification"; i.e. the specification is a dynamic document that is altered by experience with the current version of...