Skip to Content.
Sympa Menu

coq-club - [Coq-Club] proof uninformativeness vs. proof irrelevance

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] proof uninformativeness vs. proof irrelevance


Chronological Thread 
  • From: Jonathan Leivent <jonikelee AT gmail.com>
  • To: Coq Club <coq-club AT inria.fr>
  • Subject: [Coq-Club] proof uninformativeness vs. proof irrelevance
  • Date: Sat, 23 Apr 2016 20:21:07 -0400
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=jonikelee AT gmail.com; spf=Pass smtp.mailfrom=jonikelee AT gmail.com; spf=None smtp.helo=postmaster AT mail-qk0-f169.google.com
  • Ironport-phdr: 9a23:u/vu0Rw3MSUSDt3XCy+O+j09IxM/srCxBDY+r6Qd0e0SIJqq85mqBkHD//Il1AaPBtWLra0ewLOH7+jJYi8p39WoiDg6aptCVhsI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6kO74TNaIBjjLw09fr2zQd6CyZvtnLnjp9X6WEZhunmUWftKNhK4rAHc5IE9oLBJDeIP8CbPuWZCYO9MxGlldhq5lhf44dqsrtY4q3wD89pozcNLUL37cqIkVvQYSW1+ayFmrPHs4DLEVEOk4mYWGjEdlQMNCAzY5jn7WI3wu230rLwu9jOdOJjUSrY9RTSr6e9PRR72hSEbf2o792fWicF0ga9zrxeophg5yInRNtLGfMFid7/QKItJDVFKWdxcAmkYWtux

Consider this weak version of proof irrelevance:

Definition proof_uninformativeness := forall (P : Prop)(S : Set)(f : P -> S)(p1 p2 : P), f p1 = f p2.

I think this is true in Coq (by design), but I don't know if it can be proven. Probably not ...?

Also, are there use cases of proof irrelevance where this weaker version isn't sufficient? I suspect there might be in cases where Set isn't big enough. If so, is there a way to quantify Types that are not Props in Coq, so one could write:

Definition proof_uninformativeness' := forall (P : Prop)(T : Type)(f : P -> T)(p1 p2 : P), notprop T -> f p1 = f p2.

And if that's possible (I suspect it isn't), would that cover all interesting use cases of proof irrelevance?

-- Jonathan




Archive powered by MHonArc 2.6.18.

Top of Page