Skip to Main content Skip to Navigation
Preprints, Working Papers, ...

Programming with Dependent Types in Coq: a Study of Square Matrices

Nicolas Magaud 1, *
* Corresponding author
Abstract : The Coq proof system allows users to write (functional) programs and to reason about them in a formal way. We study how to program using dependently typed data structures in such a setting. Using dependently typed data structures enables programmers to have more precise specifications for their programs before starting proving any significant properties (e.g. total correctness) about these programs. We particularly focus on an operational description of square matrices and their operations. Matrices are represented using dependent types. A matrix is a vector of rows,which are themselves vectors indexed by natural numbers. We also take advantage of Coq modules system to have matrices parametrised by a carrier set. Finally, this operational description can be extracted into a mainstream functional programming language like Ocaml.
Complete list of metadata

https://hal.inria.fr/hal-00955444
Contributor : Nicolas Magaud <>
Submitted on : Tuesday, March 4, 2014 - 3:04:06 PM
Last modification on : Monday, January 15, 2018 - 12:20:02 PM
Long-term archiving on: : Wednesday, June 4, 2014 - 11:42:21 AM

File

matricesinCoq.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-00955444, version 1

Citation

Nicolas Magaud. Programming with Dependent Types in Coq: a Study of Square Matrices. 2004. ⟨hal-00955444⟩

Share

Metrics

Record views

412

Files downloads

110