DocumentCode
262013
Title
Catamorphism Generation and Fusion Using Coq
Author
Robillard, Simon
Author_Institution
INSA Centre Val de Loire, Univ. Orleans, Orleans, France
fYear
2014
fDate
22-25 Sept. 2014
Firstpage
180
Lastpage
185
Abstract
Catamorphisms are a class of higher-order functions that recursively traverse an inductive data structure to produce a value. An important result related to catamorphisms is the fusion theorem, which gives sufficient conditions to rewrite compositions of catamorphisms. We use the Coq proof assistant to automatically define a catamorphism and a fusion theorem according to an arbitrary inductive type definition. Catamorphisms are then used to define functional specifications and the fusion theorem is applied to derive efficient programs that match those specifications.
Keywords
data structures; theorem proving; Coq proof assistant; arbitrary inductive type definition; catamorphism composition rewriting; catamorphism generation; functional specifications; fusion theorem; higher-order functions; inductive data structure; recursively traverse; sufficient conditions; Automation; Calculus; Cognition; Context; Data structures; Distance measurement; Vegetation; Catamorphism; Category theory; Coq; Fusion theorem; Interactive theorem prover; Program derivation;
fLanguage
English
Publisher
ieee
Conference_Titel
Symbolic and Numeric Algorithms for Scientific Computing (SYNASC), 2014 16th International Symposium on
Conference_Location
Timisoara
Print_ISBN
978-1-4799-8447-3
Type
conf
DOI
10.1109/SYNASC.2014.32
Filename
7034682
Link To Document