### Abstract

Language | English |
---|---|

Article number | 12 |

Journal | Logical Methods in Computer Science |

Volume | 8 |

Issue number | 2 |

DOIs | |

Publication status | Published - 19 Jun 2012 |

### Fingerprint

### Keywords

- data structures
- algebras
- generic induction

### Cite this

*Logical Methods in Computer Science*,

*8*(2), [12]. https://doi.org/10.2168/LMCS-8(2:12)2012

}

*Logical Methods in Computer Science*, vol. 8, no. 2, 12. https://doi.org/10.2168/LMCS-8(2:12)2012

**Generic fibrational induction.** / Ghani, Neil; Johann, Patricia; Fumex, Clement.

Research output: Contribution to journal › Article

TY - JOUR

T1 - Generic fibrational induction

AU - Ghani, Neil

AU - Johann, Patricia

AU - Fumex, Clement

PY - 2012/6/19

Y1 - 2012/6/19

N2 - This paper provides an induction rule that can be used to prove properties of data structures whose types are inductive, i.e., are carriers of initial algebras of functors. Our results are semantic in nature and are inspired by Hermida and Jacobs' elegant algebraic formulation of induction for polynomial data types. Our contribution is to derive, under slightly different assumptions, a sound induction rule that is generic over all inductive types, polynomial or not. Our induction rule is generic over the kinds of properties to be proved as well: like Hermida and Jacobs, we work in a general fibrational setting and so can accommodate very general notions of properties on inductive types rather than just those of a particular syntactic form. We establish the soundness of our generic induction rule by reducing induction to iteration. We then show how our generic induction rule can be instantiated to give induction rules for the data types of rose trees, finite hereditary sets, and hyperfunctions. The first of these lies outside the scope of Hermida and Jacobs' work because it is not polynomial, and as far as we are aware, no induction rules have been known to exist for the second and third in a general fibrational framework. Our instantiation for hyperfunctions underscores the value of working in the general fibrational setting since this data type cannot be interpreted as a set.

AB - This paper provides an induction rule that can be used to prove properties of data structures whose types are inductive, i.e., are carriers of initial algebras of functors. Our results are semantic in nature and are inspired by Hermida and Jacobs' elegant algebraic formulation of induction for polynomial data types. Our contribution is to derive, under slightly different assumptions, a sound induction rule that is generic over all inductive types, polynomial or not. Our induction rule is generic over the kinds of properties to be proved as well: like Hermida and Jacobs, we work in a general fibrational setting and so can accommodate very general notions of properties on inductive types rather than just those of a particular syntactic form. We establish the soundness of our generic induction rule by reducing induction to iteration. We then show how our generic induction rule can be instantiated to give induction rules for the data types of rose trees, finite hereditary sets, and hyperfunctions. The first of these lies outside the scope of Hermida and Jacobs' work because it is not polynomial, and as far as we are aware, no induction rules have been known to exist for the second and third in a general fibrational framework. Our instantiation for hyperfunctions underscores the value of working in the general fibrational setting since this data type cannot be interpreted as a set.

KW - data structures

KW - algebras

KW - generic induction

U2 - 10.2168/LMCS-8(2:12)2012

DO - 10.2168/LMCS-8(2:12)2012

M3 - Article

VL - 8

JO - Logical Methods in Computer Science

T2 - Logical Methods in Computer Science

JF - Logical Methods in Computer Science

SN - 1860-5974

IS - 2

M1 - 12

ER -