
Sorting algorithms are fundamental to computer science, and their correctness criteria are well understood as rearranging elements of a list according to a specified total order on the underlying set of elements. As mathematical functions, they are functions on lists that perform combinatorial operations on the representation of the input list. In this paper, we study sorting algorithms conceptually as abstract sorting functions. There is a canonical surjection from the free monoid on a set (lists of elements) to the free commutative monoid on the same set (multisets of elements). We show that sorting functions determine a section (right inverse) to this surjection satisfying two axioms, that do not presuppose a total order on the underlying set. Then, we establish an equivalence between (decidable) total orders on the underlying set and correct sorting functions. The first part of the paper develops concepts from universal algebra from the point of view of functorial signatures, and gives constructions of free monoids and free commutative monoids in (univalent) type theory. Using these constructions, the second part of the paper develops the axiomatisation of sorting functions. The paper uses informal mathematical language, and comes with an accompanying formalisation in Cubical Agda.
To appear in LIPIcs, Volume 384, TYPES 2025
FOS: Computer and information sciences, Univalent mathematics, Type theory, Logic in Computer Science, Logic, Sorting, Formalisation, [MATH] Mathematics [math], Universal algebra, [INFO] Computer Science [cs], Homotopy type theory, Logic in Computer Science (cs.LO), 03F55, Combinatorics, Cubical Agda, FOS: Mathematics, Constructive mathematics, Logic and verification, F.3.1; F.4.1, Logic (math.LO), Theory of computation
FOS: Computer and information sciences, Univalent mathematics, Type theory, Logic in Computer Science, Logic, Sorting, Formalisation, [MATH] Mathematics [math], Universal algebra, [INFO] Computer Science [cs], Homotopy type theory, Logic in Computer Science (cs.LO), 03F55, Combinatorics, Cubical Agda, FOS: Mathematics, Constructive mathematics, Logic and verification, F.3.1; F.4.1, Logic (math.LO), Theory of computation
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 0 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
