Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"with" looses information needed for termination #238

Closed
GoogleCodeExporter opened this issue Aug 8, 2015 · 2 comments
Closed

"with" looses information needed for termination #238

GoogleCodeExporter opened this issue Aug 8, 2015 · 2 comments
Labels
termination Issues relating to the termination checker with Problems with the "with" abstraction

Comments

@GoogleCodeExporter
Copy link

GoogleCodeExporter commented Aug 8, 2015

The current implementation of "with" by translation into an auxiliary function looses the connection

  suc (suc n) < suc n

in the example

  f : Nat -> Nat
  f zero = zero
  f (suc zero) = zero
  f (suc (suc n)) with zero
  ... | m = f (suc n)

Hence, termination checking fails.

What version of Agda are you using? 2.2.7 (darcs, 2010-01-10)
On what operating system? Any

Maybe the relation of input "suc (suc n)" and recursive argument "suc n" could be recovered if one adds some dummy arguments to the generated auxiliary function.

Original issue reported on code.google.com by andreas....@gmail.com on 11 Jan 2010 at 9:56

Attachments:

@GoogleCodeExporter
Copy link
Author

GoogleCodeExporter commented Aug 8, 2015

This is related to bug #59, but does not involve as-patterns. So the problem is maybe exhibited more clearly here.

Original comment by andreas....@gmail.com on 11 Jan 2010 at 9:57

@GoogleCodeExporter
Copy link
Author

Original comment by nils.anders.danielsson on 11 Jan 2010 at 1:10

  • Changed state: Duplicate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
termination Issues relating to the termination checker with Problems with the "with" abstraction
Projects
None yet
Development

No branches or pull requests

3 participants