IBP-Litp
1996/22:
Rapport de Recherche Litp /
Litp research reports
37 pages - Juin/June 1996 -
French document.
PostScript : Ko /Kb
Titre / Title: Preuve de correction de programmes fonctionnels de tris dans le systèmes Coq
Abstract : This report is a case study in proving correctness of functional programs. All programs specifications and proofs has been developed with the Coq proof assistant. The programs
investigated are implmentions of variuos sorting algorithm.
The document contains the definitions of data structures involved in sorting programs (lists and binary trees) and their intended properties. Some auxiliary functions are defined and their properties concerning their use in sorting programs are stated. Then we define our various sorting programs and give the broad outlines of the proof of their correctness. We studied five sorting programs : insertion sort, merge sort, binary search tree and heap sorts, bubble sort. As an extra we give the corectness proof of a function building well balanced trees which is used in merge and heap sorts.
The interest of this report is not in its originality (sorting algorithm we present are well known) but merely in its actuality. Also it appears that this document is a good pedagogical introduction to the problematic of programs correctness.
Publications internes Litp 1996 / Litp research reports 1996