Conversation
|
A comment on the soundness appendix -- is there any plan of adding a definition for the validity of the typing context C itself (which probably just says that all types in C.Types are valid)? Unlike pre-3.0, the type system is quite rich currently, and C.Types can contain ill-formed types in itself (e.g. invalid deftypes/heaptypes etc). The validity of C is required to prove that intermediate matchings for deftypes/heaptypes are correct. |
|
@raoxiaojia, good point. Yes, at this point we need that, too. I'll look into it. |
|
@raoxiaojia, I just pushed a commit that adds a wf-rule for contexts. Can you please check if it makes sense to you? |
|
@rossberg Looks mostly fine, except this line which I'm unsure: I would have thought |
Formulate extra rules from Type Soundness Appendix in SpecTec.
Fix SpecTec sideconditions pass to not generate vacuous iterated premises.
@f52985, the prose backend crashes failing to find one of the added relations. That may have to do with the preceding "Yet" warning from
translate_rulepr, which IIUC means that something is unimplemented in the backend. Can you please have a look?