coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Qinshi Wang <qinshiw AT cs.princeton.edu>
- To: coq-club AT inria.fr
- Cc: Ralf Jung <jung AT mpi-sws.org>, Lawrence Dunn <dunnla AT seas.upenn.edu>
- Subject: Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs
- Date: Sat, 11 Jun 2022 00:27:40 -0400
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=qinshiw AT cs.princeton.edu; spf=Pass smtp.mailfrom=qinshiw AT cs.princeton.edu; spf=Pass smtp.helo=postmaster AT violeteyes.cs.princeton.edu
- Ironport-data: A9a23:NK3xvqKbZqhGmBlGFE+RMpMlxSXFcZb7ZxGr2PjKsXjdYENS1jADx 2pLXm+EaayMY2D8fo1+b9+290kG65HXy4UyGlAd+CA2RRqmi+KVXIXDdh+Y0wC6d5CYEho/t 63yTvGacajYm1eF/k/F3oDJ9CU6jefSLlbFILas1hpZHGeIcw98z0M68wIFqtQw24LhXVrU4 YqaT/D3YTdJ5RYkagr41IrY8HuDjNyq0N/PlgFWiVhj5TcyplFNZH4tDfnZw0jQHuG4KtWHq 9Prl9lVyI92EyAFUbtJmp6jGqEDryW70QKm0hK6UID66vROS7BbPqsTbJIhhUlrZzqhp8B/z s9J5b+KZgYQN5OQwOEBXBQfKnQrVUFG0OevzXmXr82Uy0Dafmrh2LNlFwcuJ4we8etrBmcI+ PAFQNwPRknZ16Tvmej9E7IywJl+RCXoFNt3VnVI1DDfFvYnXrjIWOPS/95e1zosgcYIEPrDD yYcQWMxMEqQM0YeUrsRIL05jMKB2ya8SBFjjG3W9a8Kui/Z6yUkhdABN/KIKo3RHZg9clyjj mnB5iHyBgwQHMeOzCKMtHOqnO7G2y3hML/+D5Wm9/lujUGe12EIThYNE0OhoP+yh1K5XZRSJ 1F8FjcSQbYazFylSMP5Dz6Cj3+9tyBAA99MHOB90VTYokbL2DqxCm8BRz9HTdUpss4qWDAnv mO0c8PV6S9H7OXOFCnFnluAhXbtZXZIcTZqiTosFFNt3jX1nG0kYvsjpP5bCq+zhdDpHjeYL 9ui9Hhj2+l7YSIj8aiktXLKmSmht/D0ouMd+ATQWm+54xJ0f8iufMqw81nd5vtcK4DfQ1Wc1 JTlpyR8xLxfZX1uvHXTKAnoIF1Pz6zUWNE7qQQxd6TNDxz3pxaekXl4uVmS3ntBPMceYiPOa 0TOow5X75I7FCL0MPMnM9/hV5l2kPOI+THZuhb8MoEmjn9ZKFLvwc2STRT4M53FyRNzzf5lU XtlWZ/9Uh729piLPBLrF7ZGieJDKtEW3XnSQ5v20xOhmaeYZWCYU6wELErmUwzKxP7snekhy P4Gb5Hi40wGAIXWP3mGmaZOfAtiBSVqWvjLRzl/K7frzvxOQzp6VZc8ANoJJuRYokiivr6Up CniCh4AkwCXaL+uAVziV02PoYjHBf5XxU/X9wR1Vbpx83R8M4up8okFcJ47Iesu+OB5lKAmR OJDY9+BBP9CVjPBvTkRcMCl/oBlcR2qgyOIPjakPWRjI8Y+G1SR94+2ZBbr+QkPEjGz5Jk3r LCX3w/GRYYOGlZ5B8HMZfPzl1685CBPmO97U0bSDMNUfUHgrNpjJyDr16FlKNpKMQ/CwDCXy wGQRxoUuLCV8YMy9dDIg4GCrpuoTrciQhIEQzGD4O/vZyfA/2elzYtRa8qyfGjQBDHu5aGvR eRJ1PWtYvQIkWFDv5d4D7s2n7k14MHipuMCwwlpQCfLYlCsBu8yK3WKx5MQ5LNMwbtUpQanV 1nJ8cIcIa+IPsjoDFkXYgcpc73bh/0TnzDT69UzIVn7uXMroOLZDR0KMknekjFZIZt0LJghk LUot8Mh4gCijgYnb4SdhSdO+mXQdnEND/c9upcBDNO5gwYn0AsdM4LdDSv7/JyeZs4KOVJsO iWVgqHPm7NagEfObiNrR3TK2ONcg7UIuQxLkQNeewzXxoKdi69lxgBV/BQ2Uh9Rn0dO3O9EM 2R2M1F4ePeV9DByickfB22hFmmt3vFCFpAdFrfIqIHYc6VsfnLMK2kwJeuc8Vtf+HkaZiJa+ rqV1GHjFzvmYakdGwMsDFV9paWLocNZr2X/dAKPRqxp3KXWpRLumem2f2sOoBb7BsV3iUHaz QWv1PglcrX1bEb8vIViY7R3Ft0spNSsL3cEWetg+qgEAWbaPjy+xFBi7qx3ltxlf5T3zKNzN yCiyg+jmfhzOOZiYw333ZIxHoI=
- Ironport-hdrordr: A9a23:o0AdwqyuX73C2MTmohj3KrPwCr1zdoMgy1knxilNoNJuA7Wlfq GV7YwmPHDP+VQssR0b6LO90ey7IU80lqQa3WByB8bHYOCOggLBR+tfBMnZogEIcBeOkdK1u5 0QFZSWy+ecMXFKyej/6Am8V/A6wNeG96iswcPT1W1kQw0vS4wI1XYdNu9WKCFLrcB9aqYEKA ==
- Ironport-phdr: A9a23:cY8EYhxdzMpI9hXXCzJGwFBlVkEcU1XcAAcZ59Idhq5Udez7ptK+Z heZvKw3xwCWFazgqNt8w9LMtK7hXWFSqb2gi1slNKJ2ahkelM8NlBYhCsPWQWfyLfrtcjBoV J8aDAwt8H60K1VaF9jjbFPOvHKy8SQSGhLiPgZpO+j5AIHfg9q52uyo5pHffhtEiDW/bL5wM R67sRjfus4KjIV4N60/0AHJonxGe+RXwWNnO1eelAvi68mz4ZBu7T1et+ou+MBcX6r6eb84T aFDAzQ9L281/szrugLdQgaJ+3ART38ZkhtMAwjC8RH6QpL8uTb0u+ZhxCWXO9D9QKsqUjq+8 ahkVB7oiD8GNzEn9mHXltdwh79frB64uhBz35LYbISTOfFjfK3SYMkaSHJOUcZfVSNPAo2yY YgSAeQfI+tXs5LwqEESoRakHwSgGP/jxz1Oi3Tr3aM6yeMhEQTe0QI7HtIOtm/UrNX0NKwPU e+61q/IzTreZP5RwDf96Y7IcgshofGNU7N9atbeyVI1GwPdlFWQqIrlMC+L2eQRtGib6fBsW vyyhG46sgx8pCWkycgwhIfTnI0V1kzE+jtjwIYzPdC1Sk51b966HZdOqS2WKZV7TMM+T29np Co217ILt5C/cSUKzJkr2RrSZv+FfoWI4R/vSfucLDhkiX94Zb6zmRS//E69wePyUcm01UxFr itDktTUuXAN1gDT6siaSvRm5EuuxTGP1wXL5u5eO0A1mqvbK4A7zr43jJoTvlzPHjLumEroi q+WcF8o9fa15OT6ernmu4WcN4tphQ7gPKQhhMq/Af8mPQQUQ2eb/uG82KXi/U3/WrVKj+c5n rPXsJDAPcgbvLS2Awtb0oYh8RqwEimp3dIFlncENFJIYA+Lg5bqNl3UPfz0EOmzj06xnDplx v3KJL3sD5XVInTdjLvseaxx5k1cxQYp0NxS5pNZBqscLP/xWUL8ssHTAAUjPAyu2ennDc1w1 oMAVmKLBa+UKL3SsV6P5uIrPeaMeJEauTbjJPg+/fLhkWQ5lUUFfamz3JsXbmy3Eep6I0WeZ 3rgmMkOHnoXvgYmTezqjkONUSJLanqvQa4x5Ss3BJ+7AYvdXIyhnbKM0SahEpBWZm1KElWMH m3pd4WAVfcMciWSIsp5nzwdVLihTZQh1RGvtA700LdoMvHU9jcAtZL51dh14fHcmg8u9TxzC cSRyX+CQHxpnm8QQT85x7hwoVZhxVebzah4n/tYGMRO6/9RSAc1KYbcz/BmC9D1Qg/OYtCJS E+/Ttq6BTExU8k+zsQVY0d9HtWilgrM0zCrA78TjbyLBYY7/rjS33jrdI5BzCPN07BkhF07S ONOM3enj+hx7Vv9HYnMxnyYkb2qdOwj1SjCvDOazGyVvEBHeAVrF73fXHYUa1fRq5L06l6UH OzmMqguLgYUkZ3KEaBNcNC8yAweHJ8LWfzbamO1wCKrAAqQg6iLdMzscnkc2yPUDA4FlRoS9 DCIL1t2HT+v9kTZCjEmDlfzewX06+ArsXK9VU810CmBdAt5zbuz8RMJgvraRv8OjfofoCl0k zxvBx6m2s7OTd+Jpg5vZqJZNMo85kxH1H3xvBc7JoahKatvmlkYNQl7ohCmzA15X71JitNit 3Y21ExyJKafhUtGbC+d1IvsN6f/NGj1+B2zZr/bwRfVy5CO4KYJ4/kkrFOlsQ20fqY721Ng1 dQdk36V55GRSREXTYq0SUEvsR5zu7DdZCA5oYLSz3xld6eu4HfE3JoyCe0pxwzFHZ8XOb6YF AL0D8wRBtS/YO0slV+zaxsYPedUvKcqNsKifvGC1ealJuFl1D6hiG1G5sh63Cfuv2JlS+jT3 5ca6/qDmBOdVjH3gUumtIb6lZ0FLTAeE2yjyDT1UZZLb/4XH85DAmOvLsurg9Rm0se3CzgBr QTlXghYnpL0Kn/wJxTn0AZd1FoauymikCq8lHlvli0x67GYxGrIyvjjcxwOPihKQnNjhBHiO 9vR7ZhSUU62YgwujBbg61z9wv0RvaV5NGnSXm9DZG7uNWBkWaassbzEbsJSosBN020fQKGnb FaWR6So6QIb1TjjHnR2zyt9byurvJ70gxt8zm+RMTwgyRiRMdE1zhDZ6tvGQPdX1TdTXyh0h w7cAV2kNsWo99GZ/3vamti3THnpFphacC2wiJiFqDP+/mpyRxu2g/G0nNTjVwk8yy7ykddwB 23EqxP1Y4+j0KrfU6ovZ0huH1/99OJxAcdmiIo2j5wM3n5ci5mItXYKimb8N9xH1Lm2NSBdA 2dSmZiMu1ajhRArJ2nspcqxTniHx8p9e9S2Kngb3C4w9YECCauZ6qBFgTogp1O5qQzLZv0u+ 1VVgfAq6XMcn6QIoF90lHXbW+lIWxADY2qxykftjZj2tqhcaWexfKLl0UN/mYvkF7SeukRHX 26/fJ4+HCh258E5MVTW0XS15Ju3HbuYJd8VqBCQlA/NyuZPL5dk3OMLgzFnOH3VtmZj0/Q6i xdjwZa8+oWLNi8+mcDxSg4dLTDza84Jr3v0jKBFnseJ94u0WI17GzMAUYfvS7SlHC9Y5pGFf 06eVTY7rHmcA7/WGwSSvVxno3z4GJeuL3iLJXMdwIYqVFyHKUdYmgxRQCQik8tzCFWx3MK4O hQchHhZ9hvipxBL0O4tKxTvTjKVulKzcjltAJ2PZBtOslMbvReTaJXEqLsoQWcAucf6yW7FY m2dbABVAWxbQlaFAVvuIr6oo9TM7qCOD+66ZZMieJ22oPdFH7eNzJOric59+iqUc96IJj9kB uE63UxKWTZ4Hd7YknMBUX5fmyXIZs+d7BCyn08/5ti46+juURnz6JGnFbpVNdhz9gG7muGIL KiInid/IjtE0ZVKyHPVgLQSx18djShyeiLIc/xI7HSdCvuJwOkOVEBdNn47PdAA968m2whRJ cPXwsj40LJ1lL99CltIU0DghtD8ZcEOJDLYVhuPD0KKObKaYDzTlpitMeXlEOcW1b4K8UDt6 lP5Wwf5Mz+OlifkTUWqOOBI12SAOQBG/Zq6alBrAHTiS9Tvblu6NsV2hHs42+5R5DuCOGgCP Dx7a04IoKeX6HYSm/R5AGxA8VJuNq+cgSef5OTELZBQvPd2SHcR9aoS8DEhxr1Z4TsRDuRyg zfXp8VyrkuOjOiIzjd7XQtDsXBAn8STp0RkMqjF8Z8GVHrZtkFojy3YG1EBoN1rDcfqsqZbx 43Ula79HzxF9srd4coWA8WHYNLCKncqNgDlXSLFFAZQByD+LnnR3gYO9ZPavm3QtJUxrYLg3 YYDWqMOHkJgDesUUwxsVJkLJJM9NtvFuaCai8oF+XevoQKXT94cporGUPmfHfLpbjuVkOsdD /Pt6bjja5wJN4vw1lBlbB93kJmYQyI4svhGuWt5dA4yq0hR9344Q2EuiRuNVw==
- Ironport-sdr: nF0cHlWQ5RlQjKgVju0LFqY6BXaWkQA5SlwS/xH+L558B2eksqzzYbNbFbo68ZC6hjsegRZbEl Kds2hEhU4uTpMJxOymlwfoeBlsjQKg5yQRhIq1eVY/z2/ASDGEcjlMcjfJSPlpDABUNd+8muUJ FxDeMI4+RqpDr8tpxRNFN6hZM8UDa/lcZHSOzysCu3DQDnEmheSeVubyoz/lAfhIY/7qhbPpc1 cqOKa2aVD1ExBS2PfKTSNIOFsAp20rv87dls7yMXqWIeMgzJKzghRMvrGrHGYIALhoOrbvxloz zW3FEtR8JiKyphUJAW/htBXn
I agree that traversal is a generalization of induction. Induction schemes apply homogeneous rules for each node, but traversal schemes can chain them together. But although I don't quite understand Lawrence's real-world examples, I think he suggests traversal schemes are generalization of induction schemes and laws of traversal schemes are generalization of laws of Forall relations. The latter is not so similar to induction schemes.
Thanks,
Qinshi
On Fri, Jun 10, 2022 at 10:50 PM Ralf Jung <jung AT mpi-sws.org> wrote:
I would say traversal over a data structure is a form of induction. But that is
probably a matter of definition. ;)
; Ralf
On 09.06.22 23:12, kirang wrote:
> Perfect, yes, I guess traversal functions are a class of second-order properties
> in Coq other than induction that would satisfy what I was looking for.
>
> Thanks for the links in this thread, I'll look through them.
>
> Thanks,
> Kiran.
>
> On 2022-06-09 21:48, Castéran Pierre wrote:
>> - External Email -
>>
>> Hi,
>>
>> Maybe the proof that the Ackermann function is not primitive
>> recursive ?
>> It is based on an induction on any PR function on any arity, using
>> Russel O’Connor’s formalization from his Goedel contrib.
>>
>> There is a version in https://github.com/coq-community/hydra-battles
>>
>> Pierre
>>
>>> Le 9 juin 2022 à 21:19, Lawrence Dunn <dunnla AT seas.upenn.edu> a
>>> écrit :
>>>
>>> If it is not too far afield, a class of examples comes from
>>> considering operations that are polymorphic over a class of
>>> functors, second-order in the same sense as in this paper:
>>> https://arxiv.org/abs/1402.1699. This is one approach to
>>> datatype-generic programming (and proving). This is actually related
>>> to the example involving finitary containers, aka traversable
>>> functors, which may be characterized entirely by law-abiding
>>> 'traverse' operation whose type is polymorphic over a choice of
>>> applicative functor, as discussed in the paper above. The type of a
>>> traversal over a container datatype T (list, tree, etc) is
>>> `traverse : forall (Applicative F) (A B : Type), (A -> F B) -> T A
>>> -> F (T B).`
>>>
>>> At first the traverse operation looks like "just" an elimination
>>> principle for defining operations on T, used this way in functional
>>> programming. But it can also be used in proofs about finitary
>>> containers, so more like an induction principle. In fact the example
>>> Forall given earlier is just a special case defined by traversing
>>> with the binary relation, where one views the "powerset" functor `(X
>>> \mapsto (X -> Prop))` as applicative. The properties of Forall can
>>> be derived from the laws of traversals. So a law-abiding traversal
>>> would seem to meet your criteria as a second-order property used in
>>> proofs which is not just induction.
>>> A real-world example in Coq would be found in my library Tealeaves
>>> (https://github.com/dunnl/tealeaves), intended to be used for
>>> datatype-generic reasoning about syntax. One quantifies over a
>>> choice of traversable monad and can prove lemmas such as "two
>>> simultaneous substitutions in 't' are equal just if they are equal
>>> pointwise on the variables that occur in 't'," using a law-abiding
>>> second-order operation which generalizes traverse. See e.g. the
>>> lemmas derived at
>>>
>>>
>> https://github.com/dunnl/tealeaves/blob/dcff3c3d0f8c5982d2996f77e932d12cedcf2f0e/Tealeaves/Classes/DecoratedTraversableMonad.v#L958
>>
>>>
>>> and the relatively high-level theorems like
>>>
>>>
>> https://github.com/dunnl/tealeaves/blob/dcff3c3d0f8c5982d2996f77e932d12cedcf2f0e/LN/Theory.v#L871
>>
>>>
>>> which use this method of proof.
>>>
>>> This isn't fully written up yet but I hope it makes some sense.
>>>
>>> Best,
>>> Lawrence
>>>
>>> On Thu, Jun 9, 2022 at 2:45 PM roux cody <cody.roux AT gmail.com>
>>> wrote:
>>>
>>> Here's a classic example, involving the proof of normalization of a
>>> typed lambda calculus from
>>> https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html [1]
>>>
>>> Fixpoint R [2] (T [3]:ty [4]) (t [5]:tm [6]) : Prop :=
>>> empty ⊢ [7] t [5] \ [7]in [7] T [3] ∧ [8] halts [9] t [5] ∧
>>> [8]
>>> ( [8]match T [3] with
>>> | <{ [10] Bool }> [10] ⇒ True [11]
>>> | <{ [10] T1 → T2 }> [10] ⇒ (∀ s [12], R [13] T1 s [12] →
>>> R [13] T2 <{ [10]t [5] s [12]}> [10] )
>>> end) [8].
>>>
>>> Obviously this doesn't *quantify* on a relation, though any similar
>>> proof for System F must crucially use it, see e.g. here:
>>>
>> https://github.com/coq-community/autosubst/blob/master/examples/ssr/SystemF_CBV.v
>>> [14]
>>>
>>> You'll find many variations on this theme under the name of "Logical
>>> Relations", e.g. in CertiKOS here:
>>> https://github.com/CertiKOS/coqrel [15]
>>>
>>> Hope this helps,
>>> Cody
>>>
>>> On Thu, Jun 9, 2022 at 2:22 AM kirang <kirang AT comp.nus.edu.sg>
>>> wrote:
>>> Hi Coq Club,
>>>
>>> For various reasons, I'm currently doing a light survey of examples
>>> of
>>> interesting uses of second order properties/lemmas in Coq proof
>>> scripts.
>>>
>>> Currently, the main examples I've found in the wild have mostly been
>>>
>>> using various induction principles for custom datatypes and the such
>>>
>>> (found through searching Github/using Coq's search mechanism).
>>>
>>> I've seemingly exhausted searching through Github for now and so I
>>> thought I might reach out to the magnanimous wisdom and experience
>>> of
>>> the Coq club community in this search.
>>>
>>> Do you have any interesting examples of other classes of second
>>> order
>>> properties (i.e other than induction principles) you have seen/used
>>> in
>>> your own proofs?
>>>
>>> Thanks,
>>> Kiran.
>>
>>
>>
>> Links:
>> ------
>> [1] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html
>> [2] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#R
>> [3] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#T:155
>> [4] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#ty
>> [5] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#t:156
>> [6] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#tm
>> [7]
>> https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#3b5796de2387691122e67a3516cd710b
>>
>> [8]
>> https://urldefense.com/v3/__http://coq.inria.fr/library/*Coq.Init.Logic.html*ba2b0e492d2b4675a0acf3ea92aabadd__;LyM!!IBzWLUs!XzenuuQhk5IHfh9MDKtfeV-KjIg6jJeGYBFj4NG05sB6StYr9llXJ7lCHNJmLLTC634zWDNg5J4GCRTb-2yS$
>>
>> [9] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#halts
>> [10]
>> https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#96e24cc1b3765f349012b832d1dd22ad
>>
>> [11]
>> https://urldefense.com/v3/__http://coq.inria.fr/library/*Coq.Init.Logic.html*True__;LyM!!IBzWLUs!XzenuuQhk5IHfh9MDKtfeV-KjIg6jJeGYBFj4NG05sB6StYr9llXJ7lCHNJmLLTC634zWDNg5J4GCVanGy1p$
>>
>> [12] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#s:159
>> [13] https://softwarefoundations.cis.upenn.edu/plf-current/Norm.html#R:157
>> [14]
>> https://urldefense.com/v3/__https://github.com/coq-community/autosubst/blob/master/examples/ssr/SystemF_CBV.v__;!!IBzWLUs!XzenuuQhk5IHfh9MDKtfeV-KjIg6jJeGYBFj4NG05sB6StYr9llXJ7lCHNJmLLTC634zWDNg5J4GCTPWlZY6$
>>
>> [15]
>> https://urldefense.com/v3/__https://github.com/CertiKOS/coqrel__;!!IBzWLUs!XzenuuQhk5IHfh9MDKtfeV-KjIg6jJeGYBFj4NG05sB6StYr9llXJ7lCHNJmLLTC634zWDNg5J4GCZYINiCE$
>>
--
Website: https://ralfj.de/research
- [Coq-Club] Interesting uses of Second order theorems in Coq proofs, kirang, 06/09/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Qinshi Wang, 06/09/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, kirang, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, roux cody, 06/09/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Lawrence Dunn, 06/09/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Castéran Pierre, 06/09/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, kirang, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Ralf Jung, 06/11/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Qinshi Wang, 06/11/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Ralf Jung, 06/11/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, kirang, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Castéran Pierre, 06/09/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Lawrence Dunn, 06/09/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, kirang, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Steve Zdancewic, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Sylvain Boulmé, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Steve Zdancewic, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Ken Kubota, 06/10/2022
- Re: [Coq-Club] Interesting uses of Second order theorems in Coq proofs, Qinshi Wang, 06/09/2022
Archive powered by MHonArc 2.6.19+.