<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>Hi,</div>
<div><br>
</div>
<div>this came up during Conor's Agda course at the Types summer school.</div>
<div><br>
</div>
<div>It is a bit surprising that the following is accepted</div>
<div><br>
</div>
<div>
<div>data Good : Set → Set where</div>
<div>  good : (X : Set) → Good X</div>
</div>
<div><br>
</div>
<div>This looks like we have a large constructor. However, if we want to cheat Agda complains</div>
<div><br>
</div>
<div>
<div>data Bad : Set → Set where</div>
<div>  bad : {X : Set} → Bad ℕ</div>
</div>
<div><br>
</div>
<div>Indeed Good is equivalent to Honest which uses a parameter</div>
<div><br>
</div>
<div>
<div>data Honest (X : Set) : Set where</div>
<div>  honest : Honest X</div>
</div>
<div><br>
</div>
<div>Why don't we force people to be Honest instead of just being Good?</div>
<div>Thorsten</div>
<PRE>


This message and any attachment are intended solely for the addressee
and may contain confidential information. If you have received this
message in error, please send it back to me, and immediately delete it. 

Please do not use, copy or disclose the information contained in this
message or in any attachment.  Any views or opinions expressed by the
author of this email do not necessarily reflect the views of the
University of Nottingham.

This message has been checked for viruses but the contents of an
attachment may still contain software viruses which could damage your
computer system, you are advised to perform your own checks. Email
communications with the University of Nottingham may be monitored as
permitted by UK legislation.
</PRE></body>
</html>