Skip to Content.
Sympa Menu

coq-club - [Coq-Club] What is the meaning of dependent record conditions?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] What is the meaning of dependent record conditions?


chronological Thread 
  • From: Victor Porton <porton AT narod.ru>
  • To: Coq <coq-club AT inria.fr>
  • Subject: [Coq-Club] What is the meaning of dependent record conditions?
  • Date: Tue, 08 Nov 2011 00:25:30 +0400
  • Envelope-from: porton AT yandex.ru

[[[
Class C := {
  x: nat;
  cond: x = 0
}.

About cond.
]]]

This tells that [cond] is a function which receives an argument of type C.

But what is it meanings? If the argument x is of type C, it is already 
verified that [cond x] is true! No need to verify it second time!

Maybe I misunderstand something, but it seems for me that to make sense we 
need to automatically define C_Base which would be the record without 
conditions:

Class C_Base := {
  x: nat
}.

and then have "cond" to accept arguments of type C_Base, not C.

Please comment on my (mis)understanding on how it should work.

-- 
Victor Porton - http://portonvictor.org



Archive powered by MhonArc 2.6.16.

Top of Page