aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/stdlib/Library.tex
blob: f410000eab092aeeae28a1adab9d50e6b030d823 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
\documentclass[11pt]{report}

\usepackage[mathletters]{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fullpage}
\usepackage{amsfonts}
\usepackage[color]{../../coqdoc}

\input{../common/version}
\input{../common/title}
\input{../common/macros}

\begin{document}
 
\coverpage{The standard library}%
{\ }
{This material is distributed under the terms of the GNU Lesser
General Public License Version 2.1.}

\tableofcontents

\newpage
% \section*{The \Coq\ standard library}

This document is a short description of the \Coq\ standard library.
This library comes with the system as a complement of the core library
(the {\bf Init} library ; see the Reference Manual for a description
of this library). It provides a set of modules directly available
through the \verb!Require! command.

The standard library is composed of the following subdirectories:
\begin{description}
  \item[Logic]  Classical logic and dependent equality
  \item[Bool]   Booleans (basic functions and results)
  \item[Arith]  Basic Peano arithmetic
  \item[ZArith] Basic integer arithmetic
  \item[Reals]  Classical Real Numbers and Analysis
  \item[Lists]  Monomorphic and polymorphic lists (basic functions and
                  results), Streams (infinite sequences defined 
                  with co-inductive types)
  \item[Sets]   Sets (classical, constructive, finite, infinite, power set,
                  etc.)
  \item[Relations] Relations (definitions and basic results).
  \item[Sorting] Sorted list (basic definitions and heapsort
                 correctness). 
  \item[Wellfounded] Well-founded relations (basic results).
  \item[Program] Tactics to deal with dependently-typed programs and
    their proofs.
  \item[Classes] Standard type class instances on relations and
    Coq part of the setoid rewriting tactic.
\end{description}


Each of these subdirectories contains a set of modules, whose
specifications (\gallina{} files) have
been roughly, and automatically, pasted in the following pages. There
is also a version of this document in HTML format on the WWW, which
you can access from the \Coq\ home page at
\texttt{http://coq.inria.fr/library}.

\input{Library.coqdoc}

\end{document}