Inductive Data Structures
The concept of inductive definition, introduced in the specific case of
natural numbers, is easily extended to generic data structures as long as
they are finitely defined. These correspond to the notion of
freely-generated expressions from abstract algebra. We demonstrate this
technique in the case of trees, and define lists as a special case.
Such inductive definition of data structures is paralled by a simple
generalization of traditional proofs by induction, called structural
induction.