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

Generalize abstractor, refiner, cegarchecker, visualizer #304

Merged
merged 3 commits into from
Oct 21, 2024

Conversation

RipplB
Copy link
Contributor

@RipplB RipplB commented Oct 8, 2024

These classes/interfaces depended on ARG and Trace before, which heavily limits reusability. They are now generalized over Witness and Cex. To ease the switch, the old entry points are replicated in "Arg..." classes, so a lot of these changes are just renames.

@RipplB
Copy link
Contributor Author

RipplB commented Oct 9, 2024

Witness should be renamed to Proof

@RipplB
Copy link
Contributor Author

RipplB commented Oct 9, 2024

@AdamZsofi @leventeBajczi @mondokm @szdan97 What should be the generic template letter associated with Proof? (as P usually means Precision)

@mondokm mondokm added the Ready to test This will run the final sonar check in PRs. label Oct 10, 2024
@RipplB
Copy link
Contributor Author

RipplB commented Oct 16, 2024

Refiner does not need S and A

@leventeBajczi
Copy link
Contributor

@AdamZsofi @leventeBajczi @mondokm @szdan97 What should be the generic template letter associated with Proof? (as P usually means Precision)

If you're still undecided about this, I'd go simply with PROOF, SafetyProof, or something similar. I don't think it's necessary to use single-letter abbreviations. If we do stick with single-letter ones, I'd advocate for something unrelated, such as Q (the next letter to P).

@AdamZsofi
Copy link
Member

AdamZsofi commented Oct 17, 2024

@AdamZsofi @leventeBajczi @mondokm @szdan97 What should be the generic template letter associated with Proof? (as P usually means Precision)

I like Proof - SafetyProof is a bit long in my opinion. PROOF works as well. (I don't see any reason to stick to single letters.)

@leventeBajczi
Copy link
Contributor

@AdamZsofi @leventeBajczi @mondokm @szdan97 What should be the generic template letter associated with Proof? (as P usually means Precision)

I like Proof - SafetyProof is a bit long in my opinion. PROOF works as well. (I don't see any reason to stick to single letters.)

I don't think it can be Proof, as that would cause a circular name resolution with a class/iface named Proof.

@RipplB
Copy link
Contributor Author

RipplB commented Oct 17, 2024

We settled with Pr for now @leventeBajczi @AdamZsofi

@leventeBajczi
Copy link
Contributor

We settled with Pr for now @leventeBajczi @AdamZsofi

That will clear up prec and proof

@leventeBajczi
Copy link
Contributor

Just a heads up: we merged #305, and because the IntelliJ formatter had a version mismatch in the CI (2023.x) and offline (2024.x), we ran the reformat. However, it seems like the code style xml is not IDEA version agnostic. This is honestly a big surprise for me, as I would have expected it to remain stable. I will try and port our code style XML to a checkstyle-based solution, as that is way better in a lot of ways (you could run it as a gradle task, also possibly in a pre-commit hook, and also, hopefully it will stay stable).

I just wanted to let you know that you probably should not merge these changes you see between master and your fork until this work is done, so that you don't have to do it multiple times.

Sorry!

@leventeBajczi
Copy link
Contributor

See #306 for (hopefully) getting rid of these merge issues.

These classes/interfaces depended on ARG and Trace before, which heavily limits reusability. They are now generalized over Witness and Cex. To ease the switch, the old entry points are replicated in "Arg..." classes, so a lot of these changes are just renames.
Refiners and all their links don't need state and action generics specified anymore
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
54.0% Coverage on New Code (required ≥ 60%)

See analysis details on SonarCloud

@mondokm mondokm merged commit 529352a into ftsrg:master Oct 21, 2024
75 checks passed
@RipplB RipplB deleted the arg_decouple branch October 30, 2024 10:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Ready to test This will run the final sonar check in PRs.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants