Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] congruence of definitional equality

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] congruence of definitional equality


Chronological Thread 
  • From: Frédéric Blanqui <frederic.blanqui AT inria.fr>
  • To: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] congruence of definitional equality
  • Date: Thu, 30 Jan 2014 08:51:09 +0100


Le 30/01/2014 05:31, Abhishek Anand a écrit :

I've seen the definitional equality of Coq being presented
as a bunch of (mainly computational) rules, e.g. http://adam.chlipala.net/cpdt/html/Equality.html

I've never seen a proof that it is actually a congruence.
Is it just defined as the least congruence containing a bunch
of greek rules?

If so, why would such a least relation exist?
(I guess it can be meta-theoretically written as strictly positively inductively defined relation?)

Or, is it completely specified first and then proved to be a congruence? (e.g. in the style of http://www.cs.cornell.edu/Info/Projects/NuPrl/documents/Howe/howeEqualityinLazy_LICS98.ps)

Or something else?

Thanks,
-- Abhishek
http://www.cs.cornell.edu/~aa755/


Hi.

The definition is given on http://coq.inria.fr/distrib/current/refman/Reference-Manual006.html#sec171 :

"
Convertibility.

Let us write E[Γ] ⊢ t ▷ u for the contextual closure of the relation t reduces to u in the environment E and context Γ with one of the previous reduction β, ι, δ or ζ.

We say that two terms t1 and t2 are βιδζη-convertible, or simply convertible, or equivalent, in the environment E and context Γ iff there exist terms u1 and u2 such that E[Γ] ⊢ t1 ▷ … ▷ u1 and E[Γ] ⊢ t2 ▷ … ▷ u2 and either u1 and u2 are identical, or they are convertible up to η-expansion, i.e. u1 is λ x:T.  u′1 and u2 x is recursively convertible to u1, or, symmetrically, u2 is λ x:T.  u′2 and u1 x is recursively convertible to u2. We then write E[Γ] ⊢ t1 =βδιζη t2."


It is not exactly defined as a least congruence (which always exist since powersets are complete lattices) but it is not too difficult to check that it is indeed a congruence (▷ is the contextual closure of the reduction relations).

Best regards,

Frédéric.




Archive powered by MHonArc 2.6.18.

Top of Page