Package org.sosy_lab.java_smt.test
Class SolverStackTest0
java.lang.Object
org.sosy_lab.java_smt.test.SolverBasedTest0
org.sosy_lab.java_smt.test.SolverBasedTest0.ParameterizedSolverBasedTest0
org.sosy_lab.java_smt.test.SolverStackTest0
-
Nested Class Summary
Nested classes/interfaces inherited from class org.sosy_lab.java_smt.test.SolverBasedTest0
SolverBasedTest0.ParameterizedSolverBasedTest0 -
Field Summary
Fields inherited from class org.sosy_lab.java_smt.test.SolverBasedTest0.ParameterizedSolverBasedTest0
solver -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidvoidvoidvoidvoidThis test checks that an SMT solver uses "global declarations": regardless of the stack at declaration time, declarations always live for the full lifetime of the solver (i.e., they do not get deleted on pop()).voidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidprotected abstract BasicProverEnvironment<?>newEnvironmentForTest(SolverContext pContext, SolverContext.ProverOptions... options) protected voidprotected final voidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidCreate a symbol on a level and pop this level.Methods inherited from class org.sosy_lab.java_smt.test.SolverBasedTest0.ParameterizedSolverBasedTest0
getAllSolvers, solverToUseMethods inherited from class org.sosy_lab.java_smt.test.SolverBasedTest0
assertThatEnvironment, assertThatFormula, closeSolver, createTestConfigBuilder, evaluateInModel, initSolver, logicToUse, requireArrayModel, requireArrays, requireBitvectors, requireBitvectorToInt, requireEnumeration, requireFloats, requireIntegers, requireInterpolation, requireModel, requireOptimization, requireParser, requireQuantifiers, requireRationals, requireStrings, requireSubstitution, requireUnsatCore, requireUnsatCoreOverAssumptions, requireUserPropagators, requireVisitor, shutdownNotifierToUse
-
Constructor Details
-
SolverStackTest0
public SolverStackTest0()
-
-
Method Details
-
newEnvironmentForTest
protected abstract BasicProverEnvironment<?> newEnvironmentForTest(SolverContext pContext, SolverContext.ProverOptions... options) -
requireTheoryCombination
protected void requireTheoryCombination() -
requireUfValuesInModel
protected final void requireUfValuesInModel() -
simpleStackTestBool
- Throws:
SolverExceptionInterruptedException
-
singleStackTestInteger
- Throws:
SolverExceptionInterruptedException
-
singleStackTestRational
- Throws:
SolverExceptionInterruptedException
-
stackTest
public void stackTest() -
stackTest2
- Throws:
InterruptedException
-
stackTest3
- Throws:
InterruptedException
-
stackTest4
- Throws:
InterruptedException
-
largeStackUsageTest
- Throws:
InterruptedExceptionSolverException
-
largerStackUsageTest
- Throws:
InterruptedExceptionSolverException
-
stackTest5
- Throws:
InterruptedException
-
stackTestUnsat
- Throws:
InterruptedExceptionSolverException
-
stackTestUnsat2
- Throws:
InterruptedExceptionSolverException
-
symbolsOnStackTest
Create a symbol on a level and pop this level. Symbol must remain valid and usable!- Throws:
InterruptedExceptionSolverException
-
constraintTestBool1
- Throws:
SolverExceptionInterruptedException
-
constraintTestBool2
- Throws:
SolverExceptionInterruptedException
-
constraintTestBool3
- Throws:
SolverExceptionInterruptedException
-
constraintTestBool4
- Throws:
SolverExceptionInterruptedException
-
satTestBool5
- Throws:
SolverExceptionInterruptedException
-
dualStackTest
- Throws:
SolverExceptionInterruptedException
-
dualStackTest2
- Throws:
SolverExceptionInterruptedException
-
multiStackTest
- Throws:
SolverExceptionInterruptedException
-
avoidDualStacksIfNotSupported
- Throws:
InterruptedException
-
dualStackGlobalDeclarations
This test checks that an SMT solver uses "global declarations": regardless of the stack at declaration time, declarations always live for the full lifetime of the solver (i.e., they do not get deleted on pop()). This is contrary to the SMTLib standard, but required by us, e.g. for BMC with induction (where we create new formulas while there is something on the stack).- Throws:
SolverExceptionInterruptedException
-
modelForUnsatFormula
- Throws:
SolverExceptionInterruptedException
-
modelForUnsatFormula2
- Throws:
SolverExceptionInterruptedException
-
modelForSatFormula
- Throws:
SolverExceptionInterruptedException
-
modelForSatFormulaWithLargeValue
- Throws:
SolverExceptionInterruptedException
-
modelForSatFormulaWithUF
- Throws:
SolverExceptionInterruptedException
-
multiCloseTest
- Throws:
SolverExceptionInterruptedException
-