A List of Successes That Can Change the World

Volume 9600 of the series Lecture Notes in Computer Science pp 109-131


Proof-Relevant Parametricity

  • Neil GhaniAffiliated withUniversity of Strathclyde
  • , Fredrik Nordvall ForsbergAffiliated withUniversity of Strathclyde
  • , Federico OrsanigoAffiliated withUniversity of Strathclyde Email author 

* Final gross prices may vary according to local VAT.

Get Access


Parametricity is one of the foundational principles which underpin our understanding of modern programming languages. Roughly speaking, parametricity expresses the hidden invariants that programs satisfy by formalising the intuition that programs map related inputs to related outputs. Traditionally parametricity is formulated with proof-irrelevant relations but programming in Type Theory requires an extension to proof-relevant relations. But then one might ask: can our proofs that polymorphic functions are parametric be parametric themselves? This paper shows how this can be done and, excitingly, our answer requires a trip into the world of higher dimensional parametricity.