Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] how to state a hypothesis with the help of another hypothesis

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] how to state a hypothesis with the help of another hypothesis


chronological Thread 
  • From: Adam Chlipala <adam AT chlipala.net>
  • To: Gyesik Lee <gslee AT ropas.snu.ac.kr>
  • Cc: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] how to state a hypothesis with the help of another hypothesis
  • Date: Wed, 10 Nov 2010 07:55:36 -0500

Gyesik Lee wrote:
Sorry, a bit late in the discussion.

There are two main options.  First, you can use a cast:

Hypothesis t_full :
  forall n:nat, exists s:States, match t_nat in _ = T return T with
refl_equal =>  s t end = n.
I really like this "case" trick. But I am really wondering if we can
avoid using  [JMeq] in principle or at least in many (how many?)
cases?

I can answer "yes" if you're OK with this statement of the property: [JMeq] with its associated axiom is logically/expressively equivalent to normal equality with the [eq_rect_eq] axiom from Coq's [Eqdep] library. Chapter 9 of CPDT (http://adam.chlipala.net/cpdt/) shows how to encode each predicate and its introduction/elimination rules in terms of the other predicate and its rules.



Archive powered by MhonArc 2.6.16.

Top of Page