[Agda] internal error with sized types
Nils Anders Danielsson
nad at Cs.Nott.AC.UK
Tue Feb 10 12:07:13 CET 2009
On 2009-02-09 14:04, Andreas Abel wrote:
> anno : {i : Size} → N {i} → ⊤
> anno {i} x with case {↑ i} x
> ... | {- z -} inj₁ _ = tt
> ... | {- s y -} inj₂ y = anno y
> Also note that your code is not strongly normalizing, so it ought not
> termination check:
>
> anno x --> case x ... anno y
> --> case x ... case y ... anno y'
>
> thus, there is infinite unfolding of anno. The same function written
> with pattern matching is strongly normalizing, since unmatched patterns
> block further unfolding.
anno y is protected by pattern matching, so the unfolding you indicate
should not occur.
--
/NAD
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.
More information about the Agda
mailing list