Cardinality detector statistics are incorrect
When launching DetectCards on a PHP 200 instance, the solve provides the following output:
c declared #vars 40200
c #constraints 201
c constraints type
c org.sat4j.pb.constraints.pb.OriginalHTClausePB => 201
c 201 constraints processed.
c launching cardinality constraint revelation process
c remaining constraints: 0/4020000
c cardinality constraints found (preprocessing): 200
c cardinality search time (preprocessing): 14648ms
c found 200 at-most cardinality constraint of degree 200 and size 201
c solver contains 401 constraints
The main issue is that the at-most cardinality constraint should be of degree 1, not 200. Internally, the constraint is an AtLeastCard, so the degree should be size-degree to fix that. However, changing the computation of the degree in PreprocCardConstrLearningSolver line 348 does not seem to fix the problem.
Another (small) issue is that the number of constraints is not correct. According to the logs, there was 4020000 clauses originally. This is the number with would have expected instead of 201.