Merged
Conversation
Added picocli to extend flag usage, with the implementation of --debug to presentraw expressions, counterexamples and all expressions sent to the SMT solver. Logging should be improved as it's not incredibly readable.
Arguments are now accessed via an object in the CommandLineLauncher class, so that it's easier in the future to implement new flags.
rcosta358
approved these changes
Mar 19, 2026
Collaborator
rcosta358
left a comment
There was a problem hiding this comment.
LGTM. Can you show us example usages of each option?
liquidjava-verifier/src/main/java/liquidjava/api/CommandLineLauncher.java
Show resolved
Hide resolved
liquidjava-verifier/src/main/java/liquidjava/smt/SMTEvaluator.java
Outdated
Show resolved
Hide resolved
Contributor
Author
Collaborator
|
Looks great! |
Follows suggested print formatting Co-authored-by: Ricardo Costa <[email protected]>
CatarinaGamboa
requested changes
Mar 27, 2026
Collaborator
CatarinaGamboa
left a comment
There was a problem hiding this comment.
grest! but lets move the main print to another place to have more info
| public SMTResult verifySubtype(Predicate subRef, Predicate supRef, Context context) throws Exception { | ||
| Predicate toVerify = Predicate.createConjunction(subRef, supRef.negate()); | ||
| if (CommandLineLauncher.cmdArgs.debugMode) { | ||
| System.out.println(String.format("%s <: %s", subRef, supRef)); |
Collaborator
There was a problem hiding this comment.
We should also report the source position (even maybe a code snippet) to accompany the print, otherwise we won't be able to identify which check is the error. Lets maybe move this print to class VCChecker, method verifySMTSubtype.
Added a util to get the expression from a SourcePosition. Moved the print in the verifySubtype to verifySMTSubtype.
rcosta358
reviewed
Mar 30, 2026
liquidjava-verifier/src/main/java/liquidjava/processor/refinement_checker/VCChecker.java
Outdated
Show resolved
Hide resolved
Co-authored-by: Ricardo Costa <[email protected]>
* Added version arg to CL Added `--version` to the CL so that it shows the verifiers' current versison. Path specificity is needed due to it picking up the main pom file in the root instead of inside liquidjava-verifier. * Updated version text Co-authored-by: Ricardo Costa <[email protected]> --------- Co-authored-by: Ricardo Costa <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Closes #175 . This PR adds support for the
--debugand--versionflags as well as future implementation of new ones via the use of thepicoclilibrary.