• 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