Skip to content
This repository has been archived by the owner on Oct 14, 2022. It is now read-only.

Command lines for witness validation are outdated #4

Open
PhilippWendler opened this issue Jul 21, 2017 · 6 comments · May be fixed by #50
Open

Command lines for witness validation are outdated #4

PhilippWendler opened this issue Jul 21, 2017 · 6 comments · May be fixed by #50

Comments

@PhilippWendler
Copy link
Member

With a current Ultimate version, the command line given in the documentation in this repository does not work anymore. The usage of Ultimate is now as follows:

usage: Ultimate.py [-h] [--version] [--config <dir>] [--data <dir>]
                   [--full-output] [--validate <file>] --spec <file>
                   --architecture {32bit,64bit} --file <file>
                   [--witness-dir <dir>] [--witness-name WITNESS_NAME]

As long as old and new versions of Ultimate are relevant, the documentation should probably give examples for both and explain how to choose between them.

For CPAchecker, the documentation says to use -spec witness-to-validate.graphml, but I thought this is deprecated in favor of -witness? (Although it still seems to work.)

@danieldietsch
Copy link
Contributor

We have issue #135 for that over at Ultimate, but we will only explain the latest version of Ultimate in our docs. I will update the instructions here as soon as I get around to fixing our issue.

@dbeyer
Copy link
Member

dbeyer commented May 29, 2020

We have issue #135 for that over at Ultimate, but we will only explain the latest version of Ultimate in our docs. I will update the instructions here as soon as I get around to fixing our issue.

@danieldietsch Could you please double check whether this was done and then let's close the issue.

@danieldietsch
Copy link
Contributor

Its on the list ;)

@danieldietsch
Copy link
Contributor

If CPAchecker is current we can finally close this issue.

@PhilippWendler
Copy link
Member Author

@MartinSpiessl Could you check the command line for CPAchecker, please?

@MartinSpiessl
Copy link
Collaborator

MartinSpiessl commented Oct 13, 2021

Yeah, this section seems to be quite outdated. I also don't think this repo is the right place for describing how to do a (violation) witness validation with an arbitrary analysis in CPAchecker. We should just provide means of how to call the -witnessValidation config. The more detailed description I would rather move to https://sosy-lab.gitlab.io/research/tutorials/CPAchecker/Witnesses.html, I created an issue in the repo from which that page is generated such that that information is not lost. I also prepared a pull request #50 that simplifies the instructions for CPAchecker, such that we can close this issue in a timely manner.

Apart from that I tried to run CPAcheckers validation on the example program+witness in this repo and the validation if this (violation) witness is actually not successful. I tried to run it with an older CPAchecker version (1.7-svn 29852-unix from SV-COMP 2019) and even with that one I was not able to validate the witness. Unfortunately we also did not document against which tool version this README was executed when written.

This is related to issue #41. I think it would be best to rather generate the example witness anew with CPAchecker and then note the actual version against which the commands were executed/tested. Actually if we generate the witness again the we have the producer field which gives a good clue about which tool version was used (at least for generating the witness). But of course documenting which tool versions we used to check the witness should also be documented somewhere.

The current command lines refer to some test.c, which is not in the repo. But of course anyone who reads this README and is new to the matter will try it with the example files in the repo first. So it might be worthwhile to change/extend the instructions to refer to these example files in some way.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

Successfully merging a pull request may close this issue.

4 participants