Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] A module cannot be applied to another module application

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] A module cannot be applied to another module application


Chronological Thread 
  • From: Chantal Keller <chantal.keller AT wanadoo.fr>
  • To: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] A module cannot be applied to another module application
  • Date: Mon, 3 Jul 2017 11:28:12 +0200
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=chantal.keller AT wanadoo.fr; spf=None smtp.mailfrom=chantal.keller AT wanadoo.fr; spf=None smtp.helo=postmaster AT ext.lri.fr
  • Ironport-phdr: 9a23:RgN/nB8cOfgt4f9uRHKM819IXTAuvvDOBiVQ1KB52uIcTK2v8tzYMVDF4r011RmSDNqds6oMotGVmpioYXYH75eFvSJKW713fDhBt/8rmRc9CtWOE0zxIa2iRSU7GMNfSA0tpCnjYgBaF8nkelLdvGC54yIMFRXjLwp1Ifn+FpLPg8it2e2//5/ebx9UiDahfLh/MAi4oQLNu8cMnIBsMLwxyhzHontJf+RZ22ZlLk+Nkhj/+8m94odt/zxftPw9+cFAV776f7kjQrxDEDsmKWE169b1uhTFUACC+2ETUmQSkhpPHgjF8BT3VYr/vyfmquZw3jSRMMvrRr42RDui9b9mRgL2hicJNzA382/ZhcJ/g61ZvB2vqAdyw5LXbYyPKPZyYq3QcNEcSGFcXshRTStBAoakYoYRD+oOJ+BYr5XnqFsKsBCwABejBOfryjBWnH/9wKo33PghEQ7c2gwgA8gBsHDOoNX2KqgSVeS1w7fSzTjYYfJZwzH955LVfRAmpvGAR7xwcdDIxEQpCgjLjU2QpJT4Mz+L0ukBqXWX4uhgWO61lmIqqxt9rzepy8wxkIfGnJgVxUrB9ShhwIY6O9m4SEljbNG6H5pQqzuWN49sQsMjWW1otjw6xqUHuZ69YicK1IwqywPBZ/GDaYSE/xDuWeaLLTtlhH9pYr2yiw638Ue6y+38Use00ExNripAitTDqnAN2AbV6sibUPR9+l2t2TWR2ADX7uFLP1o0mLHVKpE7xL4/jIccsUPEHiPslkX2lreadl849eiw9+TnfrLmq4eAOI9zkwHyK7ghmsiiAesjKQUORGia+eGk1LL550H5QbNKjuc3kqbDqpzaK94b9eaFBFpe1Z9m4BKiBR+n1s4ZlD8JNgFrYhWC2qPpMlfSKfSwLvq7h1m22GNgx/nAIrTlRJbAKnzOip/+dLB050lbjgQpm4MMr6lIA60MdaqgEnT6s8bVW0c0

Hi Frédéric,

Thanks for your answer. This works if the nested application is in the
resulting signature of the module, but how to deal with arguments? See e.g.

Module Id' (T:TYPE) (B1:ID T) (B2:ID (Copy T)).

Best
Chantal



Le 03/07/2017 à 10:01, Frédéric Besson a écrit :
> Hi Chantal,
>
> What about having an inner module?
>
> Module Id (T:TYPE) (B:ID T).
> Module CT := Copy T.
> Module IId <: ID CT.
> Parameter id : CT.t -> CT.t.
> End IId.
> End Id.
>
>
> Best,
> --
> Frédéric
>
>
> On Sun, 2017-07-02 at 23:37 +0200, Chantal Keller wrote:
>> Hi,
>>
>> This example is useless, but I would like to do domething similar to:
>>
>>
>> Module Type TYPE.
>> Parameter t : Type.
>> End TYPE.
>>
>> Module Copy (T:TYPE) <: TYPE.
>> Definition t := T.t.
>> End Copy.
>>
>> Module Type ID (O:TYPE).
>> Parameter id : O.t -> O.t.
>> End ID.
>>
>> Module Id (T:TYPE) (B:ID T) <: ID (Copy T).
>>
>>
>> Coq 8.6 complains about the last statement: "Error: A module cannot
>> be
>> applied to another module application or with-expression; you must
>> give
>> a name to the intermediate result module first."
>>
>> How can I give a name to the nested application since I want to use
>> it
>> in the signature?
>>
>> Thanks
>> Chantal



Archive powered by MHonArc 2.6.18.

Top of Page