Skip to Content.
Sympa Menu

coq-club - [Coq-Club] Axioms in default hint databases

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] Axioms in default hint databases


Chronological Thread 
  • From: Gregory Malecha <gmalecha AT gmail.com>
  • To: Coq Club <coq-club AT inria.fr>
  • Subject: [Coq-Club] Axioms in default hint databases
  • Date: Tue, 15 Dec 2015 16:22:45 -0800
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=gmalecha AT gmail.com; spf=Pass smtp.mailfrom=gmalecha AT gmail.com; spf=None smtp.helo=postmaster AT mail-qk0-f177.google.com
  • Ironport-phdr: 9a23:BgfL6hK/hcwf5IMAYNmcpTZWNBhigK39O0sv0rFitYgULPjxwZ3uMQTl6Ol3ixeRBMOAu6wC07KempujcFJDyK7JiGoFfp1IWk1NouQttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXsq3G/pQQfBg/4fVIsYL+lRMiK14ye7KObxd76W01wnj2zYLd/fl2djD76kY0ou7ZkMbs70RDTo3FFKKx8zGJsIk+PzV6nvp/jtLYqySlbuuog+shcSu26Ov1gFf0LRAghZksy/YXAsQTJBV+E4WJZWWELmDJJBRLE5Vf0RMGinDH9s79SwiSVOtfnBZU9XTmp764jHBDtgSMKPD4w2G7Sg810yqlcpUTy9FRE34fIbdTNZ7JFdaTHcIZfHDIZUw==

Hello --

I just did a "Print Assumptions foo" on my final theorem and found out that some of my development depends on the following axiom:

Eqdep.Eq_rect_eq.eq_rect_eq : forall (U : Type) (p : U) 
                                (Q : U -> Type) (x : Q p) 
                                (h : p = p), x = eq_rect p Q x p h

After tracing down the bug for about 20 minutes, I found that it was introduced by a call to [intuition]. [intuition] uses some hint databases that include axioms. The above axiom was included by the following chain of includes and definitions.

Coq.Classes.EquivDec
which includes
Coq.Program.Program
which includes
Coq.Program.Equality
which defines the following

Ltac is_ground_goal := 
  match goal with
    |- ?T => is_ground T
  end.

(** Try to find a contradiction. *)
Hint Extern 10 => is_ground_goal ; progress exfalso : exfalso.

and includes
Coq.Logic.Eqdep
which contains the hint
Hint Resolve eq_dep_eq: eqdep v62.

I assume that one of these databases (eqdep or v62) is included by default.

This seems like bad behavior and I'm wondering if it is possible to prevent tactics from using axioms that occur in hint databases. I'm also wondering if anyone knows a fragment of the standard library that is safe to use and avoid axioms.

--
gregory malecha



Archive powered by MHonArc 2.6.18.

Top of Page