-
Notifications
You must be signed in to change notification settings - Fork 8
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
Do not rely on any explicitness information for inference and constraint resolution #174
Merged
Merged
Changes from 4 commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
5c9ff62
Merge infer.preserving and infer.apply
umazalakain 67f8e15
Make FTVs to preserve local to solveOne (add bound dep lambda ids)
umazalakain 27bca59
Don't rely on explicitness info for constraint resolution (minus dept…
umazalakain 689b76b
Use products instead of a custom case class
umazalakain c4e6334
Make preserve more granular, add newly created explicit identifiers
umazalakain d6ed8ba
Add all explicit type variables to the set of variables to preserve
umazalakain 786c59d
Use a global preserve set: type identifiers are unique up to their type
umazalakain f7c0533
Remove the explicitly dependent constraint solving
umazalakain 4a5a0c7
Remove typeEnv from constraint gathering
umazalakain 27450be
Gather FTV in identifier types as well
umazalakain 5a94837
Inspect type identifiers in datatypes and nats in fragment kinds
umazalakain 97c89d0
Keep set of variables to substitute instead of variables to preserve
umazalakain 7552689
Exclude matrix layout and fragment kind identifiers from vars to close
umazalakain c8b666a
Preserve order while assuring uniqueness
umazalakain 2b55f32
Replace getFTVsRec (uses expl info) with IsClosedForm in makeClosed
umazalakain daafb0f
Merge branch 'master' into only-preserve
umazalakain 972f808
Revert "Keep set of variables to substitute instead of variables to p…
umazalakain c674e0c
Use IsClosedForm instead of getFTVs in TopLevel
umazalakain 24aaf8f
Use IsClosedForm to extract FTVs from assertions, remove getFTVs
umazalakain 7f1719d
Do not rely on explicitness in collectPreserve
umazalakain 288eb1e
Expose OrderedSet in freeVars
umazalakain 264abd5
Do not skip matrix layout and fragment kind identifiers in collectPre…
umazalakain File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
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.
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.
+ n
? same in other spots. I wonder if we could also alternatively directly apply the required substitutions (na -> n
andnb -> n
) where necessary and only generate 1 constraint instead of 3 here. Something like: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.
Yup, I was just picking up on that, I will get back to you!