摘要
重构是改进结构的重要软件工程技术程序编写完成后。重构提高了可维护性,可读性,以及在不影响其外部行为的情况下设计程序。以此类推,本文引入证明重构,以使结构化、语义保持交互式定理证明程序构造的证明文件的更改正式证明的发展。为了正式研究证明重构,本文的第一部分构建了证明语言框架Hiscript。Hiscript框架包括一个过程策略语言、陈述性证明语言和模块化理论语言。每个该框架的级别具有基于层次结构的形式语义证明树的概念。此外,该框架是通用的,因为它没有规定底层逻辑内核。本部分对以下内容的语义进行了研究形式化证明文件,它被证明可以构造有效的证明。此外,类推通过类型检查,证明文件的静态格式检查被分开从证据的评估来看。此外,SSReflect语言的子集对于Coq,称为eSSence,也使用层次证明进行编码。Hiscript和eSSence显示出具有自然层次表示的语言元素。在第二部分中,通过定义将证明重构置于正式的基础上使用Hiscript框架。正式指定了30多个重构证明可以精确地保留Hiscript语言的语义,包括传统的结构重构,如重命名项和特定于证明的重构诸如向后证明到向前证明以及声明性证明到过程性证明。最后,混凝土,介绍了通用重构框架Polar。极坐标基于图形重写,已经实现了十多次重构和两次证明语言,包括Hiscript。最后,第三部分对未来进行了展望。