coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Gaëtan Gilbert <gaetan.gilbert AT skyskimmer.net>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] Detailed intro of libobject?
- Date: Mon, 18 Jan 2021 13:39:57 +0100
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=gaetan.gilbert AT skyskimmer.net; spf=Pass smtp.mailfrom=gaetan.gilbert AT skyskimmer.net; spf=None smtp.helo=postmaster AT relay5-d.mail.gandi.net
- Ironport-phdr: 9a23:1HMMsRyCBv4+pCnXCy+O+j09IxM/srCxBDY+r6Qd2usTIJqq85mqBkHD//Il1AaPAdyKraoUwLaP++C4ACpcuMnH6ChDOLV3FDY9wf0MmAIhBMPXQWbaF9XNKxIAIcJZSVV+9Gu6O0UGUOz3ZlnVv2HgpWVKQka3OgV6PPn6FZDPhMqrye+y54fTYwJVjzahfL9+Nhq7oRjVu8UMnYdvKak9xxTUrnBVf+ha2X5kKUickhrh5Mq85oJv/zhVt/k868NOTKL2crgiQ7dFFjomKWc15MPqtRnHUwSC42YXX3sVnBRVHQXL9Qn2UZjtvCT0sOp9wzSaMtbtTb8oQzSi7rxkRwHuhSwaKjM26mDXish3jKJGvBKsogF0zoDIbI2JMvd1Y6XQds4YS2VcRMZcTzFPDJ2yb4UPDOQPM+hXoIb/qFQSohWzHhWsCeD1xzNUmnP706833uI8Gg/GxgwgGNcOvWzVotrvKKASTfq6zK/QwjvCbvNW3Szy55bSchA9vPqBWr1wftDPxkkzDQzFiE+cqYPkPzORzesCrXKb7/Z7WOK0iG4mqxpxojuuxscpj4nGmJgVxkrC9Spn3IY4PNu1Q1N0btC4CpVfrT2aN5doTcM4RWFloCY0x7kbtJKlYSUEx5cqyh3CZ/GGb4SF5h3uWfqeLDp8h39oZr2xihWs/Eauy+DxS8a53VRFoCdBj9XBqHMA2RPV58OaSfV95l+s1SiS2w3R8O1JI1w4mbDGJ5MizLM8jIcfvEDBEyPuhkn6kaGbel859uWo9ejreKjqq56CO4NuiQzzPaIjkdGlD+siKAgBRW2b9Py81LL9+U35R61Hjuconandqp/bJcQWqrekDANP14Ys8Re/DzO83NQXh3YHKk9KeBOdg4jvJV7OPOj0Dfa5g1uyjDdm3+7KMqDjD5nXLHXPjK3tcat+5kNS0gY/0NRS6pBMBrEEOv3zW0vxtNLCDh8+Ngy52+nnB89j2YMCQ22PBLWVMKzTsV+M/e0gPfOMZJMOtTbmKPgk5+XujXw4mV8YeKmmw4EXZGq+Hvt4P0WVeWDsjcsZEWcWogo+S/Tnh0GFUT5Kfnq9Q6Y85iwgB4+9FofCRoWtgKSb0yuhH51WYHpGClGWHnvyeYWEQaREVCXHKch41zcASLKJSok71BjouhWp5aBgK7/7864EvJTU+9lx7eDJiVlm+jV5E82blW6MS2t5hH8gXDwnx6N+pElw0BGF3LQu0K8QLsBa+/4cClRyDpXb1eEvU4mvCDKERc+ATROdevvjATw1SYhskcUDZ09sRpCuyBXK3i7sDLYTm73NApEooPqFjirBYv1lwnOD75EPylwvQ89BL2qj3/At7AvCHI3IlkCUjeCseLhOhXeRplfG9nKHuQRjaCA1Sb/MBC5NfUjHttf440bPVfmoBKh1agY=
>Because otherwise, according to the semantics of “Require Import”, the size
of vo of a top level function with very deep nesting of sub function calls will
be very large.
Require Import shouldn't change vo size by much, are you sure this is the
problem?
Gaëtan Gilbert
On 18/01/2021 13:29, 刘坚 wrote:
Hi all,
Currently we are developing a formal verification tool based on coq.
Here is the background:
There exist many .v files for a project, one for each C function. So when we
were generating proof of a C function, it is reasonably needed to “Require
Import” all proofs of its calling functions.
Suppose that: each proof script contains both the definition of a C function
and the definition of its proof term.
The problem is that: in practice, when we are “Require Import”ing a proof,
all we want to import is the proof term defined, not the C function
definition. Because otherwise, according to the semantics of “Require
Import”, the size of vo of a top level function with very deep nesting of sub
function calls will be very large. We want to import the necessary constants
only.
Here is the question:
Is there any way to import constants in an selective way? If not, could you
please introduce me some materials about the libobject module in the src of
coq? Because I am currently reading the source code but got stuck on this
module. As far as I know, it will be very helpful to understand libobject
before I can solve my problem.
Could you please give me some suggestions?
Thank you!
Best,
Jian
- [Coq-Club] Detailed intro of libobject?, 刘坚, 01/18/2021
- Re: [Coq-Club] Detailed intro of libobject?, Gaëtan Gilbert, 01/18/2021
Archive powered by MHonArc 2.6.19+.