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

Skolemizing not handled correctly #7

Closed
grayswandyr opened this issue Mar 5, 2024 · 3 comments
Closed

Skolemizing not handled correctly #7

grayswandyr opened this issue Mar 5, 2024 · 3 comments
Labels
bug Something isn't working
Milestone

Comments

@grayswandyr
Copy link
Owner

          Recall Skolemizing too: this won't compile with Electrod
sig S { var r : set S}
run { some s : set S | some s } for 3 Int

fails.
Electrod:

electrod (C) 2016-2020 ONERA 1.0.0-1-geb0b02e
[E002] 00000.elo:23.13-23.20: syntax error this##S
       (some s: set this##S { 
Aborting (1.973ms).

Originally posted by @grayswandyr in AlloyTools/org.alloytools.alloy#197 (comment)

@grayswandyr grayswandyr added this to the Electrod 1.1 milestone Mar 5, 2024
@grayswandyr grayswandyr added the bug Something isn't working label Mar 5, 2024
@grayswandyr
Copy link
Owner Author

Note: the previous description concerns "first-order" Skolemization, which fails at the electrod level.
"Higher-order" Skolemization is OTOH intercepted at the Alloy level and not even passed to electrod:
image

@grayswandyr
Copy link
Owner Author

In:

sig S { var r : set S}
run { some s : MULT S | some s } for 3 Int

MULT can be: set, some, one, lone but also seq (which stands for seq/Int -> S in this case).

@grayswandyr
Copy link
Owner Author

Handled in Pardinus itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant