Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Problem with definitions scope in imported module

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Problem with definitions scope in imported module


Chronological Thread 
  • From: mukesh tiwari <mukeshtiwari.iiitm AT gmail.com>
  • To: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] Problem with definitions scope in imported module
  • Date: Sun, 22 Dec 2024 13:03:35 +0000
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=mukeshtiwari.iiitm AT gmail.com; spf=Pass smtp.mailfrom=mukeshtiwari.iiitm AT gmail.com; spf=None smtp.helo=postmaster AT mail-oa1-f48.google.com
  • Ironport-data: A9a23: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 wRAO0QDOXk=
  • Ironport-hdrordr: A9a23:Lbh8V6pXs2yEPgAPmJvP1k0aV5odeYIsimQD101hICG9E/bo7/ xG+c5w6faaskd0ZJhNo6HkBEDEewK/yXcX2+ks1NWZLW7bUQKTRekI0WKh+UyCJ8SUzJ866U 4PSdkGNPTASXZ/yej1iTPWLz/i+rW6GWKT6Ns2A00CceiiUcBd0zs=
  • Ironport-phdr: A9a23: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 l4GneO+IoMUOYn2nUdlbwsi9Lk=
  • Ironport-sdr: 67680e34_1kC82D3LKxmO4f0xExQ0eDhCsmbMZszy2if4RY4nEXUlTBS CcmaS8LpyVZ8fowofKnVwHS5zJ8sVTbMXapYfYA==

Hi Richard, 

In F2.v you have a definition  *Module Mereology (M1 : UsualDecidableTypeFull) := DST_signature(M1).*  and then the same in F3.v  *Module Mereology (M1 : UsualDecidableTypeFull) := DST_signature(M1).*. I suspect when you redefining Mereology in F3 and subsequently importing F2.v, somehow it is causing some confusion.  Trying removing the definition *Module Mereology (M1 : UsualDecidableTypeFull) := DST_signature(M1).* from F3.v and see if it works (I am not an expert in modules so I cannot say for sure it is the case). 

Best, 
Mukesh 



On Sun, 22 Dec 2024 at 12:15, richard <richard.dapoigny AT univ-smb.fr> wrote:
Dear coq members,

I have the following problem with importing definitions with multiples
coq modules:

I have a file F1.v :
=====================================================================

Module  DST_signature (M1 : UsualDecidableTypeFull).
Import M1.
...
End DST_signature.
=====================================================================

then a file F2.v (there is a file F1.vo) :

=====================================================================
Require Import F1.

Module Mereology (M1 : UsualDecidableTypeFull) := DST_signature(M1).

(** Module Abstract *Structure **)

Module geometry_signature (M1 : UsualDecidableTypeFull).

Module basis_mereo := Mereology M1.
Import basis_mereo.
...
End geometry_signature.
=====================================================================

and finally a file F3.v (there is a file F2.vo and a file F1.vo) :

=====================================================================

Require Import F1.
Module Mereology (M1 : UsualDecidableTypeFull) := DST_signature(M1).

(** Module Abstract *Structure **)

Module AbstractStructure (M1 : UsualDecidableTypeFull).

Module basis_inst := Mereology M1.
Import basis_inst.
...
End  AbstractStructure.

Require Import F2.

Module Tarski_geom (M1 : UsualDecidableTypeFull).

Module basis_mereo := Mereology M1.
Import basis_mereo.
Module adt := AbstractStructure M1.
Import adt.
Module geom := geometry_signature M1.
Import geom.
...
Lemma test : forall A, η A balls -> η A (el Gspace). -> fail
...
End Tarski_geom.
=====================================================================

While there is no problem for all variables defined in F1 there seems to
be a problem with variables  defined in F2 since the error is :

The term "Gspace" has type "basis_mereo.N" while it is expected to have
type "N". (Gspace is defined in F2)

If someone has an idea to solve the problem?

Thanks in advance,

Richard




Archive powered by MHonArc 2.6.19+.

Top of Page