Quantcast
Channel: Question and Answer » proof-assistants
Viewing all articles
Browse latest Browse all 9

What is the role of predicativity in inductive definitions in type theory?

$
0
0

We often want to define an object $A in U$ according to some inference rules. Those rules denote a generating function $F$ which, when it is monotonic, yields a least fixed point $mu F$. We take $A := mu F$ to be the “inductive definition” of $A$. Moreover, monotonicity of $F$ allows us to reason with the “principle of induction” to determine when a set contains $A$ (i.e. when a property universally holds on $A$).

In Coq this corresponds to writing an $mathtt{Inductive}$ definition of $A$ with explicit introduction terms. While this definition denotes a particular function $F$, that function is not necessarily monotonic. Coq therefore employs some syntactic checks to guarantee the “well-formedness” of the definition. To some approximation, it rejects occurrences of $A$ in negative positions in the types of the introduction terms.

(If my understanding up to this point is flawed, please correct me!)

First, some questions in the context of Coq:

1) Does the syntactic check in Coq merely serve to ensure that the definition of $A$ is predicative? (If so, is impredicativity the only way in which the definition would be ill-defined?) Or is it checking for monotonicity? (Correspondingly, is non-monotonicity what might kill it?)

2) Does such a negative occurrence of $A$ necessarily imply that $A$’s definition is impredicative/non-monotonic? Or is Coq simply unable to verify that it’s well-defined in that case?

And more generally:

3) What is the relation between predicativity of an inductive definition and monotonicity of that definition’s generating function? Are they two sides of the same coin? Are they unrelated? Informally, which one matters more?


Viewing all articles
Browse latest Browse all 9

Trending Articles