-
Notifications
You must be signed in to change notification settings - Fork 51
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
Internal-to-Core translation is limited to type-declaring axioms #2763
Comments
jonaprieto
changed the title
Internal-to-Core translation is limited to type-ceclaring axioms
Internal-to-Core translation is limited to type-declaring axioms
May 2, 2024
|
The problem is with dependency computation for implicit record projections. This works: module TypeParamAxiom;
axiom X : Type;
axiom B : Type -> Type;
type A := mkA : B X -> A;
main : Type := B X; |
|
lukaszcz
added a commit
that referenced
this issue
May 14, 2024
…ter their inductive types (#2768) * Closes #2763. * Fixes a bug in the scoper, likely introduced in #2468 by making later declarations depend on earlier ones. The problem was that the inductive modules were always added at the beginning of a section, which resulted in an incorrect definition dependency graph (an inductive type depended on its associated projections). * Now inductive modules are added just after a group of inductive definitions, before the next function definition. This implies that inductive type definitions which depend on each other cannot be separated by function definitions. Existing Juvix code needs to be adjusted. * The behaviour is now equivalent to "manually" inserting module declarations with projections after each group of inductive definitions.
jonaprieto
added a commit
that referenced
this issue
Jun 5, 2024
* Closes #2689 * Adds the command `juvix isabelle program.juvix` which translates a given file to an Isabelle/HOL theory. * Currently, only a single module is translated. * By default translates types and function signatures. Translating function signatures can be disabled with the `--only-types` option. Blocked by: - #2763 --------- Co-authored-by: Jonathan Cubides <jonathan.cubides@uib.no>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It seems that axioms with a type signature of the form
are being ignored or missed during the translation from internal to the core.
Consider the program
test.juvix
This program typechecks on previous versions:
However, the compiler spits out the following error with the latest (also with the one from main):
The text was updated successfully, but these errors were encountered: