Refactoring is an important Software Engineering technique for improving the structure of a program after it has been written. Refactorings improve the maintainability, readability, and design of a program without affecting its external behaviour. In analogy, this thesis introduces proof refactoring to make structured, semantics preserving changes to the proof documents constructed by interactive theorem provers as part of a formal proof development. In order to formally study proof refactoring, the first part of this thesis constructs a proof language framework, Hiscript. The Hiscript framework consists of a procedural tactic language, a declarative proof language, and a modular theory language. Each level of this framework is equ...
In order to cope with large case studies arising from the application of formal methods in an indust...
International audienceIn this chapter, we propose some future directions of work, potentially benefi...
International audienceTheorem provers produce evidence of proof in many different formats, such as p...
The paper surveys how software tools such as refactoring systems can be validated, and introduces a ...
Building an automated refactoring tool for a new programming language is an expensive and time-consu...
The construction of a high-assurance system requires some evidence, ideally a proof, that the system...
Proof structures in traditional automatic theorem proving systems are generally designed for ecientl...
Refactoring is a software development strategy that characteristically alters the syntactic structur...
grantor: University of TorontoA 'formal refinement method' is a method of constructing cor...
PhD ThesisProof automation is a common bottleneck for industrial adoption of formal methods. Heuris...
AbstractIn this paper we provide an detailed overview of existing research in the field of software ...
Abstract programs contain schematic placeholders representing potentially infinitely many concrete p...
The continuous growth of complex systems makes the development of correct software increasingly cha...
Formal proofs, interactively developed and machine-checked, are a means to achieve the highest level...
International audienceIn a world where trusting software systems is increasingly important, formal m...
In order to cope with large case studies arising from the application of formal methods in an indust...
International audienceIn this chapter, we propose some future directions of work, potentially benefi...
International audienceTheorem provers produce evidence of proof in many different formats, such as p...
The paper surveys how software tools such as refactoring systems can be validated, and introduces a ...
Building an automated refactoring tool for a new programming language is an expensive and time-consu...
The construction of a high-assurance system requires some evidence, ideally a proof, that the system...
Proof structures in traditional automatic theorem proving systems are generally designed for ecientl...
Refactoring is a software development strategy that characteristically alters the syntactic structur...
grantor: University of TorontoA 'formal refinement method' is a method of constructing cor...
PhD ThesisProof automation is a common bottleneck for industrial adoption of formal methods. Heuris...
AbstractIn this paper we provide an detailed overview of existing research in the field of software ...
Abstract programs contain schematic placeholders representing potentially infinitely many concrete p...
The continuous growth of complex systems makes the development of correct software increasingly cha...
Formal proofs, interactively developed and machine-checked, are a means to achieve the highest level...
International audienceIn a world where trusting software systems is increasingly important, formal m...
In order to cope with large case studies arising from the application of formal methods in an indust...
International audienceIn this chapter, we propose some future directions of work, potentially benefi...
International audienceTheorem provers produce evidence of proof in many different formats, such as p...