Skip to Content.
Sympa Menu

coq-club - [Coq-Club] name management in highly automated proofs

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] name management in highly automated proofs


Chronological Thread 
  • From: Abhishek Anand <abhishek.anand.iitg AT gmail.com>
  • To: coq-club <coq-club AT inria.fr>
  • Subject: [Coq-Club] name management in highly automated proofs
  • Date: Mon, 30 Aug 2021 10:20:17 -0700
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=abhishek.anand.iitg AT gmail.com; spf=Pass smtp.mailfrom=abhishek.anand.iitg AT gmail.com; spf=None smtp.helo=postmaster AT mail-ed1-f53.google.com
  • Ironport-hdrordr: A9a23:DOpEs687q/BAaI//W+Buk+ABI+orL9Y04lQ7vn2ZKCY4TiX8rauTdZsguiMc9wx+ZJhNo7G90YO7IU80jKQFgrX5ZI3SPjUO21HYSb2Kk7GSpwEIQBeOkdK1vJ0IG5SWbueAa2SS5vyW3ODXKbwdKC3sytHQuQ6n9QYUcengAJsQlDuQgG2gYzdLrLAsP+tFKKah
  • Ironport-phdr: A9a23:jpOcPRHITDDz1k8NNwoDCZ1Gf/1MhN3EVzX9CrIZgr5DOp6u447ldBSGo6k31BmYBM6GtLptsKn/i+jYQ2sO4JKM4jgpUadncFs7s/gQhBEqG8WfCEf2f7bAZi0+G9leBhc+pynoeUdaF9zjaFLMv3a88SAdGgnlNQpyO+/5BpPeg9642uys55HfeQFFiCeybb5yLhi9sBncuNQRjYZ+MKg61wHHomFPe+RYxGNoIUyckhPh7cqu/5Bt7jpdtes5+8FPTav1caI4TadFDDs9KGA6+NfrtRjYQgSR4HYXT3gbnQBJAwjB6xH6Q4vxvy7nvedzxCWWIcv7Rq0yVD+/7alkVQXohT8IODA5/m/ZidF+grxHrx+6vRNz35TZbZuJOPZifK7Qe84RS2pbXsZWUixMGp+xYJAPD+oAJuZYr5fyp1gTphaiAwmjHuXvxSJVjXLxx6I1yOQhEQDd3AwgAd0Os27Yo8/zNKgIV+C60bPEzTTCb/NK1jfw84fIchU7rvGNWbJ8a9beyU4qFw7ciFibtIPqMS+P2OsXr2ib8/RvVfipi2M/tQx/oiaiy9ojh4fGm48Z1F7J+Tt6zYspK9C2SFB3bNGgHZZSqi2XNZZ7T8MiTWxquys3yKEKtYClcCUJy5kqyRjSYOGJfYiP5xLsTueRITFgiX15f7K/nRCy/lakyu34TMW7zktFrjdDn9LRtX4NzwTe5tabRvZ55Eus2jaC2xrN5u1YIk04j6rWJpAnz7UtjJQcq17DETXzmEjujK+ZaEEk+u+w5uTieLrmp5ucO5ZqhQ7jL6gig8K/DOQ2PwQUUGib/uO81LLn/ULnWrlFkvo2kqzBvJDbI8QUuLK5DhdL3oo/7xuzFTSr3dQCkXUZMF5IewiLgojnNl3WJfD3F/a/g1CikDdxwPDGO6XsDY/WIXjDkbfhZrZ95FBfyAYp199f4YhbCrccL/7pW0/xtcDYDhAiPgy7xuboEtR91ocEVW2TBa+ZNbvesUWU6eI3P+mMeIgVtS7hJPgi/v7ilGM2mVsAfaayxpYXc3C5HvF+I0qDe3bsg9EBEX0LvgUkVuDqhkeCAnZvYCO5WLt57TUmAsryBoDaA4upnbap3SGhH5QQaHoQWX6WFnK9Xo+EWuwMZSHaC8lolDBMAbGrS4461Ryt8gb8wrxraOvV5iIwupfq1dwz7OrWw0JhvQdoBtiQhjneB1p/mXkFEmdeNEFXpEV8zhKO3fE9jaEDU9NU4PxNX0ExMpuOl4SS7vj9XwvAepGCT1P0Gr1O7hk+S9swx5kFZEMvQr2f

In my experience, the more automated a proof is, the more nameless it gets: the manual or automation steps don't care about what names get assigned to variables/hypotheses in the context and if some hypothesis has to be identified, it is done by shape matching, not by names.

That said, some people see some value in having complex automation tactics preserve the user-chosen names as much as possible and perhaps also choose names of new hypotheses in a predictable way, perhaps based on the existing names. The simplest example is perhaps:
destructing H: A /\ B could result in
Hl: A 
Hr: B
But doing this is complex in most cases, e.g. when a lemma is applied to multiple hypotheses to produce a new one.

Does anyone have experiences to share trying to design complex automation tactics that preserve the user chosen names as much as possible? Or is there some fundamental conflict between the degree of automation and the reliability of names of hypotheses?

(In general, I wish there was more science about the art of writing Coq proofs robust against "future changes": I see a lot of debates about it but not much hard evidence)

Thanks,



Archive powered by MHonArc 2.6.19+.

Top of Page