Abstraction and Invariance for Algebraically Indexed Types

ASU Author/Contributor (non-ASU co-authors, if there are any, appear on document)
Patricia Johann Ph.D, Professor (Creator)
Institution
Appalachian State University (ASU )
Web Site: https://library.appstate.edu/

Abstract: Reynolds’ relational parametricity provides a powerful way to reason about programs in terms of invariance under changes of data representation. A dazzling array of applications of Reynolds’ theory exists, exploiting invariance to yield “free theorems”, non-inhabitation results, and encodings of algebraic datatypes. Outside computer science, invariance is a common theme running through many areas of mathematics and physics. For example, the area of a triangle is unaltered by rotation or flipping. If we scale a triangle, then we scale its area, maintaining an invariant relationship be-tween the two. The transformations under which properties are in-variant are often organised into groups, with the algebraic structure reflecting the composability and invertibility of transformations. In this paper, we investigate programming languages whose types are indexed by algebraic structures such as groups of geometric transformations. Other examples include types indexed by principals–for information flow security–and types indexed by distances–for analysis of analytic uniform continuity properties. Following Reynolds, we prove a general Abstraction Theorem that covers all these instances. Consequences of our Abstraction Theorem include free theorems expressing invariance properties of programs, type isomorphisms based on invariance properties, and non-definability results indicating when certain algebraically indexed types are uninhabited or only inhabited by trivial programs. We have fully formalized our framework and most examples in Coq.

Additional Information

Publication
Robert Atkey, Patricia Johann, and Andrew Kennedy(2013)"Abstraction And Invariance For Algebraically Indexed Types". Proceedings, Principles of Programming Languages (POPL'13), pp. 87-100. Version Of Record Available At www.dk.acm.org
Language: English
Date: 2013
Keywords
Parametricity, Units of Measure, Dimensional Analyis, Invariance, Computational Geometry, Information Flow, Metric Types, Uniform Continuity

Email this document to