-
Notifications
You must be signed in to change notification settings - Fork 182
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
Pass canonical goals to program clauses code in SLG solver #624
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm on mobile, so not going to be a perfect response here. But this looks...not that great. I mean, it looks correct, but we went from instantiating in one place to two places, plus that rewrapping of the domain goal in the canonical binders and environment.
I guess it would nice if we could clean that up somehow. If you don't want to do that in this PR, I would like a FIXME at least and then r=me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One thing that is also missing from this PR is that we could cleanup the program_clauses_from_goal
code to error out if it encounters inference variables. We're also going to have to extend that code once we start canonicalizing universal variables.
Overall this seemed pretty nice to me. I still think that it's the right setup -- I guess my reasoning is basically that I think we ought to be caching the results of those calls, so passing in canonical things seems correct. |
☔ The latest upstream changes (presumably #609) made this pull request unmergeable. Please resolve the merge conflicts. Note that reviewers usually do not review pull requests until merge conflicts are resolved! Once you resolve the conflicts, you should change the labels applied by bors to indicate that your PR is ready for review. Post this as a comment to change the labels:
|
Instead of instantiating goals first, as is the case currently
3d6e16c
to
d719618
Compare
Review comments have been addressed and this should be good to merge. |
328bb41
to
0b391f8
Compare
@bors r+ |
📌 Commit 0b391f8 has been approved by |
☀️ Test successful - checks-actions |
It seemed like we were leaning towards this solution in the design meeting, and it turned out (assuming these changes are right) to be pretty straightforward.
Closes #568.
This should stop seeing issues related to failing to generalize program clauses pop up, but I'm only going to cc #614 since I'd like some tests maybe.