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

Working on subtyping #122

Merged
merged 12 commits into from
Jun 22, 2024
Merged

Working on subtyping #122

merged 12 commits into from
Jun 22, 2024

Conversation

HuStmpHrrr
Copy link
Member

@HuStmpHrrr HuStmpHrrr commented Jun 20, 2024

C.f. #121

This PR is likely to be huge. Stay tuned.

@HuStmpHrrr HuStmpHrrr requested a review from Ailrun June 20, 2024 15:06
@HuStmpHrrr
Copy link
Member Author

I think #121 needs to be split into multiple PRs otherwise this one will be too big. I am not sure what is a better way than accepting broken CI before this work is done.

@Ailrun
Copy link
Member

Ailrun commented Jun 20, 2024

How about changing some proofs that require both model&syntax (such as the completeness theorem) to the Admitted one (while keep the original proof as a comment), and then just finish syntactic part?

{{ Γ ⊢ A' : Type@i }} ->
{{ Γ , A' ⊢ B' : Type@i }} ->
{{ Γ ⊢ A' ⊆ A }} ->
{{ Γ , A' ⊢ B ⊆ B' }} ->
Copy link
Member

@Ailrun Ailrun Jun 20, 2024

Choose a reason for hiding this comment

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

This (genuine) asymmetry bothers me a bit... By that, I mean, if we do not have argument subtyping {{ Γ , A' ⊢ B ⊆ B' }} and {{ Γ , A ⊢ B ⊆ B' }} would be equivalent, but now {{ Γ , A ⊢ B ⊆ B' }} doesn't even make sense (as B' may require the A', not A, in its context).

I cannot come up with a real problem and this should be fine, but it feels a bit...
More concretely, something like this bothers me: after presupposition, we can get exist i, {{ Γ, A' ⊢ B' : Type@i }} out of {{ Γ, A' ⊢ B ⊆ B' }}, but then, this is not enough to remove {{ Γ , A ⊢ B : Type@i }} because this one has a stronger information. (that B is still well-typed in a less informative context)

@Ailrun Ailrun mentioned this pull request Jun 21, 2024
6 tasks
@HuStmpHrrr HuStmpHrrr changed the title [WIP] Working on subtyping Working on subtyping Jun 22, 2024
@HuStmpHrrr
Copy link
Member Author

ok, syntactic part is ready

@Ailrun Ailrun merged commit f8f5a84 into main Jun 22, 2024
2 checks passed
@Ailrun Ailrun deleted the feature/subtyping branch July 18, 2024 20:17
@Ailrun Ailrun added this to the Towards the real type-checker milestone Jul 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants