Proofs as programs

  • Authors:
  • Joseph L. Bates;Robert L. Constable

  • Affiliations:
  • Cornell Univ., Ithaca, NY;Cornell Univ., Ithaca, NY

  • Venue:
  • ACM Transactions on Programming Languages and Systems (TOPLAS)
  • Year:
  • 1985

Quantified Score

Hi-index 0.02

Visualization

Abstract

The significant intellectual cost of programming is for problem solving and explaining, not for coding. Yet programming systems offer mechanical assistance for the coding process exclusively. We illustrate the use of an implemented program development system, called PRL ("pearl"), that provides automated assistance with the difficult part. The problem and its explained solution are seen as formal objects in a constructive logic of the data domains. These formal explanations can be executed at various stages of completion. The most incomplete explanations resemble applicative programs, the most complete are formal proofs.