Iowa Type Theory Commute

Semantics of subtyping


Listen Later

I answer a listener's question about the semantics of subtyping, by discussing two different semantics: coercive subtyping and subsumptive subtyping.  The terminology I found in this paper by Zhaohui Luo; see Section 4 of the paper for a comparison of the two kinds of subtyping.  With coercive subtyping, we have subtyping axioms "A <: B by c", where c is a function from A to B.  The idea is that the compiler should automatically insert calls to c whenever an expression of type A needs to be converted to one of type B.  Subsumptive subtyping says that A <: B means that the meaning of A is a subset of the meaning of B.  So this kind of subtyping depends on a semantics for types.  A simple choice is to interpret a type A as (as least roughly) the set of its inhabitants.  So a type like Integer might be interpreted as the set of all integers, etc.  Luo argues that subsumptive subtyping does not work for Martin-Loef type theory, where type annotations are inherent parts of terms.  For in that situation, A <: B does not imply List A <: List B, because Nil A is an inhabitant of List A but not of List B (which requires instead Nil B).

Join the telegram group here.

...more
View all episodesView all episodes
Download on the App Store

Iowa Type Theory CommuteBy Aaron Stump

  • 5
  • 5
  • 5
  • 5
  • 5

5

17 ratings


More shows like Iowa Type Theory Commute

View all
Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

Software Engineering Radio - the podcast for professional software developers

272 Listeners

This American Life by This American Life

This American Life

90,587 Listeners

Planet Money by NPR

Planet Money

30,971 Listeners

CppCast by Phil Nash & Timur Doumler

CppCast

109 Listeners

Sean Carroll's Mindscape: Science, Society, Philosophy, Culture, Arts, and Ideas by Sean Carroll | Wondery

Sean Carroll's Mindscape: Science, Society, Philosophy, Culture, Arts, and Ideas

4,128 Listeners

Algorithms + Data Structures = Programs by Conor Hoekstra, Bryce Adelstein Lelbach & Ben Deane

Algorithms + Data Structures = Programs

31 Listeners

The Ezra Klein Show by New York Times Opinion

The Ezra Klein Show

15,313 Listeners

The Array Cast by The Array Cast

The Array Cast

34 Listeners

The Haskell Interlude by Haskell Podcast

The Haskell Interlude

11 Listeners

The Weekly Show with Jon Stewart by Comedy Central

The Weekly Show with Jon Stewart

10,252 Listeners

The Rest Is Politics by Goalhanger

The Rest Is Politics

3,110 Listeners

Oxide and Friends by Oxide Computer Company

Oxide and Friends

47 Listeners

Developer Voices by Kris Jenkins

Developer Voices

21 Listeners