coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Jeremy Dawson <Jeremy.Dawson AT anu.edu.au>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] implicit arguments
- Date: Sat, 12 Dec 2020 22:42:13 +1100
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=anu.edu.au; dmarc=pass action=none header.from=anu.edu.au; dkim=pass header.d=anu.edu.au; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8SQmc3lEbz/JCkZsaSGVCVnIjWljZwb4S/CBtZ2rbhE=; b=crdBkTrhB2vb/xO0o2QtVZkihNle7dHczLl69dbIIXSEC4s4sj+LOgFtpVqWF0mUUgyGvoBLvKN2cpBEp4bodeoXnNrY8F7YpcOt/h5ENpLHd+tLd5HLTVKcZKGzYzz6NMJFq+Rq7bJx1ZBZgfqWKCEbq/dJgiK81UoIBmCK58tvHrg9oZtZpEas9Yi2qN3O02Dbb51dBdGSklAWk/A3bOkjQ/pdCQhPVBAMpKwN98nc9/5HsbSPvG5etZHzC4na1zCSuO0mF1sNK6wCmW39WzaH9jlrd9kZyl9a+4DjhmhAusxFoG6SG4FPxyPssT4i7uaQwEFWEG9zkYZSg8tj7g==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ACljoEImDLA7UGBtwJe/AwvCcRWb2/IXXC0sgiT96mrODV+4SnRxdAaASN3g+K0bbGSDjW5YeWSf7Hg/114IhGl3J+Y1xje64J5X64EwDBcSWV89R4BPRB4HOvSLxQ16gxkwF3e9SLo4GeVyXLVjm/KksG5Rc5L+lnhzB2c1gpAgUmc4LybTt1QhrjKK+m+wQ1zmVsnlfQvuHXUw9TdkdODmjaO/Z642g2jhKp8y+rVau4j0zRMCJ+8vRnPJZM5GyMRkbkU4vqNMsZMRwsYSTYfAacLeqIsC2mrWDDzdtGNb/5YS6VXPwl6x8BEvgTzEXVYp/EFiJQIMwNXf8ZMKoQ==
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=Jeremy.Dawson AT anu.edu.au; spf=Pass smtp.mailfrom=Jeremy.Dawson AT anu.edu.au; spf=Pass smtp.helo=postmaster AT AUS01-ME3-obe.outbound.protection.outlook.com
- Ironport-phdr: 9a23:w3cwuBbIUpQKMNnL0/+zWH7/LSx+4OfEezUN459isYplN5qZrs+4bnLW6fgltlLVR4KTs6sC17OJ9fmwBSdZuN6oizMrSNR0TRgLiMEbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpTEdFQ/iOgVrO+/7BpDdj9it1+C15pbffxhEiCCybL9vLhi6txjdu8oZjIdtN6o91wbCr2dVdehR2W5mP0+YkQzm5se38p5j8iBQtOwk+sVdT6j0fLk2QKJBAjg+PG87+MPktR/YTQuS/XQcSXkZkgBJAwfe8h73WIr6vzbguep83CmaOtD2TawxVD+/4apnVAPkhSEaPDM/7WrZiNF/jLhDrRy8uRJ/zY7aboKbOvVwfKzSYdwURWtOUctKSyxMAZmxY5cTA+cPP+tVqZT2qVsUrRu5AAmhHOfhxSFShnDo2K070/kqHw/c0w0uBNIOt3LUp8jyOakWT++11rfHzTDDbv9M1zny8obJcgsmofGKRr9/a8zRyVQ1Gwzbk1qQtJbpMCmI1ukUtWWQ8uVvW/61hWE9twFxviagxt0qioTRiY8Yyk3J+Dh2zYs7ONC0VUB2bNCqHZdNtiyXKYV7T988T2x2uCg21qEKtYC7ciUL1Zkr2QLTZfOZfoWM/h/vSuCcKip2inJifbKwnRey8U64x+39UMm0yldKoTBfntnCrHAA0QHY5MufSvZl8UqtxSyD2x3P5uxGO0w4iLbXJp07zrIti5YevlzPEyDylUnskaObdVko9vKq5unleLnqu4GQOoxyhwrjKKohgNa/Dv49MgUWX2iU5+C81Lr78EDlTrpEk+E6nrTAvJ7dKsoWqLe1AwhO3Yk98Rq/CCqm0MgDknkAMVJFfg+Ig5LxO1HUJ/D4EemwjEiwkDdqwPDGOKftApLQLnjflLfherF9601GxAUvytBf4opYCrAHIP3tRk/8rNPVAgMjPwCp3+rqCs9x2p4CVW+MGKOVLb7evFCQ6uIqOeaMZYsVuDjnK/gi4v7jlXs3lkEHfaa32JsWaGq0EPp8LESXenrshdEBHHwQsQo4UezmkkONXiNOZ3qoRa08+yk3CJi6AofbWoCtnLuB0T+nEZ1Rf2BKE0yDEXP1d4qfQPoMcyKTIsp5kjMeT7ShSokh1QuvtADg0bZnIPDUqWUkssfo08Ew7OnOnzkz8yZ1BoKTyTKjVWZxy0EFXTIzzehTqFNmzVHLhYp1mfFdBJp/7uxSVQESPJjBieF2Fpb7R1SSLZ+yVF+6T4D+UnkKRdUrzopWOhcvK5CZlhnGmhGSLfoQnr2PCoYz9/uGjXH3OoBwx2uA3bRz1gB6EPsKDnWvg+tEzyaWH5TAyh/LnqC3M6kQwWjE6TXblDfcjARjSAd1FJ79czUfa0/R8Yurz375F+brLJl8dwxLxIiFN7dAbcDvgRNeXvD/Nd/CYmW33WCtGRKPwbDKZ43vKTwQ
Hi Jim,
Thanks. I think the second reference was meant to be
https://coq.inria.fr/distrib/current/refman/language/core/definitions.html#grammar-token-term_let
but that is for a different use of :=
I've found a section on := used as in this case, it's at
https://coq.inria.fr/distrib/current/refman/language/extensions/implicit-arguments.html
under the heading Explicit applications
but it doesn't include info on when implicit argments are implicitly inserted
Whereabouts can I find information about what is happening here?
Thanks,
Jeremy
On 10/12/20 3:32 pm, Jim Fehrle wrote:
Check this section of the manual: https://coq.inria.fr/distrib/current/refman/language/extensions/arguments-command.html, that may have what you seek. Still lots of things in the manual need improvement.
However, I'm not an expert on implicit arguments.
It's a bit hard to index :=, it's used in 77 places in the grammar. A few non-alphabetic items appear in the general index, but what's there is probably woefully inadequate. Here is one basic use:
http://localhost:63342/coq2/doc/sphinx/_build/html/language/core/definitions.html#grammar-token-term_let
Jim
On Wed, Dec 9, 2020 at 7:46 PM Jeremy Dawson <Jeremy.Dawson AT anu.edu.au <mailto:Jeremy.Dawson AT anu.edu.au>> wrote:
Hi,
I have tried to find out when implicit arguments are inserted. Is this
in the documentation anywhere?
With a function
lja_dd_ord < About no_rpt_same.
no_rpt_same :
forall U : Type,
relationT U ->
forall (rules : list U -> U -> Type) (prems : U -> Type) (c0 : U),
derrec rules prems c0 -> Type
Arguments U, rules, prems, c0 are implicit
I find
lja_dd_ord < Check no_rpt_same seq_ord.
no_rpt_same seq_ord
: forall (rules : list (srseq (PropF ?V)) -> srseq (PropF ?V)
-> Type)
(prems0 : srseq (PropF ?V) -> Type) (c0 : srseq (PropF ?V)),
derrec rules prems0 c0 -> Type
which is as I expected (as a matter of fact, I can't find this
documented either, but I've discovered from experience that implicit
arguments (non-maximal) are inserted up to the last explicit argument)
but
lja_dd_ord < Check no_rpt_same seq_ord (prems:=prems).
no_rpt_same seq_ord (prems:=prems)
: forall c0 : srseq (PropF V), derrec ?rules prems c0 -> Type
ie it seems to have inserted the implicit argument rules also.
What are the rules about this?
And if there are any tips for finding things like this in the
documentation, I'd appreciate it. For example, the symbol := isn't in
the general index, which I would have expected.
Thanks
Jeremy
- [Coq-Club] implicit arguments, Jeremy Dawson, 12/10/2020
- Re: [Coq-Club] implicit arguments, Jim Fehrle, 12/10/2020
- Re: [Coq-Club] implicit arguments, Jeremy Dawson, 12/12/2020
- Re: [Coq-Club] implicit arguments, Jim Fehrle, 12/13/2020
- Re: [Coq-Club] implicit arguments, Fabian Kunze, 12/13/2020
- Re: [Coq-Club] implicit arguments, Jeremy Dawson, 12/13/2020
- Re: [Coq-Club] implicit arguments, Jeremy Dawson, 12/12/2020
- Re: [Coq-Club] implicit arguments, Jim Fehrle, 12/10/2020
Archive powered by MHonArc 2.6.19+.