Deriving Sorting Algorithms
Abstract
This paper proposes new derivations of three well-known sorting algorithms, in their functional formulation. The approach we use is based on three main ingredients: first, the algorithms are derived from a simpler algorithm, i.e. the specification is already a solution to the problem (in this sense our derivations are program transformations). Secondly, a mixture of inductive and coinductive arguments are used in a uniform, algebraic style in our reasoning. Finally, the approach uses structural invariants so as to strengthen the equational reasoning with logical arguments that cannot be captured in the algebraic framework.
- Publication:
-
arXiv e-prints
- Pub Date:
- February 2008
- DOI:
- arXiv:
- arXiv:0802.3881
- Bibcode:
- 2008arXiv0802.3881B
- Keywords:
-
- Computer Science - Data Structures and Algorithms;
- Computer Science - Logic in Computer Science
- E-Print:
- Technical Report