meelgroup/approxmc

Docker image does not read "c ind" correctly.

Closed this issue · 7 comments

When running approxmc on the following cnf file:

p cnf 6 12
c ind 1 3 0
2 0
-4 0
-5 -3 2 0
-5 3 4 0
5 3 -4 0
5 -3 -2 0
-6 -1 2 0
-6 1 -5 0
6 1 5 0
6 -1 -2 0
6 0
-6 0

The following ominous warning is printed:

[appmc] WARNING! Sampling set was not declared with 'c ind var1 [var2 var3 ..] 0' notation in the CNF.
[appmc] we may work substantially worse!

The command being run is:
cat formula.cnf | docker run -i -a stdin -a stdout msoos/approxmc

Thanks for the prompt response!
That did NOT help, sadly. I get the same warning.
I have updated the original issue comment with the new file contents as per your suggestion, can you kindly take a look to see if that looks okay?

Sorry -- I deleted the comment above as upon refreshing, I thought I had read your file incorrectly. Let me look into it. Do you get the same error when running after cloning from the repo?

Looks like there is some issue with the docker image. Please use the repo after cloning, which can read the file that you copied (btw, the formula is UNSAT in your file above).

OK thanks, I'm trying to do that now.
Should i close this issue? Or do you want to keep it around till the docker image is fixed?

Let us close the issue after the docker image is fixed.

msoos commented

@appu226 Thanks so much for the report! I can confirm, it's incorrectly indeed!. I am really sorry, something went wrong. I will fix this and add a test to make sure it doesn't happen again :)

msoos commented

Thank you so much! This has now been fixed. Issue was that when reading in a file through STDIN, the sampling set was not taken into account. This actually solves an issue in the real binary, too. Docker will auto-build a new package soon (few minutes) and then the Docker will be fixed too. Thanks so much! Your handle is now in the commit as a form of thanks :)