Skip to content
Snippets Groups Projects
Commit d19e8b67 authored by dgelessus's avatar dgelessus
Browse files

Collect violated assumptions in DFIDModelChecker as well

parent 96840a74
No related branches found
No related tags found
No related merge requests found
Pipeline #139468 failed
...@@ -12,6 +12,7 @@ import tla2sany.semantic.OpDeclNode; ...@@ -12,6 +12,7 @@ import tla2sany.semantic.OpDeclNode;
import tlc2.TLCGlobals; import tlc2.TLCGlobals;
import tlc2.output.EC; import tlc2.output.EC;
import tlc2.output.MP; import tlc2.output.MP;
import tlc2.output.OutputCollector;
import tlc2.tool.fp.dfid.FPIntSet; import tlc2.tool.fp.dfid.FPIntSet;
import tlc2.tool.fp.dfid.MemFPIntSet; import tlc2.tool.fp.dfid.MemFPIntSet;
import tlc2.tool.impl.CallStackTool; import tlc2.tool.impl.CallStackTool;
...@@ -246,22 +247,25 @@ public class DFIDModelChecker extends AbstractChecker ...@@ -246,22 +247,25 @@ public class DFIDModelChecker extends AbstractChecker
{ {
ExprNode[] assumps = this.tool.getAssumptions(); ExprNode[] assumps = this.tool.getAssumptions();
boolean[] isAxiom = this.tool.getAssumptionIsAxiom(); boolean[] isAxiom = this.tool.getAssumptionIsAxiom();
int assumptionsError = EC.NO_ERROR;
for (int i = 0; i < assumps.length; i++) for (int i = 0; i < assumps.length; i++)
{ {
try try
{ {
if ((!isAxiom[i]) && !this.tool.isValid(assumps[i])) if ((!isAxiom[i]) && !this.tool.isValid(assumps[i]))
{ {
return MP.printError(EC.TLC_ASSUMPTION_FALSE, assumps[i].toString()); OutputCollector.addViolatedAssumption(assumps[i]);
assumptionsError = MP.printError(EC.TLC_ASSUMPTION_FALSE, assumps[i].toString());
} }
} catch (Exception e) } catch (Exception e)
{ {
// Assert.printStack(e); // Assert.printStack(e);
return MP.printError(EC.TLC_ASSUMPTION_EVALUATION_ERROR, OutputCollector.addViolatedAssumption(assumps[i]);
assumptionsError = MP.printError(EC.TLC_ASSUMPTION_EVALUATION_ERROR,
new String[] { assumps[i].toString(), e.getMessage() }); new String[] { assumps[i].toString(), e.getMessage() });
} }
} }
return EC.NO_ERROR; return assumptionsError;
} }
/* Compute the set of initial states. */ /* Compute the set of initial states. */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment