Interactive proof assistants are computer programs carefully constructed to check a human-designed proof of a mathematical claim with high confidence in the implementation. However, this only validates truth of a formal claim, which may have been mistranslated from a claim made in natural language. This is especially problematic when using proof assistants to formally verify the correctness of software with respect to a natural language specification. The translation from informal to formal remains a challenging, time-consuming process that is difficult to audit for correctness. This paper argues that it is possible to build support for natural language specifications within existing proof assistants, in a way that complements the principles used to establish trust and auditability in proof assistants themselves.
翻译:互动证明助理是经过精心设计的计算机程序,目的是检查人为设计的数学索赔证明,对执行过程充满信心;然而,这只能验证正式索赔的真相,因为正式索赔可能与自然语言索赔的翻译有误;在使用证明助理正式核实软件与自然语言规格的正确性时,这尤其成问题;从非正式翻译到正式翻译仍是一个具有挑战性的、耗时的过程,很难为正确性进行审计;本文件认为,在现有证明助理内部建立对自然语言规格的支持是可能的,可以补充用于确定证据助理本身的信任和可审计性的原则。