English

Natural Language Specifications in Proof Assistants

Programming Languages 2022-05-17 v1 Computation and Language

Abstract

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.

Keywords

Cite

@article{arxiv.2205.07811,
  title  = {Natural Language Specifications in Proof Assistants},
  author = {Colin S. Gordon and Sergey Matskevich},
  journal= {arXiv preprint arXiv:2205.07811},
  year   = {2022}
}
R2 v1 2026-06-24T11:18:52.065Z