Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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(Inference): Work harder in variable instantiation #591
fix(Inference): Work harder in variable instantiation #591
Changes from all commits
61ce9a0
456e55b
802b011
c043802
fad983e
d49926d
983bb3a
e5dbc78
80516c3
84bffa8
4530168
a94d2c8
52fe101
fada318
a1fb7ec
4f62200
ea3c102
9f032d6
6f288cd
c04e302
8e87d3e
9d49c29
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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.
We don't need to add to
solutions
here do we? What if we had, say, two SCCs with an edge between them:I note Petgraph's
tarjan_scc
returns the components in a defined order (reverse topsort or something), so in theory (maybe you have to reversecc
) it's soluble, but I think you need to consider not justsolutions.get(m)
for each m in the SCC but the solutions to the constraints uponm
(which by that topsort ordering have already been computed).Or, maybe such a structure can't occur, I dunno....????
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.
Try branch
inference-variable/fix-dependent-sccs
(the last commit) - some uncertainties detailed in the comments there, and needs a test of a structure such as the ABCDEF above.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.
Ooops, realize that wasn't passing tests! A missed
self.resolve
should make it pass now.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.
Hahaha! Neat :-) You might consider
flat_map
(*3) to avoidmut
but like it either way :)