[Agda] Circular proof causes stack overflow

Andreas Abel andreas.abel at ifi.lmu.de
Fri Sep 6 10:30:22 CEST 2013


Dan,

In the darcs version of Agda (upcoming 2.3.4), there is no stack 
overflow, but just the expected complaint by the termination checker.

Seems like the bug you point to is fixed already in the development 
version.

Cheers,
Andreas

On 2013-09-04 17:44, Nils Anders Danielsson wrote:
> On 2013-09-04 16:25, Dan Piponi wrote:
>> This short piece of code causes a stack overflow in 2.3.2.1 
>> (sometimes
>> after a long wait):
>
> The release notes for Agda 2.3.4 (which is under development) 
> currently
> contains the following text:
>
>   Definitions which fail the termination checker are not unfolded any
>   longer to avoid loops or stack overflows in Agda.  However, the
>   termination checker for a mutual block is only invoked after
>   type-checking, so there can still be loops if you define a
>   non-terminating function.  But termination checking now happens
>   before the other supplementary checks: positivity, polarity,
>   injectivity and projection-likeness.
>   Note that with the pragma {-# NO_TERMINATION_CHECK #-} you can make
>   Agda treat any function as terminating.

-- 
Andreas Abel  <><     Du bist der geliebte Mensch.

Theoretical Computer Science, University of Munich 
http://www.tcs.informatik.uni-muenchen.de/~abel/


More information about the Agda mailing list