Part I |
- Chapter 1 The Gallina specification language
- Chapter 2 Extensions of Gallina
- Chapter 3 The Coq library
- Chapter 4 Calculus of Inductive Constructions
- Chapter 5 The Module System
Part II |
- Chapter 6 Vernacular commands
- 6.1 Displaying
- 6.2 Flags, Options and Tables
- 6.3 Requests to the environment
- 6.4 Loading files
- 6.5 Compiled files
- 6.6 Loadpath
- 6.7 Backtracking
- 6.8 Quitting and debugging
- 6.9 Controlling display
- 6.10 Controlling the reduction strategies and the conversion algorithm
- 6.11 Controlling the locality of commands
- Chapter 7 Proof handling
- Chapter 8 Tactics
- 8.1 Invocation of tactics
- 8.2 Applying theorems
- 8.3 Managing the local context
- 8.4 Controlling the proof flow
- 8.5 Case analysis and induction
- 8.6 Rewriting expressions
- 8.7 Performing computations
- 8.8 Automation
- 8.9 Controlling automation
- 8.10 Decision procedures
- 8.11 Everything after this point has yet to be sorted
- 8.12 Equality
- 8.13 Equality and inductive sets
- 8.14 Inversion
- 8.15 Classical tactics
- 8.16 Automatizing
- 8.17 Non-logical tactics
- 8.18 Simple tactic macros
- Chapter 9 The tactic language
- Chapter 10 Detailed examples of tactics
- Chapter 11 The Mathematical Proof Language
Part III |
Part IV |
Part V |
- Presentation of the Addendum
- Chapter 17 Extended pattern-matching
- Chapter 18 Implicit Coercions
- 18.1 General Presentation
- 18.2 Classes
- 18.3 Coercions
- 18.4 Identity Coercions
- 18.5 Inheritance Graph
- 18.6 Declaration of Coercions
- 18.7 Displaying Available Coercions
- 18.8 Activating the Printing of Coercions
- 18.9 Classes as Records
- 18.10 Coercions and Sections
- 18.11 Coercions and Modules
- 18.12 Examples
- Chapter 19 Canonical Structures
- Chapter 20 Type Classes
- Chapter 21 Omega: a solver of quantifier-free problems in Presburger Arithmetic
- Chapter 22 Micromega: tactics for solving arithmetic goals over ordered rings
- 22.1 Short description of the tactics
- 22.2 Positivstellensatz refutations
- 22.3 lra: a decision procedure for linear real and rational arithmetic
- 22.4 lia: a tactic for linear integer arithmetic
- 22.5 nra: a proof procedure for non-linear arithmetic
- 22.6 nia: a proof procedure for non-linear integer arithmetic
- 22.7 psatz: a proof procedure for non-linear arithmetic
- Chapter 23 Extraction of programs in Objective Caml and Haskell
- Chapter 24 Program
- Chapter 25 The ring and field tactic families
- Chapter 26 Nsatz: tactics for proving equalities in integral domains
- Chapter 27 Generalized rewriting
- Chapter 28 Asynchronous and Parallel Proof Processing
- Chapter 29 Polymorphic Universes
- Chapter 30 Miscellaneous extensions
- References
- Global Index
- Tactics Index
- Vernacular Commands Index
- Vernacular Options Index
- Index of Error Messages