Skip to Content.
Sympa Menu

coq-club - [Coq-Club] General Advice about When to Use Prop and When to use bool

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] General Advice about When to Use Prop and When to use bool


Chronological Thread 
  • From: "John L. Singleton" <jsinglet AT gmail.com>
  • To: coq-club AT inria.fr
  • Subject: [Coq-Club] General Advice about When to Use Prop and When to use bool
  • Date: Wed, 21 Jun 2017 13:18:40 -0400
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=jsinglet AT gmail.com; spf=Pass smtp.mailfrom=jsinglet AT gmail.com; spf=None smtp.helo=postmaster AT mail-ua0-f177.google.com
  • Ironport-phdr: 9a23:mo6p8xb3wfN0eqnH3hBYYvv/LSx+4OfEezUN459isYplN5qZoMW4bnLW6fgltlLVR4KTs6sC0LuJ9fi4EUU7or+5+EgYd5JNUxJXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRpOOv1BpTSj8Oq3Oyu5pHfeQtFiT6/bL9oMBm6sRjau9ULj4dlNqs/0AbCrGFSe+RRy2NoJFaTkAj568yt4pNt8Dletuw4+cJYXqr0Y6o3TbpDDDQ7KG81/9HktQPCTQSU+HQRVHgdnwdSDAjE6BH6WYrxsjf/u+Fg1iSWIdH6QLYpUjmk8qxlSgLniD0fOjA57G7ZhcN/gr9YrhyvuRJxxJXZYJ2MNPp7Yq/dfc8WSXRHU81MVyJBGIS8b44XAuYPOehYqIn9p10TphW4HwWnGf7hyj5Ohn/52a01zfghEQbA3AAuAtkDt3bUrM70NKcUXuC1yLfHzSnYYvNZ3Dfy8onIchQ7rf6QWrJwdNPcxE8yHA3LiVWQrJbqPzKT1ukVqGib8/BvWv6si24gtQF+vCKvxskoionOiIMZ0EzL9SJ8wIszONa2S1Z7bMa6HJdMsyyWLYh7T8M4T212pSo3yKcKtYO5cSUI0Jgr2hDSZ+Kdf4SV4B/vSPydLSlliH57Yr6zmhi//E69wePmTMa0ykxFri9dn9nMqH8N0xvT59CCSvRn/0eh3S+D1x3J5e1YOEw0m7fXJpwjz7IqmZoTtkPDHiDymErolqOZakIk+u2w5+TmZLXpuIOcOpdqhg3iNqkigM+yDOQiPgQQQmSW+/6w2KDh8ED7WLlKi+c5kqjdsJDUP8Qboau5DhdX0oY46ha/CTim0NAGknkbN19FdxeHgJLoO1HKOvz3EfC/g1G0nDdx2//GJqHhAonKLnXbjLjheq9951dAxwo30NBQ/IlZCqoBIfL2Qk/+rsbUDh4/MwyuwuboEs9x1o0EWTHHPqjMO6TL9FSM++gHIu+WZYZTtiyuBeIi4qukr3g5nxc5O+GS3J0YbH2kGfIsaxGbenvqjdMMDU8FuwM/SKrhj1jUAm0bXGq7Q69pvmJzM4mhF4qWHo0=

I posted the following question on Stackoverflow:
https://stackoverflow.com/questions/44638724/general-advice-about-when-to-use-prop-and-when-to-use-bool/

On the suggestion of one of the commenters I am also asking this question
here.

I am formalizing a grammar which is essentially one over boolean expressions.
In Coq, you can get boolean-like things in Prop or more explicitly in bool.

So for example, I could write:

true && true

Or

True /\ True

The problem is that in proofs (which is what I really care about) I can do a
case analysis in domain bool, but in Prop this is not possible (since all
members are not enumerable, I suppose). Giving up this tactic and similar
rewriting tactics seems like a huge drawback even for very simple proofs.

In general, what situations would one choose Prop over bool for formalizing?
I realize this is a broad question, but I feel like this is not addressed in
the Coq manual sufficiently. I am interested in real world experience people
have had going down both routes.

Thanks,
JLS


Archive powered by MHonArc 2.6.18.

Top of Page