Coq
8.7

The language

  • The Gallina specification language
  • Extensions of Gallina
  • The Coq library
  • Calculus of Inductive Constructions
  • The Module System

The proof engine

  • Vernacular commands
  • Proof handling
  • Tactics
  • The tactic language
  • Detailed examples of tactics
  • The SSReflect proof language

User extensions

  • Syntax extensions and interpretation scopes
  • Proof schemes

Practical tools

  • The Coq commands
  • Utilities
  • Coq Integrated Development Environment

Addendum

  • Extended pattern-matching (full text)
  • Implicit Coercions
  • Canonical Structures
  • Type Classes
  • Omega: a solver for quantifier-free problems in Presburger Arithmetic
  • Micromega: tactics for solving arithmetic goals over ordered rings
  • Extraction of programs in Objective Caml and Haskell
  • Program
  • The ring and field tactic families
  • Nsatz: tactics for proving equalities in integral domains
  • Generalized rewriting
  • Asynchronous and Parallel Proof Processing
  • Polymorphic Universes
  • Miscellaneous extensions
  • Coq glossary

Porting to Sphinx

  • The Gallina specification language
  • Calculus of Inductive Constructions
  • A subset of Coq's tactic reference
  • A few examples of trickier syntax constructs
Coq
  • Docs »
  • Error Index

Error Index

` | b | c | e | i | n | r | s | t | u | ‘
 
`
`qualid` is not a module
 
b
bad occurrence number of ‘qualid’
 
c
Cannot handle mutually (co)inductive records.
Cannot infer a term for this placeholder.
Cannot use mutual definition with well-founded recursion or measure
 
e
Either there is a type incompatibility or the problem involves dependencies
 
i
Impossible to unify … with …
 
n
No argument name ‘ident’
No such label ‘ident’
Non exhaustive pattern-matching
Not the right number of missing arguments
 
r
Records declared with the keyword Record or Structure cannot be recursive.
 
s
Signature components for label ‘ident’ do not match
Statement without assumptions
 
t
The constructor ‘ident’ expects ‘num’ arguments
The elimination predicate term should be of arity ‘num’ (for non dependent case) or ‘num’ (for dependent case)
The recursive argument must be specified
This is not the last opened module
This is not the last opened module type
This is not the last opened section
 
u
Unable to apply
Unable to find an instance for the variables ‘ident’…‘ident’
Unable to infer a match predicate
Undeclared universe ‘ident’.
Universe inconsistency.
 
‘
‘qualid’ does not denote an evaluable constant
‘qualid’ does not occur

© Copyright 2016, Inria.

Built with Sphinx using a theme provided by Read the Docs.