coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- 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
- [Coq-Club] A module cannot be applied to another module application, Chantal Keller, 07/02/2017
- Re: [Coq-Club] A module cannot be applied to another module application, Frédéric Besson, 07/03/2017
- Re: [Coq-Club] A module cannot be applied to another module application, Chantal Keller, 07/03/2017
- Re: [Coq-Club] A module cannot be applied to another module application, Frédéric Besson, 07/03/2017
- Re: [Coq-Club] A module cannot be applied to another module application, Chantal Keller, 07/03/2017
- Re: [Coq-Club] A module cannot be applied to another module application, Frédéric Besson, 07/03/2017
- Re: [Coq-Club] A module cannot be applied to another module application, Chantal Keller, 07/03/2017
- Re: [Coq-Club] A module cannot be applied to another module application, Frédéric Besson, 07/03/2017
Archive powered by MHonArc 2.6.18.