Proceedings of the 11th ACM SIGPLAN International Conference on Certified Programs and Proofs 2022
DOI: 10.1145/3497775.3503680
|View full text |Cite
|
Sign up to set email alerts
|

(Deep) induction rules for GADTs

Abstract: Deep data types are those that are constructed from other data types, including, possibly, themselves. In this case, they are said to be truly nested. Deep induction is an extension of structural induction that traverses all of the structure in a deep data type, propagating predicates on its primitive data throughout the entire structure. Deep induction can be used to prove properties of nested types, including truly nested types, that cannot be proved via structural induction. In this paper we show how to ext… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1

Citation Types

0
1
0

Year Published

2024
2024
2024
2024

Publication Types

Select...
2
1

Relationship

1
2

Authors

Journals

citations
Cited by 3 publications
(1 citation statement)
references
References 21 publications
0
1
0
Order By: Relevance
“…The main result of this paper shows that the choice of representation of data types in a language supporting GADTs determines whether or not that language can have parametric models [32]. It thus determines whether or not GADTs can enjoy consequences of parametricity such as representation independence [1,6], equivalences between programs [12], deep induction principles [17,20], and useful ("free") theorems about programs derived from their types alone [37]. This result is unintuitive, novel, and surprising.…”
Section: Introductionmentioning
confidence: 99%
“…The main result of this paper shows that the choice of representation of data types in a language supporting GADTs determines whether or not that language can have parametric models [32]. It thus determines whether or not GADTs can enjoy consequences of parametricity such as representation independence [1,6], equivalences between programs [12], deep induction principles [17,20], and useful ("free") theorems about programs derived from their types alone [37]. This result is unintuitive, novel, and surprising.…”
Section: Introductionmentioning
confidence: 99%