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

Unsat for correct cases #1

Open
GoogleCodeExporter opened this issue Mar 13, 2015 · 4 comments
Open

Unsat for correct cases #1

GoogleCodeExporter opened this issue Mar 13, 2015 · 4 comments

Comments

@GoogleCodeExporter
Copy link

What steps will reproduce the problem?
1. ./hampi.sh ${ATTACHEDFILE}.hmp

What is the expected output? What do you see instead?
SAT
I see UNSAT


Original issue reported on code.google.com by [email protected] on 24 Jan 2010 at 2:11

Attachments:

@GoogleCodeExporter
Copy link
Author

another example 


Original comment by [email protected] on 21 Feb 2010 at 4:42

Attachments:

@GoogleCodeExporter
Copy link
Author

badcase1 reduced:
var string:6;
cfg q1 := "Ap";
cfg q2 := "Mo";
cfg q3 := "Sa";
cfg qx :=  q1 q2 q3;
assert string in qx;
Still gives UNSAT

Original comment by [email protected] on 26 Feb 2010 at 6:59

@GoogleCodeExporter
Copy link
Author

As discovered by Devdatta, the problem is in PigeonHoleDistributor, line: if
(is.contains(i)) continue firstHoleAllocation;

So, for bound 6, lowers [1,1,1] uppers[4,4,4], it will first generate 
permutations
[1,4,1], [1,1,4], [1,2,3], [1,3,2] and then skip [2,2,2] because it thinks that 
2 is
already taken care of.

The fix would be to simply remove the broken 'optimization' - the perf impact 
on the
tests is so severe that tests stop working. This bugs must to be fixed with or 
after
issue#3.

Original comment by [email protected] on 26 Feb 2010 at 7:58

@GoogleCodeExporter
Copy link
Author

The workaround for now is to inline the constant string, eg for badcase1:
cfg q3 := [\032 - \126];
cfg q4 := (q3)*;
cfg q6 := [\032 - \126];
cfg q7 := (q6)*;
cfg q1 := "Apple" q4 "Mobile" q7 "Safari";
cfg flax0 := q1;


Original comment by [email protected] on 26 Feb 2010 at 8:12

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant