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

Fix issue #6930: Allow recursion on proofs again #6936

Merged
merged 3 commits into from Oct 25, 2023
Merged

Conversation

andreasabel
Copy link
Member

@andreasabel andreasabel commented Oct 22, 2023

@andreasabel andreasabel added termination Issues relating to the termination checker prop Prop, definitional proof irrelevance regression in 2.6.4 Regression that first surfaced in Agda 2.6.4 labels Oct 22, 2023
@andreasabel andreasabel added this to the 2.6.4.1 milestone Oct 22, 2023
Copy link
Member

@jespercockx jespercockx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't mind reverting the change, but people using --prop should be aware that this implies an additional principle which is incompatible with impredicative Prop. Perhaps you could add the comment from the test case to the user manual for Prop too?

Copy link
Member

@plt-amy plt-amy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see my objection here. I'm uneasy about allowing what is the termination "using the wrong formula to get the right answer" as default behaviour, though I would be fine with having the old behaviour under a flag for compatibility.

@plt-amy plt-amy self-requested a review October 25, 2023 15:14
Copy link
Member

@plt-amy plt-amy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After discussion in today's meeting we agreed that it's not worth including the fix for Prop since

  • The underlying issue in the termination checker would also affect impredicative Set, which is also consistent with "base Agda", and it was weird to fix one but not both;

  • If a data type is accepted under some flags, then its eliminator/recursor should also be accepted, without any extra flags.

So the revert sounds okay for now.

@andreasabel andreasabel changed the title issue 6930 Fix issue #6930: Allow recursion on proofs again Oct 25, 2023
@andreasabel andreasabel self-assigned this Oct 25, 2023
@andreasabel andreasabel merged commit 3ff92d3 into master Oct 25, 2023
25 checks passed
@andreasabel andreasabel deleted the issue-6930 branch November 30, 2023 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
prop Prop, definitional proof irrelevance regression in 2.6.4 Regression that first surfaced in Agda 2.6.4 termination Issues relating to the termination checker
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Termination checking with --prop: change in 2.6.4 compared with 2.6.3
3 participants