-
Couldn't load subscription status.
- Fork 54
Open
Description
Hello everyone,
Princess fails ModelTest.testGetArrays3 with an exception:
java.lang.IllegalArgumentException: unhandled model value store(const(const(0)), 3, store(const(124), 1, 123)) of type class ap.parser.IFunApp
at org.sosy_lab.java_smt.solvers.princess.PrincessFormulaCreator.convertValue(PrincessFormulaCreator.java:250)
at org.sosy_lab.java_smt.solvers.princess.PrincessFormulaCreator.convertValue(PrincessFormulaCreator.java:80)
at org.sosy_lab.java_smt.solvers.princess.PrincessModel.getAssignmentsFromArraySelect(PrincessModel.java:221)
at org.sosy_lab.java_smt.solvers.princess.PrincessModel.getAssignments(PrincessModel.java:156)
at org.sosy_lab.java_smt.solvers.princess.PrincessModel.asList(PrincessModel.java:88)
at org.sosy_lab.java_smt.basicimpl.CachingModel.asList(CachingModel.java:40)
at org.sosy_lab.java_smt.api.Model.iterator(Model.java:55)
at org.sosy_lab.java_smt.test.ModelTest.testModelIterator(ModelTest.java:1623)
The problem is on our side as the backend for Princess does not support array with more than one index while creating the model. We should add this missing feature. While we're at it we may also want to look into moving (part) of the conversion into an abstract class. The algorithm is always the same and we currently implement it for several solvers separately