/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 10:21:57,284 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 10:21:57,286 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 10:21:57,321 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 10:21:57,321 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 10:21:57,322 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 10:21:57,324 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 10:21:57,325 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 10:21:57,326 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 10:21:57,330 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 10:21:57,330 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 10:21:57,331 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 10:21:57,331 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 10:21:57,333 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 10:21:57,333 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 10:21:57,336 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 10:21:57,336 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 10:21:57,336 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 10:21:57,338 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 10:21:57,342 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 10:21:57,343 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 10:21:57,344 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 10:21:57,344 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 10:21:57,345 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 10:21:57,346 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 10:21:57,350 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 10:21:57,350 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 10:21:57,350 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 10:21:57,351 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 10:21:57,351 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 10:21:57,352 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 10:21:57,352 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 10:21:57,353 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 10:21:57,354 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 10:21:57,354 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 10:21:57,355 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 10:21:57,355 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 10:21:57,355 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 10:21:57,355 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 10:21:57,355 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 10:21:57,356 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 10:21:57,357 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 10:21:57,357 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 10:21:57,365 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 10:21:57,365 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 10:21:57,366 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 10:21:57,366 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 10:21:57,366 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 10:21:57,366 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 10:21:57,366 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 10:21:57,366 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 10:21:57,367 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 10:21:57,367 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 10:21:57,367 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 10:21:57,367 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 10:21:57,367 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 10:21:57,367 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 10:21:57,368 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 10:21:57,368 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 10:21:57,368 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-15 10:21:57,517 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 10:21:57,534 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 10:21:57,535 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 10:21:57,536 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 10:21:57,539 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 10:21:57,540 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound2.c [2022-04-15 10:21:57,582 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a9ffff18e/14cbe62c79b64120897076afe8d39d3c/FLAG098ea0cbf [2022-04-15 10:21:57,925 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 10:21:57,925 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound2.c [2022-04-15 10:21:57,929 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a9ffff18e/14cbe62c79b64120897076afe8d39d3c/FLAG098ea0cbf [2022-04-15 10:21:57,937 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a9ffff18e/14cbe62c79b64120897076afe8d39d3c [2022-04-15 10:21:57,938 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 10:21:57,939 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 10:21:57,940 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 10:21:57,941 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 10:21:57,943 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 10:21:57,944 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 10:21:57" (1/1) ... [2022-04-15 10:21:57,944 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@ae12ea9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:57, skipping insertion in model container [2022-04-15 10:21:57,944 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 10:21:57" (1/1) ... [2022-04-15 10:21:57,949 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 10:21:57,959 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 10:21:58,067 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound2.c[524,537] [2022-04-15 10:21:58,080 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 10:21:58,085 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 10:21:58,103 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound2.c[524,537] [2022-04-15 10:21:58,113 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 10:21:58,121 INFO L208 MainTranslator]: Completed translation [2022-04-15 10:21:58,121 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58 WrapperNode [2022-04-15 10:21:58,121 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 10:21:58,122 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 10:21:58,122 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 10:21:58,122 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 10:21:58,128 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,128 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,132 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,132 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,136 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,138 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,139 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,140 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 10:21:58,141 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 10:21:58,141 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 10:21:58,141 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 10:21:58,146 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (1/1) ... [2022-04-15 10:21:58,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 10:21:58,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:21:58,169 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-15 10:21:58,184 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-15 10:21:58,193 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 10:21:58,193 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 10:21:58,194 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 10:21:58,194 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 10:21:58,194 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 10:21:58,194 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 10:21:58,194 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 10:21:58,194 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 10:21:58,194 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 10:21:58,194 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 10:21:58,194 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 10:21:58,194 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 10:21:58,194 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 10:21:58,195 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 10:21:58,195 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 10:21:58,195 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 10:21:58,195 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 10:21:58,195 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 10:21:58,195 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 10:21:58,195 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 10:21:58,237 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 10:21:58,238 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 10:21:58,429 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 10:21:58,439 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 10:21:58,439 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 10:21:58,440 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 10:21:58 BoogieIcfgContainer [2022-04-15 10:21:58,440 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 10:21:58,441 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 10:21:58,441 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 10:21:58,446 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 10:21:58,446 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 10:21:57" (1/3) ... [2022-04-15 10:21:58,446 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7bc21ba0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 10:21:58, skipping insertion in model container [2022-04-15 10:21:58,446 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:21:58" (2/3) ... [2022-04-15 10:21:58,447 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7bc21ba0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 10:21:58, skipping insertion in model container [2022-04-15 10:21:58,447 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 10:21:58" (3/3) ... [2022-04-15 10:21:58,448 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound2.c [2022-04-15 10:21:58,450 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 10:21:58,451 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 10:21:58,489 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 10:21:58,497 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 10:21:58,497 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 10:21:58,518 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 10:21:58,523 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-15 10:21:58,523 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:21:58,523 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:21:58,524 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:21:58,527 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:21:58,527 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 1 times [2022-04-15 10:21:58,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:21:58,534 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [602495782] [2022-04-15 10:21:58,541 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:21:58,542 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 2 times [2022-04-15 10:21:58,544 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:21:58,544 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1567843198] [2022-04-15 10:21:58,544 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:21:58,545 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:21:58,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:21:58,691 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 10:21:58,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:21:58,723 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-15 10:21:58,723 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-15 10:21:58,723 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-15 10:21:58,724 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 10:21:58,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:21:58,732 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-15 10:21:58,732 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-15 10:21:58,733 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-15 10:21:58,733 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-15 10:21:58,734 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 10:21:58,734 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-15 10:21:58,734 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-15 10:21:58,734 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-15 10:21:58,735 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-15 10:21:58,735 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35#true} is VALID [2022-04-15 10:21:58,735 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35#true} is VALID [2022-04-15 10:21:58,736 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-15 10:21:58,736 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-15 10:21:58,736 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-15 10:21:58,737 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-15 10:21:58,737 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {36#false} is VALID [2022-04-15 10:21:58,738 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-15 10:21:58,738 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {36#false} is VALID [2022-04-15 10:21:58,738 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-15 10:21:58,738 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-15 10:21:58,738 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-15 10:21:58,739 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:21:58,739 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:21:58,739 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1567843198] [2022-04-15 10:21:58,740 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1567843198] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:21:58,740 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:21:58,740 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 10:21:58,742 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:21:58,742 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [602495782] [2022-04-15 10:21:58,742 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [602495782] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:21:58,742 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:21:58,742 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 10:21:58,742 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1146698065] [2022-04-15 10:21:58,743 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:21:58,747 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-15 10:21:58,748 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:21:58,750 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:58,773 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:21:58,774 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 10:21:58,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:21:58,788 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 10:21:58,789 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 10:21:58,791 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:58,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:21:58,926 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-15 10:21:58,926 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 10:21:58,926 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-15 10:21:58,927 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:21:58,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:58,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-15 10:21:58,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:58,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-15 10:21:58,938 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-15 10:21:59,011 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:21:59,017 INFO L225 Difference]: With dead ends: 56 [2022-04-15 10:21:59,017 INFO L226 Difference]: Without dead ends: 28 [2022-04-15 10:21:59,019 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 10:21:59,023 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:21:59,024 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:21:59,034 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-15 10:21:59,043 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-15 10:21:59,043 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:21:59,044 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,044 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,044 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:21:59,047 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-15 10:21:59,047 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-15 10:21:59,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:21:59,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:21:59,048 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-15 10:21:59,048 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-15 10:21:59,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:21:59,050 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-15 10:21:59,050 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-15 10:21:59,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:21:59,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:21:59,050 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:21:59,050 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:21:59,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-15 10:21:59,053 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-15 10:21:59,053 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:21:59,053 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-15 10:21:59,053 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:59,053 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 33 transitions. [2022-04-15 10:21:59,079 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:21:59,079 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-15 10:21:59,080 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 10:21:59,080 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:21:59,080 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:21:59,080 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 10:21:59,080 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:21:59,081 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:21:59,081 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 1 times [2022-04-15 10:21:59,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:21:59,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1157203088] [2022-04-15 10:21:59,081 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:21:59,082 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 2 times [2022-04-15 10:21:59,082 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:21:59,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [477264137] [2022-04-15 10:21:59,082 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:21:59,082 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:21:59,094 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:21:59,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1880114837] [2022-04-15 10:21:59,094 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:21:59,094 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:21:59,095 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:21:59,096 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:21:59,096 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-15 10:21:59,130 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 10:21:59,131 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:21:59,132 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 10:21:59,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:21:59,144 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:21:59,258 INFO L272 TraceCheckUtils]: 0: Hoare triple {269#true} call ULTIMATE.init(); {269#true} is VALID [2022-04-15 10:21:59,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {269#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,260 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {277#(<= ~counter~0 0)} {269#true} #77#return; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {277#(<= ~counter~0 0)} call #t~ret7 := main(); {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {277#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,261 INFO L272 TraceCheckUtils]: 6: Hoare triple {277#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,261 INFO L290 TraceCheckUtils]: 7: Hoare triple {277#(<= ~counter~0 0)} ~cond := #in~cond; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,261 INFO L290 TraceCheckUtils]: 8: Hoare triple {277#(<= ~counter~0 0)} assume !(0 == ~cond); {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,262 INFO L290 TraceCheckUtils]: 9: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,262 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {277#(<= ~counter~0 0)} {277#(<= ~counter~0 0)} #69#return; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,263 INFO L290 TraceCheckUtils]: 11: Hoare triple {277#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:21:59,263 INFO L290 TraceCheckUtils]: 12: Hoare triple {277#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {311#(<= |main_#t~post6| 0)} is VALID [2022-04-15 10:21:59,263 INFO L290 TraceCheckUtils]: 13: Hoare triple {311#(<= |main_#t~post6| 0)} assume !(#t~post6 < 2);havoc #t~post6; {270#false} is VALID [2022-04-15 10:21:59,264 INFO L272 TraceCheckUtils]: 14: Hoare triple {270#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {270#false} is VALID [2022-04-15 10:21:59,264 INFO L290 TraceCheckUtils]: 15: Hoare triple {270#false} ~cond := #in~cond; {270#false} is VALID [2022-04-15 10:21:59,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {270#false} assume 0 == ~cond; {270#false} is VALID [2022-04-15 10:21:59,264 INFO L290 TraceCheckUtils]: 17: Hoare triple {270#false} assume !false; {270#false} is VALID [2022-04-15 10:21:59,264 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:21:59,264 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:21:59,264 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:21:59,264 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [477264137] [2022-04-15 10:21:59,265 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:21:59,265 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1880114837] [2022-04-15 10:21:59,265 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1880114837] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:21:59,265 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:21:59,265 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 10:21:59,266 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:21:59,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1157203088] [2022-04-15 10:21:59,266 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1157203088] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:21:59,266 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:21:59,266 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 10:21:59,266 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [451202792] [2022-04-15 10:21:59,266 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:21:59,267 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-15 10:21:59,267 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:21:59,267 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:21:59,278 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:21:59,278 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 10:21:59,278 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:21:59,278 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 10:21:59,278 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 10:21:59,279 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:21:59,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:21:59,327 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-15 10:21:59,327 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 10:21:59,328 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-15 10:21:59,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:21:59,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:21:59,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-15 10:21:59,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:21:59,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-15 10:21:59,331 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-15 10:21:59,357 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:21:59,358 INFO L225 Difference]: With dead ends: 37 [2022-04-15 10:21:59,359 INFO L226 Difference]: Without dead ends: 29 [2022-04-15 10:21:59,359 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 10:21:59,360 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 0 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:21:59,360 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:21:59,360 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-15 10:21:59,368 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-15 10:21:59,369 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:21:59,369 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,369 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,369 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:21:59,371 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 10:21:59,371 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 10:21:59,371 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:21:59,371 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:21:59,371 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-15 10:21:59,372 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-15 10:21:59,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:21:59,373 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 10:21:59,373 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 10:21:59,373 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:21:59,373 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:21:59,374 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:21:59,374 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:21:59,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:21:59,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-15 10:21:59,384 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-15 10:21:59,384 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:21:59,384 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-15 10:21:59,384 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:21:59,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 35 transitions. [2022-04-15 10:21:59,410 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:21:59,410 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 10:21:59,410 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 10:21:59,410 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:21:59,410 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:21:59,447 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 10:21:59,642 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:21:59,643 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:21:59,643 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:21:59,643 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 1 times [2022-04-15 10:21:59,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:21:59,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1268370522] [2022-04-15 10:21:59,644 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:21:59,644 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 2 times [2022-04-15 10:21:59,644 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:21:59,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [586178496] [2022-04-15 10:21:59,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:21:59,644 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:21:59,654 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:21:59,654 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [80782644] [2022-04-15 10:21:59,655 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:21:59,655 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:21:59,655 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:21:59,657 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:21:59,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-15 10:21:59,698 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 10:21:59,698 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:21:59,710 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 10:21:59,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:21:59,718 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:21:59,815 INFO L272 TraceCheckUtils]: 0: Hoare triple {516#true} call ULTIMATE.init(); {516#true} is VALID [2022-04-15 10:21:59,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {516#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {516#true} is VALID [2022-04-15 10:21:59,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-15 10:21:59,816 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {516#true} {516#true} #77#return; {516#true} is VALID [2022-04-15 10:21:59,816 INFO L272 TraceCheckUtils]: 4: Hoare triple {516#true} call #t~ret7 := main(); {516#true} is VALID [2022-04-15 10:21:59,816 INFO L290 TraceCheckUtils]: 5: Hoare triple {516#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {516#true} is VALID [2022-04-15 10:21:59,816 INFO L272 TraceCheckUtils]: 6: Hoare triple {516#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {516#true} is VALID [2022-04-15 10:21:59,816 INFO L290 TraceCheckUtils]: 7: Hoare triple {516#true} ~cond := #in~cond; {516#true} is VALID [2022-04-15 10:21:59,817 INFO L290 TraceCheckUtils]: 8: Hoare triple {516#true} assume !(0 == ~cond); {516#true} is VALID [2022-04-15 10:21:59,817 INFO L290 TraceCheckUtils]: 9: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-15 10:21:59,817 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {516#true} {516#true} #69#return; {516#true} is VALID [2022-04-15 10:21:59,817 INFO L290 TraceCheckUtils]: 11: Hoare triple {516#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:21:59,818 INFO L290 TraceCheckUtils]: 12: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:21:59,818 INFO L290 TraceCheckUtils]: 13: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 2);havoc #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:21:59,819 INFO L272 TraceCheckUtils]: 14: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {564#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:21:59,819 INFO L290 TraceCheckUtils]: 15: Hoare triple {564#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {568#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:21:59,820 INFO L290 TraceCheckUtils]: 16: Hoare triple {568#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {517#false} is VALID [2022-04-15 10:21:59,820 INFO L290 TraceCheckUtils]: 17: Hoare triple {517#false} assume !false; {517#false} is VALID [2022-04-15 10:21:59,820 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:21:59,820 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:21:59,820 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:21:59,820 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [586178496] [2022-04-15 10:21:59,820 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:21:59,820 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [80782644] [2022-04-15 10:21:59,821 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [80782644] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:21:59,821 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:21:59,821 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 10:21:59,821 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:21:59,821 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1268370522] [2022-04-15 10:21:59,821 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1268370522] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:21:59,821 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:21:59,821 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 10:21:59,821 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [865668096] [2022-04-15 10:21:59,821 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:21:59,822 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 10:21:59,822 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:21:59,822 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:59,833 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:21:59,833 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 10:21:59,833 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:21:59,834 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 10:21:59,834 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 10:21:59,834 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:59,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:21:59,985 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-15 10:21:59,985 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 10:21:59,985 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 10:21:59,985 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:21:59,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:59,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 10:21:59,987 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:21:59,988 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 10:21:59,988 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-15 10:22:00,035 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:00,037 INFO L225 Difference]: With dead ends: 42 [2022-04-15 10:22:00,037 INFO L226 Difference]: Without dead ends: 40 [2022-04-15 10:22:00,038 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 10:22:00,045 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:22:00,047 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:22:00,048 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-15 10:22:00,065 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-15 10:22:00,065 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:22:00,066 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:00,066 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:00,068 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:00,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:00,075 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-15 10:22:00,075 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-15 10:22:00,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:00,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:00,077 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-15 10:22:00,078 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-15 10:22:00,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:00,079 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-15 10:22:00,079 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-15 10:22:00,080 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:00,080 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:00,080 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:22:00,080 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:22:00,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:00,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-15 10:22:00,081 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-15 10:22:00,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:22:00,082 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-15 10:22:00,082 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:00,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-15 10:22:00,117 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:00,117 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-15 10:22:00,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-15 10:22:00,118 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:22:00,118 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:22:00,136 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-15 10:22:00,336 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-15 10:22:00,337 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:22:00,337 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:22:00,337 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 1 times [2022-04-15 10:22:00,337 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:00,337 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1294224296] [2022-04-15 10:22:00,338 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:22:00,338 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 2 times [2022-04-15 10:22:00,338 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:22:00,338 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1826033521] [2022-04-15 10:22:00,338 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:22:00,338 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:22:00,349 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:22:00,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1672940050] [2022-04-15 10:22:00,349 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:22:00,350 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:22:00,350 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:22:00,351 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:22:00,352 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-15 10:22:00,381 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:22:00,382 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:22:00,382 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 10:22:00,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:22:00,391 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:22:10,830 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-15 10:22:10,830 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {808#true} is VALID [2022-04-15 10:22:10,831 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-15 10:22:10,831 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-15 10:22:10,831 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-15 10:22:10,831 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-15 10:22:10,831 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-15 10:22:10,832 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:22:10,832 INFO L290 TraceCheckUtils]: 8: Hoare triple {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:22:10,832 INFO L290 TraceCheckUtils]: 9: Hoare triple {838#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:22:10,834 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {838#(not (= |assume_abort_if_not_#in~cond| 0))} {808#true} #69#return; {845#(<= 1 main_~y~0)} is VALID [2022-04-15 10:22:10,835 INFO L290 TraceCheckUtils]: 11: Hoare triple {845#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:10,836 INFO L290 TraceCheckUtils]: 12: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:10,836 INFO L290 TraceCheckUtils]: 13: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 2);havoc #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:10,836 INFO L272 TraceCheckUtils]: 14: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-15 10:22:10,836 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:22:10,837 INFO L290 TraceCheckUtils]: 16: Hoare triple {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:22:10,837 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:22:12,839 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #71#return; {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is UNKNOWN [2022-04-15 10:22:12,840 INFO L290 TraceCheckUtils]: 19: Hoare triple {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:12,841 INFO L272 TraceCheckUtils]: 20: Hoare triple {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:22:12,841 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:22:12,842 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-15 10:22:12,842 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-15 10:22:12,842 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:22:12,842 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:22:50,593 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-15 10:22:50,593 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-15 10:22:50,594 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:22:50,594 INFO L272 TraceCheckUtils]: 20: Hoare triple {901#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:22:50,595 INFO L290 TraceCheckUtils]: 19: Hoare triple {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {901#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:22:50,597 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {808#true} #71#return; {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-15 10:22:50,597 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:22:50,598 INFO L290 TraceCheckUtils]: 16: Hoare triple {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:22:50,598 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 10:22:50,598 INFO L272 TraceCheckUtils]: 14: Hoare triple {808#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-15 10:22:50,598 INFO L290 TraceCheckUtils]: 13: Hoare triple {808#true} assume !!(#t~post6 < 2);havoc #t~post6; {808#true} is VALID [2022-04-15 10:22:50,598 INFO L290 TraceCheckUtils]: 12: Hoare triple {808#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {808#true} is VALID [2022-04-15 10:22:50,598 INFO L290 TraceCheckUtils]: 11: Hoare triple {808#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {808#true} is VALID [2022-04-15 10:22:50,599 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {808#true} {808#true} #69#return; {808#true} is VALID [2022-04-15 10:22:50,599 INFO L290 TraceCheckUtils]: 9: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-15 10:22:50,599 INFO L290 TraceCheckUtils]: 8: Hoare triple {808#true} assume !(0 == ~cond); {808#true} is VALID [2022-04-15 10:22:50,599 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {808#true} is VALID [2022-04-15 10:22:50,599 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-15 10:22:50,599 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-15 10:22:50,599 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-15 10:22:50,599 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-15 10:22:50,599 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-15 10:22:50,599 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {808#true} is VALID [2022-04-15 10:22:50,600 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-15 10:22:50,600 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:22:50,600 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:22:50,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1826033521] [2022-04-15 10:22:50,600 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:22:50,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1672940050] [2022-04-15 10:22:50,600 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1672940050] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:22:50,600 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:22:50,600 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-15 10:22:50,601 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:22:50,601 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1294224296] [2022-04-15 10:22:50,601 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1294224296] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:22:50,601 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:22:50,601 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 10:22:50,601 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2006431888] [2022-04-15 10:22:50,601 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:22:50,601 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-15 10:22:50,602 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:22:50,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:22:52,621 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 23 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:52,621 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 10:22:52,621 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:52,622 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 10:22:52,622 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-15 10:22:52,622 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:22:56,094 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 10:22:57,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:57,902 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-15 10:22:57,903 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 10:22:57,903 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-15 10:22:57,904 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:22:57,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:22:57,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 10:22:57,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:22:57,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 10:22:57,915 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-15 10:22:59,968 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:59,970 INFO L225 Difference]: With dead ends: 50 [2022-04-15 10:22:59,970 INFO L226 Difference]: Without dead ends: 48 [2022-04-15 10:22:59,971 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=64, Invalid=278, Unknown=0, NotChecked=0, Total=342 [2022-04-15 10:22:59,971 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 202 mSolverCounterSat, 17 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 202 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.3s IncrementalHoareTripleChecker+Time [2022-04-15 10:22:59,971 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 130 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 202 Invalid, 1 Unknown, 0 Unchecked, 3.3s Time] [2022-04-15 10:22:59,972 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-15 10:22:59,996 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 45. [2022-04-15 10:22:59,996 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:22:59,996 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:22:59,997 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:22:59,997 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:22:59,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:59,999 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 10:22:59,999 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 10:22:59,999 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:59,999 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:59,999 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-15 10:22:59,999 INFO L87 Difference]: Start difference. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-15 10:23:00,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:00,001 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 10:23:00,001 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 10:23:00,001 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:23:00,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:23:00,001 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:23:00,001 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:23:00,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:23:00,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 56 transitions. [2022-04-15 10:23:00,003 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 56 transitions. Word has length 24 [2022-04-15 10:23:00,003 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:23:00,003 INFO L478 AbstractCegarLoop]: Abstraction has 45 states and 56 transitions. [2022-04-15 10:23:00,003 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:23:00,003 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 45 states and 56 transitions. [2022-04-15 10:23:02,056 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 55 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:02,056 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 56 transitions. [2022-04-15 10:23:02,056 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-15 10:23:02,056 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:23:02,056 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:23:02,074 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-15 10:23:02,257 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:02,257 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:23:02,258 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:23:02,258 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 1 times [2022-04-15 10:23:02,258 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:23:02,258 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [246006319] [2022-04-15 10:23:08,355 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 10:23:08,355 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-15 10:23:08,355 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 10:23:08,355 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 2 times [2022-04-15 10:23:08,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:23:08,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [889053905] [2022-04-15 10:23:08,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:23:08,356 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:23:08,381 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:23:08,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1188094030] [2022-04-15 10:23:08,381 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:23:08,381 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:08,381 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:23:08,389 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:23:08,395 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-15 10:23:08,425 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:23:08,426 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:23:08,426 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 10:23:08,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:23:08,441 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:23:08,563 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-15 10:23:08,564 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,564 INFO L290 TraceCheckUtils]: 2: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,564 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1268#(<= ~counter~0 0)} {1260#true} #77#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,565 INFO L272 TraceCheckUtils]: 4: Hoare triple {1268#(<= ~counter~0 0)} call #t~ret7 := main(); {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {1268#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,566 INFO L272 TraceCheckUtils]: 6: Hoare triple {1268#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,566 INFO L290 TraceCheckUtils]: 7: Hoare triple {1268#(<= ~counter~0 0)} ~cond := #in~cond; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,567 INFO L290 TraceCheckUtils]: 8: Hoare triple {1268#(<= ~counter~0 0)} assume !(0 == ~cond); {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,567 INFO L290 TraceCheckUtils]: 9: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,569 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1268#(<= ~counter~0 0)} {1268#(<= ~counter~0 0)} #69#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,569 INFO L290 TraceCheckUtils]: 11: Hoare triple {1268#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {1268#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {1302#(<= ~counter~0 1)} assume !!(#t~post6 < 2);havoc #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,580 INFO L272 TraceCheckUtils]: 14: Hoare triple {1302#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,581 INFO L290 TraceCheckUtils]: 15: Hoare triple {1302#(<= ~counter~0 1)} ~cond := #in~cond; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,581 INFO L290 TraceCheckUtils]: 16: Hoare triple {1302#(<= ~counter~0 1)} assume !(0 == ~cond); {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,581 INFO L290 TraceCheckUtils]: 17: Hoare triple {1302#(<= ~counter~0 1)} assume true; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,582 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1302#(<= ~counter~0 1)} {1302#(<= ~counter~0 1)} #71#return; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,582 INFO L290 TraceCheckUtils]: 19: Hoare triple {1302#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,582 INFO L290 TraceCheckUtils]: 20: Hoare triple {1302#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {1302#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1330#(<= |main_#t~post6| 1)} is VALID [2022-04-15 10:23:08,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {1330#(<= |main_#t~post6| 1)} assume !(#t~post6 < 2);havoc #t~post6; {1261#false} is VALID [2022-04-15 10:23:08,583 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-15 10:23:08,583 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-15 10:23:08,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-15 10:23:08,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-15 10:23:08,584 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:23:08,584 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:23:08,705 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-15 10:23:08,705 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-15 10:23:08,705 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-15 10:23:08,705 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-15 10:23:08,706 INFO L290 TraceCheckUtils]: 22: Hoare triple {1330#(<= |main_#t~post6| 1)} assume !(#t~post6 < 2);havoc #t~post6; {1261#false} is VALID [2022-04-15 10:23:08,706 INFO L290 TraceCheckUtils]: 21: Hoare triple {1302#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1330#(<= |main_#t~post6| 1)} is VALID [2022-04-15 10:23:08,706 INFO L290 TraceCheckUtils]: 20: Hoare triple {1302#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,707 INFO L290 TraceCheckUtils]: 19: Hoare triple {1302#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,708 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1260#true} {1302#(<= ~counter~0 1)} #71#return; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,708 INFO L290 TraceCheckUtils]: 17: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-15 10:23:08,708 INFO L290 TraceCheckUtils]: 16: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-15 10:23:08,708 INFO L290 TraceCheckUtils]: 15: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-15 10:23:08,708 INFO L272 TraceCheckUtils]: 14: Hoare triple {1302#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1260#true} is VALID [2022-04-15 10:23:08,708 INFO L290 TraceCheckUtils]: 13: Hoare triple {1302#(<= ~counter~0 1)} assume !!(#t~post6 < 2);havoc #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,709 INFO L290 TraceCheckUtils]: 12: Hoare triple {1268#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:08,709 INFO L290 TraceCheckUtils]: 11: Hoare triple {1268#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,710 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1260#true} {1268#(<= ~counter~0 0)} #69#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,710 INFO L290 TraceCheckUtils]: 9: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-15 10:23:08,710 INFO L290 TraceCheckUtils]: 8: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-15 10:23:08,710 INFO L290 TraceCheckUtils]: 7: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-15 10:23:08,710 INFO L272 TraceCheckUtils]: 6: Hoare triple {1268#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1260#true} is VALID [2022-04-15 10:23:08,711 INFO L290 TraceCheckUtils]: 5: Hoare triple {1268#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,711 INFO L272 TraceCheckUtils]: 4: Hoare triple {1268#(<= ~counter~0 0)} call #t~ret7 := main(); {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,711 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1268#(<= ~counter~0 0)} {1260#true} #77#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,712 INFO L290 TraceCheckUtils]: 2: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,712 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:08,712 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-15 10:23:08,713 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:23:08,713 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:23:08,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [889053905] [2022-04-15 10:23:08,713 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:23:08,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1188094030] [2022-04-15 10:23:08,713 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1188094030] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:23:08,713 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:23:08,713 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 5 [2022-04-15 10:23:08,713 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:23:08,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [246006319] [2022-04-15 10:23:08,713 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [246006319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:23:08,713 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:23:08,713 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 10:23:08,714 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [294251447] [2022-04-15 10:23:08,714 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:23:08,714 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 27 [2022-04-15 10:23:08,714 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:23:08,714 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:08,732 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:08,732 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 10:23:08,733 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:23:08,733 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 10:23:08,733 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 10:23:08,733 INFO L87 Difference]: Start difference. First operand 45 states and 56 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:08,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:08,876 INFO L93 Difference]: Finished difference Result 73 states and 89 transitions. [2022-04-15 10:23:08,876 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 10:23:08,876 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 27 [2022-04-15 10:23:08,876 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:23:08,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:08,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-15 10:23:08,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:08,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-15 10:23:08,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-15 10:23:08,920 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:08,922 INFO L225 Difference]: With dead ends: 73 [2022-04-15 10:23:08,922 INFO L226 Difference]: Without dead ends: 63 [2022-04-15 10:23:08,922 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 49 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-15 10:23:08,922 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 17 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:23:08,923 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 108 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:23:08,923 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-15 10:23:08,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 61. [2022-04-15 10:23:08,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:23:08,978 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:08,979 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:08,979 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:08,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:08,980 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-15 10:23:08,980 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-15 10:23:08,981 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:23:08,981 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:23:08,981 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-15 10:23:08,981 INFO L87 Difference]: Start difference. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-15 10:23:08,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:08,983 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-15 10:23:08,983 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-15 10:23:08,983 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:23:08,983 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:23:08,983 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:23:08,983 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:23:08,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:08,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 76 transitions. [2022-04-15 10:23:08,985 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 76 transitions. Word has length 27 [2022-04-15 10:23:08,985 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:23:08,985 INFO L478 AbstractCegarLoop]: Abstraction has 61 states and 76 transitions. [2022-04-15 10:23:08,985 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:08,985 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 61 states and 76 transitions. [2022-04-15 10:23:11,054 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 75 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:11,054 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 76 transitions. [2022-04-15 10:23:11,055 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-15 10:23:11,055 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:23:11,055 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:23:11,072 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-15 10:23:11,255 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:11,255 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:23:11,256 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:23:11,256 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 1 times [2022-04-15 10:23:11,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:23:11,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1677784034] [2022-04-15 10:23:17,326 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 10:23:17,326 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-15 10:23:17,326 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 10:23:17,326 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 2 times [2022-04-15 10:23:17,327 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:23:17,327 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [868247670] [2022-04-15 10:23:17,327 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:23:17,327 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:23:17,336 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:23:17,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1219953772] [2022-04-15 10:23:17,336 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:23:17,336 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:17,336 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:23:17,347 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:23:17,348 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-15 10:23:17,384 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:23:17,385 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:23:17,385 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 10:23:17,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:23:17,397 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:23:17,729 INFO L272 TraceCheckUtils]: 0: Hoare triple {1822#true} call ULTIMATE.init(); {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L290 TraceCheckUtils]: 1: Hoare triple {1822#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L290 TraceCheckUtils]: 2: Hoare triple {1822#true} assume true; {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1822#true} {1822#true} #77#return; {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L272 TraceCheckUtils]: 4: Hoare triple {1822#true} call #t~ret7 := main(); {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L290 TraceCheckUtils]: 5: Hoare triple {1822#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L272 TraceCheckUtils]: 6: Hoare triple {1822#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L290 TraceCheckUtils]: 7: Hoare triple {1822#true} ~cond := #in~cond; {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L290 TraceCheckUtils]: 8: Hoare triple {1822#true} assume !(0 == ~cond); {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L290 TraceCheckUtils]: 9: Hoare triple {1822#true} assume true; {1822#true} is VALID [2022-04-15 10:23:17,730 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1822#true} {1822#true} #69#return; {1822#true} is VALID [2022-04-15 10:23:17,731 INFO L290 TraceCheckUtils]: 11: Hoare triple {1822#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1860#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:17,731 INFO L290 TraceCheckUtils]: 12: Hoare triple {1860#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1860#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:17,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {1860#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 2);havoc #t~post6; {1860#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:17,732 INFO L272 TraceCheckUtils]: 14: Hoare triple {1860#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1822#true} is VALID [2022-04-15 10:23:17,732 INFO L290 TraceCheckUtils]: 15: Hoare triple {1822#true} ~cond := #in~cond; {1873#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:23:17,732 INFO L290 TraceCheckUtils]: 16: Hoare triple {1873#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:23:17,733 INFO L290 TraceCheckUtils]: 17: Hoare triple {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:23:17,734 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} {1860#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {1884#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:17,734 INFO L290 TraceCheckUtils]: 19: Hoare triple {1884#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1884#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:17,735 INFO L290 TraceCheckUtils]: 20: Hoare triple {1884#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1891#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-15 10:23:17,735 INFO L290 TraceCheckUtils]: 21: Hoare triple {1891#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1891#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-15 10:23:17,736 INFO L290 TraceCheckUtils]: 22: Hoare triple {1891#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} assume !!(#t~post6 < 2);havoc #t~post6; {1891#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-15 10:23:17,739 INFO L272 TraceCheckUtils]: 23: Hoare triple {1891#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1901#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:23:17,739 INFO L290 TraceCheckUtils]: 24: Hoare triple {1901#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1905#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:23:17,740 INFO L290 TraceCheckUtils]: 25: Hoare triple {1905#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1823#false} is VALID [2022-04-15 10:23:17,740 INFO L290 TraceCheckUtils]: 26: Hoare triple {1823#false} assume !false; {1823#false} is VALID [2022-04-15 10:23:17,740 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:23:17,740 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:24:09,955 INFO L290 TraceCheckUtils]: 26: Hoare triple {1823#false} assume !false; {1823#false} is VALID [2022-04-15 10:24:09,956 INFO L290 TraceCheckUtils]: 25: Hoare triple {1905#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1823#false} is VALID [2022-04-15 10:24:09,956 INFO L290 TraceCheckUtils]: 24: Hoare triple {1901#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1905#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:09,957 INFO L272 TraceCheckUtils]: 23: Hoare triple {1921#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1901#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:09,957 INFO L290 TraceCheckUtils]: 22: Hoare triple {1921#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 2);havoc #t~post6; {1921#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:09,958 INFO L290 TraceCheckUtils]: 21: Hoare triple {1921#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1921#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:09,962 INFO L290 TraceCheckUtils]: 20: Hoare triple {1931#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1921#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:09,962 INFO L290 TraceCheckUtils]: 19: Hoare triple {1931#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume !!(0 != ~a~0 && 0 != ~b~0); {1931#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-15 10:24:09,966 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} {1822#true} #71#return; {1931#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-15 10:24:09,967 INFO L290 TraceCheckUtils]: 17: Hoare triple {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:24:09,967 INFO L290 TraceCheckUtils]: 16: Hoare triple {1947#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1877#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:24:09,967 INFO L290 TraceCheckUtils]: 15: Hoare triple {1822#true} ~cond := #in~cond; {1947#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 10:24:09,967 INFO L272 TraceCheckUtils]: 14: Hoare triple {1822#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 13: Hoare triple {1822#true} assume !!(#t~post6 < 2);havoc #t~post6; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 12: Hoare triple {1822#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 11: Hoare triple {1822#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1822#true} {1822#true} #69#return; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 9: Hoare triple {1822#true} assume true; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 8: Hoare triple {1822#true} assume !(0 == ~cond); {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 7: Hoare triple {1822#true} ~cond := #in~cond; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L272 TraceCheckUtils]: 6: Hoare triple {1822#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 5: Hoare triple {1822#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L272 TraceCheckUtils]: 4: Hoare triple {1822#true} call #t~ret7 := main(); {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1822#true} {1822#true} #77#return; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 2: Hoare triple {1822#true} assume true; {1822#true} is VALID [2022-04-15 10:24:09,968 INFO L290 TraceCheckUtils]: 1: Hoare triple {1822#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1822#true} is VALID [2022-04-15 10:24:09,969 INFO L272 TraceCheckUtils]: 0: Hoare triple {1822#true} call ULTIMATE.init(); {1822#true} is VALID [2022-04-15 10:24:09,969 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:24:09,969 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:24:09,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [868247670] [2022-04-15 10:24:09,969 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:24:09,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1219953772] [2022-04-15 10:24:09,969 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1219953772] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:24:09,969 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:24:09,969 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-15 10:24:09,969 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:24:09,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1677784034] [2022-04-15 10:24:09,969 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1677784034] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:09,970 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:09,970 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 10:24:09,970 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2074825318] [2022-04-15 10:24:09,970 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:24:09,970 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-15 10:24:09,970 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:24:09,970 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:10,009 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:10,009 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 10:24:10,009 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:10,009 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 10:24:10,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-04-15 10:24:10,009 INFO L87 Difference]: Start difference. First operand 61 states and 76 transitions. Second operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:10,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:10,564 INFO L93 Difference]: Finished difference Result 76 states and 96 transitions. [2022-04-15 10:24:10,564 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 10:24:10,564 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-15 10:24:10,564 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:24:10,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:10,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-15 10:24:10,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:10,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-15 10:24:10,566 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 68 transitions. [2022-04-15 10:24:10,630 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:10,631 INFO L225 Difference]: With dead ends: 76 [2022-04-15 10:24:10,632 INFO L226 Difference]: Without dead ends: 74 [2022-04-15 10:24:10,632 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 42 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2022-04-15 10:24:10,643 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 25 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 168 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 174 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 168 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 10:24:10,644 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 108 Invalid, 174 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 168 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 10:24:10,644 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-15 10:24:10,704 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 68. [2022-04-15 10:24:10,704 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:24:10,704 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:10,704 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:10,704 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:10,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:10,706 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-15 10:24:10,706 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-15 10:24:10,707 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:10,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:10,707 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-15 10:24:10,707 INFO L87 Difference]: Start difference. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-15 10:24:10,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:10,709 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-15 10:24:10,709 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-15 10:24:10,709 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:10,709 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:10,709 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:24:10,709 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:24:10,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:10,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-15 10:24:10,711 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 27 [2022-04-15 10:24:10,711 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:24:10,711 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-15 10:24:10,711 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:10,712 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-15 10:24:12,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:12,810 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-15 10:24:12,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 10:24:12,810 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:24:12,810 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:24:12,827 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-15 10:24:13,010 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:13,011 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:24:13,011 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:24:13,011 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 1 times [2022-04-15 10:24:13,011 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:13,011 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [434395746] [2022-04-15 10:24:13,012 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:24:13,012 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 2 times [2022-04-15 10:24:13,012 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:24:13,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1887849957] [2022-04-15 10:24:13,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:24:13,012 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:24:13,023 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:24:13,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2142651605] [2022-04-15 10:24:13,024 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:24:13,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:13,024 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:24:13,026 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:24:13,027 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-15 10:24:13,060 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:24:13,060 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:24:13,060 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-15 10:24:13,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:24:13,069 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:24:13,193 INFO L272 TraceCheckUtils]: 0: Hoare triple {2435#true} call ULTIMATE.init(); {2435#true} is VALID [2022-04-15 10:24:13,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {2435#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2435#true} is VALID [2022-04-15 10:24:13,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {2435#true} assume true; {2435#true} is VALID [2022-04-15 10:24:13,194 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2435#true} {2435#true} #77#return; {2435#true} is VALID [2022-04-15 10:24:13,194 INFO L272 TraceCheckUtils]: 4: Hoare triple {2435#true} call #t~ret7 := main(); {2435#true} is VALID [2022-04-15 10:24:13,194 INFO L290 TraceCheckUtils]: 5: Hoare triple {2435#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2435#true} is VALID [2022-04-15 10:24:13,194 INFO L272 TraceCheckUtils]: 6: Hoare triple {2435#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2435#true} is VALID [2022-04-15 10:24:13,194 INFO L290 TraceCheckUtils]: 7: Hoare triple {2435#true} ~cond := #in~cond; {2461#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:24:13,194 INFO L290 TraceCheckUtils]: 8: Hoare triple {2461#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2465#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:24:13,195 INFO L290 TraceCheckUtils]: 9: Hoare triple {2465#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2465#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:24:13,195 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2465#(not (= |assume_abort_if_not_#in~cond| 0))} {2435#true} #69#return; {2472#(<= 1 main_~y~0)} is VALID [2022-04-15 10:24:13,195 INFO L290 TraceCheckUtils]: 11: Hoare triple {2472#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2476#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:13,196 INFO L290 TraceCheckUtils]: 12: Hoare triple {2476#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2476#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:13,196 INFO L290 TraceCheckUtils]: 13: Hoare triple {2476#(<= 1 main_~b~0)} assume !!(#t~post6 < 2);havoc #t~post6; {2476#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:13,196 INFO L272 TraceCheckUtils]: 14: Hoare triple {2476#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2435#true} is VALID [2022-04-15 10:24:13,196 INFO L290 TraceCheckUtils]: 15: Hoare triple {2435#true} ~cond := #in~cond; {2435#true} is VALID [2022-04-15 10:24:13,197 INFO L290 TraceCheckUtils]: 16: Hoare triple {2435#true} assume !(0 == ~cond); {2435#true} is VALID [2022-04-15 10:24:13,197 INFO L290 TraceCheckUtils]: 17: Hoare triple {2435#true} assume true; {2435#true} is VALID [2022-04-15 10:24:13,197 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2435#true} {2476#(<= 1 main_~b~0)} #71#return; {2476#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:13,198 INFO L290 TraceCheckUtils]: 19: Hoare triple {2476#(<= 1 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {2501#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 10:24:13,198 INFO L272 TraceCheckUtils]: 20: Hoare triple {2501#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2435#true} is VALID [2022-04-15 10:24:13,198 INFO L290 TraceCheckUtils]: 21: Hoare triple {2435#true} ~cond := #in~cond; {2435#true} is VALID [2022-04-15 10:24:13,198 INFO L290 TraceCheckUtils]: 22: Hoare triple {2435#true} assume !(0 == ~cond); {2435#true} is VALID [2022-04-15 10:24:13,198 INFO L290 TraceCheckUtils]: 23: Hoare triple {2435#true} assume true; {2435#true} is VALID [2022-04-15 10:24:13,198 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2435#true} {2501#(and (= main_~a~0 0) (<= 1 main_~b~0))} #73#return; {2501#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 10:24:13,199 INFO L272 TraceCheckUtils]: 25: Hoare triple {2501#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2520#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:13,199 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2524#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:13,204 INFO L290 TraceCheckUtils]: 27: Hoare triple {2524#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2436#false} is VALID [2022-04-15 10:24:13,204 INFO L290 TraceCheckUtils]: 28: Hoare triple {2436#false} assume !false; {2436#false} is VALID [2022-04-15 10:24:13,204 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 10:24:13,204 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:24:13,204 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:24:13,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1887849957] [2022-04-15 10:24:13,204 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:24:13,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2142651605] [2022-04-15 10:24:13,205 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2142651605] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:13,205 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:13,205 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 10:24:13,205 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:24:13,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [434395746] [2022-04-15 10:24:13,205 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [434395746] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:13,205 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:13,205 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 10:24:13,206 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [348121238] [2022-04-15 10:24:13,206 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:24:13,206 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-15 10:24:13,206 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:24:13,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:13,223 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:13,223 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 10:24:13,223 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:13,223 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 10:24:13,223 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-15 10:24:13,223 INFO L87 Difference]: Start difference. First operand 68 states and 83 transitions. Second operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:13,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:13,590 INFO L93 Difference]: Finished difference Result 85 states and 107 transitions. [2022-04-15 10:24:13,590 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 10:24:13,591 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-15 10:24:13,591 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:24:13,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:13,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-15 10:24:13,593 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:13,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-15 10:24:13,597 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-15 10:24:13,642 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:13,645 INFO L225 Difference]: With dead ends: 85 [2022-04-15 10:24:13,645 INFO L226 Difference]: Without dead ends: 65 [2022-04-15 10:24:13,645 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-15 10:24:13,645 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 33 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 10:24:13,646 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 157 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 10:24:13,646 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-15 10:24:13,717 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 62. [2022-04-15 10:24:13,717 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:24:13,718 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:13,718 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:13,719 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:13,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:13,721 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-15 10:24:13,721 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-15 10:24:13,721 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:13,721 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:13,721 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-15 10:24:13,721 INFO L87 Difference]: Start difference. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-15 10:24:13,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:13,723 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-15 10:24:13,723 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-15 10:24:13,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:13,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:13,723 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:24:13,723 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:24:13,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:13,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 80 transitions. [2022-04-15 10:24:13,725 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 80 transitions. Word has length 29 [2022-04-15 10:24:13,725 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:24:13,725 INFO L478 AbstractCegarLoop]: Abstraction has 62 states and 80 transitions. [2022-04-15 10:24:13,725 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:13,725 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 62 states and 80 transitions. [2022-04-15 10:24:15,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 79 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:15,809 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 80 transitions. [2022-04-15 10:24:15,809 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 10:24:15,809 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:24:15,809 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:24:15,825 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-15 10:24:16,023 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:16,023 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:24:16,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:24:16,024 INFO L85 PathProgramCache]: Analyzing trace with hash -1357155568, now seen corresponding path program 1 times [2022-04-15 10:24:16,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:16,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [666315681] [2022-04-15 10:24:23,431 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:23,496 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:23,554 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:23,612 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:26,514 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:26,571 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:26,571 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 10:24:26,574 INFO L85 PathProgramCache]: Analyzing trace with hash 1724905837, now seen corresponding path program 1 times [2022-04-15 10:24:26,574 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:24:26,574 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1292325908] [2022-04-15 10:24:26,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:24:26,574 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:24:26,585 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:24:26,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2071791213] [2022-04-15 10:24:26,585 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:24:26,586 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:26,586 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:24:26,586 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:24:26,587 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-15 10:24:26,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:24:26,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 42 conjunts are in the unsatisfiable core [2022-04-15 10:24:26,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:24:26,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:24:32,983 INFO L272 TraceCheckUtils]: 0: Hoare triple {2962#true} call ULTIMATE.init(); {2962#true} is VALID [2022-04-15 10:24:32,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {2962#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {2970#(<= 0 ~counter~0)} assume true; {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,986 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2970#(<= 0 ~counter~0)} {2962#true} #77#return; {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,987 INFO L272 TraceCheckUtils]: 4: Hoare triple {2970#(<= 0 ~counter~0)} call #t~ret7 := main(); {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,987 INFO L290 TraceCheckUtils]: 5: Hoare triple {2970#(<= 0 ~counter~0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,987 INFO L272 TraceCheckUtils]: 6: Hoare triple {2970#(<= 0 ~counter~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,988 INFO L290 TraceCheckUtils]: 7: Hoare triple {2970#(<= 0 ~counter~0)} ~cond := #in~cond; {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,988 INFO L290 TraceCheckUtils]: 8: Hoare triple {2970#(<= 0 ~counter~0)} assume !(0 == ~cond); {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,989 INFO L290 TraceCheckUtils]: 9: Hoare triple {2970#(<= 0 ~counter~0)} assume true; {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,991 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2970#(<= 0 ~counter~0)} {2970#(<= 0 ~counter~0)} #69#return; {2970#(<= 0 ~counter~0)} is VALID [2022-04-15 10:24:32,992 INFO L290 TraceCheckUtils]: 11: Hoare triple {2970#(<= 0 ~counter~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3001#(and (<= 0 ~counter~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,993 INFO L290 TraceCheckUtils]: 12: Hoare triple {3001#(and (<= 0 ~counter~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [81] L46-2-->L33-1_primed: Formula: (let ((.cse6 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse5 (= (mod v_main_~b~0_37 2) 0)) (.cse4 (= 0 v_main_~b~0_37)) (.cse10 (<= 0 v_main_~a~0_38)) (.cse7 (= (mod v_main_~a~0_38 2) 1)) (.cse9 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse6)) (.cse8 (< v_~counter~0_29 2)) (.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= |v_main_#t~post6_17| |v_main_#t~post6_15|)) (.cse2 (= v_~counter~0_29 v_~counter~0_28)) (.cse3 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) .cse1 (= v_main_~b~0_37 v_main_~b~0_37) .cse2 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse3) (and (not .cse4) .cse5 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse6) .cse7 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse8 .cse9 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse10) (and (or (not .cse5) .cse4 (not .cse10) (not .cse7) (not .cse9) (not .cse8)) .cse0 .cse1 .cse2 .cse3)))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_17|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3005#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (< (+ ~counter~0 main_~a~0) (+ main_~x~0 2)) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,994 INFO L290 TraceCheckUtils]: 13: Hoare triple {3005#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (< (+ ~counter~0 main_~a~0) (+ main_~x~0 2)) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [82] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3005#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (< (+ ~counter~0 main_~a~0) (+ main_~x~0 2)) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,995 INFO L290 TraceCheckUtils]: 14: Hoare triple {3005#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (< (+ ~counter~0 main_~a~0) (+ main_~x~0 2)) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [83] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_20| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_20|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,996 INFO L290 TraceCheckUtils]: 15: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [84] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,997 INFO L290 TraceCheckUtils]: 16: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [85] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_23| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_23|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,997 INFO L290 TraceCheckUtils]: 17: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [86] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,998 INFO L290 TraceCheckUtils]: 18: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [87] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_26| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_26|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:32,999 INFO L290 TraceCheckUtils]: 19: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [88] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:33,002 INFO L290 TraceCheckUtils]: 20: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [89] L46-2-->L33-1_primed: Formula: (let ((.cse2 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse1 (= (mod v_main_~b~0_37 2) 0)) (.cse0 (= 0 v_main_~b~0_37)) (.cse6 (<= 0 v_main_~a~0_38)) (.cse3 (= (mod v_main_~a~0_38 2) 1)) (.cse5 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse2)) (.cse4 (< v_~counter~0_29 2)) (.cse7 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse8 (= v_~counter~0_29 v_~counter~0_28)) (.cse9 (= |v_main_#t~post6_29| |v_main_#t~post6_15|)) (.cse10 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and (not .cse0) .cse1 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse2) .cse3 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse4 .cse5 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse6) (and (or (not .cse1) .cse0 (not .cse6) (not .cse3) (not .cse5) (not .cse4)) .cse7 .cse8 .cse9 .cse10) (and .cse7 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse8 (= v_main_~x~0_22 v_main_~x~0_22) .cse9 (= v_main_~y~0_26 v_main_~y~0_26) .cse10)))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_29|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:33,003 INFO L290 TraceCheckUtils]: 21: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [90] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:33,004 INFO L290 TraceCheckUtils]: 22: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [91] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_32| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_32|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:33,005 INFO L290 TraceCheckUtils]: 23: Hoare triple {3012#(and (= main_~b~0 main_~y~0) (or (and (<= 0 ~counter~0) (= main_~q~0 0) (= main_~a~0 main_~x~0)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ ~counter~0 main_~a~0)))) (= main_~p~0 1))} [80] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3040#(and (or (and (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= 0 |main_#t~post6|)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ |main_#t~post6| main_~a~0)))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:33,005 INFO L290 TraceCheckUtils]: 24: Hoare triple {3040#(and (or (and (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= 0 |main_#t~post6|)) (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= main_~x~0 (+ |main_#t~post6| main_~a~0)))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 2);havoc #t~post6; {3044#(and (= main_~b~0 main_~y~0) (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 10:24:33,008 INFO L272 TraceCheckUtils]: 25: Hoare triple {3044#(and (= main_~b~0 main_~y~0) (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3048#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:33,008 INFO L290 TraceCheckUtils]: 26: Hoare triple {3048#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3052#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:33,009 INFO L290 TraceCheckUtils]: 27: Hoare triple {3052#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2963#false} is VALID [2022-04-15 10:24:33,009 INFO L290 TraceCheckUtils]: 28: Hoare triple {2963#false} assume !false; {2963#false} is VALID [2022-04-15 10:24:33,009 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 10:24:33,009 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:24:53,679 INFO L290 TraceCheckUtils]: 28: Hoare triple {2963#false} assume !false; {2963#false} is VALID [2022-04-15 10:24:53,680 INFO L290 TraceCheckUtils]: 27: Hoare triple {3052#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2963#false} is VALID [2022-04-15 10:24:53,680 INFO L290 TraceCheckUtils]: 26: Hoare triple {3048#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3052#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:53,681 INFO L272 TraceCheckUtils]: 25: Hoare triple {3068#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3048#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:53,681 INFO L290 TraceCheckUtils]: 24: Hoare triple {3072#(or (not (< |main_#t~post6| 2)) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 2);havoc #t~post6; {3068#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:53,682 INFO L290 TraceCheckUtils]: 23: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [80] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3072#(or (not (< |main_#t~post6| 2)) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [91] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_32| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_32|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,683 INFO L290 TraceCheckUtils]: 21: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [90] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,686 INFO L290 TraceCheckUtils]: 20: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [89] L46-2-->L33-1_primed: Formula: (let ((.cse2 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse1 (= (mod v_main_~b~0_37 2) 0)) (.cse0 (= 0 v_main_~b~0_37)) (.cse6 (<= 0 v_main_~a~0_38)) (.cse3 (= (mod v_main_~a~0_38 2) 1)) (.cse5 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse2)) (.cse4 (< v_~counter~0_29 2)) (.cse7 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse8 (= v_~counter~0_29 v_~counter~0_28)) (.cse9 (= |v_main_#t~post6_29| |v_main_#t~post6_15|)) (.cse10 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and (not .cse0) .cse1 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse2) .cse3 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse4 .cse5 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse6) (and (or (not .cse1) .cse0 (not .cse6) (not .cse3) (not .cse5) (not .cse4)) .cse7 .cse8 .cse9 .cse10) (and .cse7 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse8 (= v_main_~x~0_22 v_main_~x~0_22) .cse9 (= v_main_~y~0_26 v_main_~y~0_26) .cse10)))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_29|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,687 INFO L290 TraceCheckUtils]: 19: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [88] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,687 INFO L290 TraceCheckUtils]: 18: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [87] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_26| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_26|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,688 INFO L290 TraceCheckUtils]: 17: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [86] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,688 INFO L290 TraceCheckUtils]: 16: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [85] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_23| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_23|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [84] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,689 INFO L290 TraceCheckUtils]: 14: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [83] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_20| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_20|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,689 INFO L290 TraceCheckUtils]: 13: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [82] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,693 INFO L290 TraceCheckUtils]: 12: Hoare triple {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} [81] L46-2-->L33-1_primed: Formula: (let ((.cse6 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse5 (= (mod v_main_~b~0_37 2) 0)) (.cse4 (= 0 v_main_~b~0_37)) (.cse10 (<= 0 v_main_~a~0_38)) (.cse7 (= (mod v_main_~a~0_38 2) 1)) (.cse9 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse6)) (.cse8 (< v_~counter~0_29 2)) (.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= |v_main_#t~post6_17| |v_main_#t~post6_15|)) (.cse2 (= v_~counter~0_29 v_~counter~0_28)) (.cse3 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) .cse1 (= v_main_~b~0_37 v_main_~b~0_37) .cse2 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse3) (and (not .cse4) .cse5 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse6) .cse7 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse8 .cse9 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse10) (and (or (not .cse5) .cse4 (not .cse10) (not .cse7) (not .cse9) (not .cse8)) .cse0 .cse1 .cse2 .cse3)))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_17|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,693 INFO L290 TraceCheckUtils]: 11: Hoare triple {2962#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3076#(or (<= 2 ~counter~0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)))} is VALID [2022-04-15 10:24:53,693 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2962#true} {2962#true} #69#return; {2962#true} is VALID [2022-04-15 10:24:53,693 INFO L290 TraceCheckUtils]: 9: Hoare triple {2962#true} assume true; {2962#true} is VALID [2022-04-15 10:24:53,693 INFO L290 TraceCheckUtils]: 8: Hoare triple {2962#true} assume !(0 == ~cond); {2962#true} is VALID [2022-04-15 10:24:53,693 INFO L290 TraceCheckUtils]: 7: Hoare triple {2962#true} ~cond := #in~cond; {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L272 TraceCheckUtils]: 6: Hoare triple {2962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L290 TraceCheckUtils]: 5: Hoare triple {2962#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L272 TraceCheckUtils]: 4: Hoare triple {2962#true} call #t~ret7 := main(); {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2962#true} {2962#true} #77#return; {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L290 TraceCheckUtils]: 2: Hoare triple {2962#true} assume true; {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {2962#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L272 TraceCheckUtils]: 0: Hoare triple {2962#true} call ULTIMATE.init(); {2962#true} is VALID [2022-04-15 10:24:53,694 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-15 10:24:53,694 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:24:53,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1292325908] [2022-04-15 10:24:53,694 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:24:53,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2071791213] [2022-04-15 10:24:53,694 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2071791213] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 10:24:53,694 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 10:24:53,695 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [10] total 13 [2022-04-15 10:24:54,187 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:24:54,188 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [666315681] [2022-04-15 10:24:54,188 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [666315681] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:54,188 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:54,188 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 10:24:54,188 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1852827573] [2022-04-15 10:24:54,188 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:24:54,188 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 12 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-15 10:24:54,188 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:24:54,188 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 12 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:54,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:54,210 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 10:24:54,210 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:54,210 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 10:24:54,210 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=294, Unknown=0, NotChecked=0, Total=380 [2022-04-15 10:24:54,211 INFO L87 Difference]: Start difference. First operand 62 states and 80 transitions. Second operand has 14 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 12 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:55,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:55,073 INFO L93 Difference]: Finished difference Result 73 states and 91 transitions. [2022-04-15 10:24:55,073 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 10:24:55,073 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 12 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-15 10:24:55,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:24:55,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 12 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:55,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-15 10:24:55,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 12 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:55,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-15 10:24:55,075 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 44 transitions. [2022-04-15 10:24:55,134 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:55,135 INFO L225 Difference]: With dead ends: 73 [2022-04-15 10:24:55,135 INFO L226 Difference]: Without dead ends: 71 [2022-04-15 10:24:55,135 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 48 SyntacticMatches, 4 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 149 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=92, Invalid=328, Unknown=0, NotChecked=0, Total=420 [2022-04-15 10:24:55,136 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 15 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 160 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 160 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 10:24:55,136 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 122 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 160 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 10:24:55,136 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-15 10:24:55,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 66. [2022-04-15 10:24:55,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:24:55,213 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:55,213 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:55,213 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:55,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:55,215 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-15 10:24:55,215 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-15 10:24:55,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:55,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:55,215 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 71 states. [2022-04-15 10:24:55,215 INFO L87 Difference]: Start difference. First operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 71 states. [2022-04-15 10:24:55,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:55,217 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-15 10:24:55,217 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-15 10:24:55,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:55,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:55,217 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:24:55,217 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:24:55,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:55,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 83 transitions. [2022-04-15 10:24:55,219 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 83 transitions. Word has length 28 [2022-04-15 10:24:55,219 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:24:55,219 INFO L478 AbstractCegarLoop]: Abstraction has 66 states and 83 transitions. [2022-04-15 10:24:55,219 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 12 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:55,219 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 66 states and 83 transitions. [2022-04-15 10:24:57,403 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:57,403 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 83 transitions. [2022-04-15 10:24:57,404 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 10:24:57,404 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:24:57,404 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:24:57,419 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-15 10:24:57,604 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:57,604 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:24:57,605 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:24:57,605 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 1 times [2022-04-15 10:24:57,605 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:57,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [928686798] [2022-04-15 10:25:03,663 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 10:25:03,663 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-15 10:25:03,664 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 10:25:03,664 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 2 times [2022-04-15 10:25:03,664 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:25:03,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1432530106] [2022-04-15 10:25:03,664 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:25:03,664 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:25:03,672 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:25:03,672 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [25832811] [2022-04-15 10:25:03,672 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:25:03,672 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:25:03,673 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:25:03,673 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:25:03,692 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-15 10:25:03,724 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:25:03,724 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:25:03,725 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-15 10:25:03,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:25:03,732 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:25:04,035 INFO L272 TraceCheckUtils]: 0: Hoare triple {3577#true} call ULTIMATE.init(); {3577#true} is VALID [2022-04-15 10:25:04,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {3577#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3577#true} is VALID [2022-04-15 10:25:04,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {3577#true} assume true; {3577#true} is VALID [2022-04-15 10:25:04,035 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3577#true} {3577#true} #77#return; {3577#true} is VALID [2022-04-15 10:25:04,035 INFO L272 TraceCheckUtils]: 4: Hoare triple {3577#true} call #t~ret7 := main(); {3577#true} is VALID [2022-04-15 10:25:04,035 INFO L290 TraceCheckUtils]: 5: Hoare triple {3577#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3577#true} is VALID [2022-04-15 10:25:04,035 INFO L272 TraceCheckUtils]: 6: Hoare triple {3577#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3577#true} is VALID [2022-04-15 10:25:04,036 INFO L290 TraceCheckUtils]: 7: Hoare triple {3577#true} ~cond := #in~cond; {3603#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:25:04,036 INFO L290 TraceCheckUtils]: 8: Hoare triple {3603#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3607#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:04,036 INFO L290 TraceCheckUtils]: 9: Hoare triple {3607#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3607#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:04,037 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3607#(not (= |assume_abort_if_not_#in~cond| 0))} {3577#true} #69#return; {3614#(<= 1 main_~y~0)} is VALID [2022-04-15 10:25:04,037 INFO L290 TraceCheckUtils]: 11: Hoare triple {3614#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3618#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:04,037 INFO L290 TraceCheckUtils]: 12: Hoare triple {3618#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3618#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:04,038 INFO L290 TraceCheckUtils]: 13: Hoare triple {3618#(<= 1 main_~b~0)} assume !!(#t~post6 < 2);havoc #t~post6; {3618#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:04,038 INFO L272 TraceCheckUtils]: 14: Hoare triple {3618#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3577#true} is VALID [2022-04-15 10:25:04,038 INFO L290 TraceCheckUtils]: 15: Hoare triple {3577#true} ~cond := #in~cond; {3577#true} is VALID [2022-04-15 10:25:04,038 INFO L290 TraceCheckUtils]: 16: Hoare triple {3577#true} assume !(0 == ~cond); {3577#true} is VALID [2022-04-15 10:25:04,038 INFO L290 TraceCheckUtils]: 17: Hoare triple {3577#true} assume true; {3577#true} is VALID [2022-04-15 10:25:04,039 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3577#true} {3618#(<= 1 main_~b~0)} #71#return; {3618#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:04,039 INFO L290 TraceCheckUtils]: 19: Hoare triple {3618#(<= 1 main_~b~0)} assume !!(0 != ~a~0 && 0 != ~b~0); {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:04,040 INFO L290 TraceCheckUtils]: 20: Hoare triple {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:04,040 INFO L290 TraceCheckUtils]: 21: Hoare triple {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:04,041 INFO L290 TraceCheckUtils]: 22: Hoare triple {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !!(#t~post6 < 2);havoc #t~post6; {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:04,041 INFO L272 TraceCheckUtils]: 23: Hoare triple {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3577#true} is VALID [2022-04-15 10:25:04,041 INFO L290 TraceCheckUtils]: 24: Hoare triple {3577#true} ~cond := #in~cond; {3577#true} is VALID [2022-04-15 10:25:04,041 INFO L290 TraceCheckUtils]: 25: Hoare triple {3577#true} assume !(0 == ~cond); {3577#true} is VALID [2022-04-15 10:25:04,041 INFO L290 TraceCheckUtils]: 26: Hoare triple {3577#true} assume true; {3577#true} is VALID [2022-04-15 10:25:04,041 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {3577#true} {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #71#return; {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:04,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {3643#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !(0 != ~a~0 && 0 != ~b~0); {3578#false} is VALID [2022-04-15 10:25:04,042 INFO L272 TraceCheckUtils]: 29: Hoare triple {3578#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3578#false} is VALID [2022-04-15 10:25:04,042 INFO L290 TraceCheckUtils]: 30: Hoare triple {3578#false} ~cond := #in~cond; {3578#false} is VALID [2022-04-15 10:25:04,042 INFO L290 TraceCheckUtils]: 31: Hoare triple {3578#false} assume 0 == ~cond; {3578#false} is VALID [2022-04-15 10:25:04,042 INFO L290 TraceCheckUtils]: 32: Hoare triple {3578#false} assume !false; {3578#false} is VALID [2022-04-15 10:25:04,042 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 10:25:04,042 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:25:04,042 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:25:04,042 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1432530106] [2022-04-15 10:25:04,042 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:25:04,042 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [25832811] [2022-04-15 10:25:04,042 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [25832811] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:25:04,042 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:25:04,042 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 10:25:04,043 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:25:04,043 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [928686798] [2022-04-15 10:25:04,043 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [928686798] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:25:04,043 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:25:04,043 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 10:25:04,043 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1400474930] [2022-04-15 10:25:04,043 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:25:04,043 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 33 [2022-04-15 10:25:04,043 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:25:04,043 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:04,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:25:04,062 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 10:25:04,062 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:25:04,062 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 10:25:04,062 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-15 10:25:04,062 INFO L87 Difference]: Start difference. First operand 66 states and 83 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:04,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:25:04,365 INFO L93 Difference]: Finished difference Result 82 states and 104 transitions. [2022-04-15 10:25:04,365 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 10:25:04,365 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 33 [2022-04-15 10:25:04,365 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:25:04,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:04,366 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-15 10:25:04,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:04,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-15 10:25:04,367 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-15 10:25:04,415 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:25:04,417 INFO L225 Difference]: With dead ends: 82 [2022-04-15 10:25:04,417 INFO L226 Difference]: Without dead ends: 75 [2022-04-15 10:25:04,417 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 26 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-15 10:25:04,417 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 30 mSDsluCounter, 79 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 85 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 10:25:04,417 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 109 Invalid, 85 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 10:25:04,418 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-04-15 10:25:04,501 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 70. [2022-04-15 10:25:04,501 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:25:04,502 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:04,502 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:04,502 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:04,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:25:04,504 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-15 10:25:04,504 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-15 10:25:04,505 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:25:04,505 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:25:04,505 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 75 states. [2022-04-15 10:25:04,505 INFO L87 Difference]: Start difference. First operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 75 states. [2022-04-15 10:25:04,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:25:04,506 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-15 10:25:04,506 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-15 10:25:04,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:25:04,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:25:04,507 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:25:04,507 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:25:04,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:04,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 89 transitions. [2022-04-15 10:25:04,508 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 89 transitions. Word has length 33 [2022-04-15 10:25:04,508 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:25:04,508 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 89 transitions. [2022-04-15 10:25:04,508 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:04,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 89 transitions. [2022-04-15 10:25:06,705 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 88 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:25:06,705 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 89 transitions. [2022-04-15 10:25:06,706 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-15 10:25:06,706 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:25:06,706 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:25:06,722 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-15 10:25:06,919 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-15 10:25:06,919 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:25:06,919 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:25:06,920 INFO L85 PathProgramCache]: Analyzing trace with hash 368374993, now seen corresponding path program 1 times [2022-04-15 10:25:06,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:25:06,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1030768272] [2022-04-15 10:25:13,051 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:13,099 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:14,845 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:19,022 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:19,071 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:19,115 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:19,115 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 10:25:19,117 INFO L85 PathProgramCache]: Analyzing trace with hash -1745517901, now seen corresponding path program 1 times [2022-04-15 10:25:19,117 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:25:19,117 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1665395039] [2022-04-15 10:25:19,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:25:19,117 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:25:19,128 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:25:19,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1063533924] [2022-04-15 10:25:19,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:25:19,128 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:25:19,129 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:25:19,129 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 10:25:19,130 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-15 10:25:19,170 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:25:19,171 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 10:25:19,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:25:19,187 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:25:29,357 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 10:25:29,502 INFO L272 TraceCheckUtils]: 0: Hoare triple {4142#true} call ULTIMATE.init(); {4142#true} is VALID [2022-04-15 10:25:29,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {4142#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4142#true} is VALID [2022-04-15 10:25:29,503 INFO L290 TraceCheckUtils]: 2: Hoare triple {4142#true} assume true; {4142#true} is VALID [2022-04-15 10:25:29,503 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4142#true} {4142#true} #77#return; {4142#true} is VALID [2022-04-15 10:25:29,503 INFO L272 TraceCheckUtils]: 4: Hoare triple {4142#true} call #t~ret7 := main(); {4142#true} is VALID [2022-04-15 10:25:29,503 INFO L290 TraceCheckUtils]: 5: Hoare triple {4142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4142#true} is VALID [2022-04-15 10:25:29,503 INFO L272 TraceCheckUtils]: 6: Hoare triple {4142#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4142#true} is VALID [2022-04-15 10:25:29,504 INFO L290 TraceCheckUtils]: 7: Hoare triple {4142#true} ~cond := #in~cond; {4168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:25:29,505 INFO L290 TraceCheckUtils]: 8: Hoare triple {4168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:29,505 INFO L290 TraceCheckUtils]: 9: Hoare triple {4172#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:29,505 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4172#(not (= |assume_abort_if_not_#in~cond| 0))} {4142#true} #69#return; {4179#(<= 1 main_~y~0)} is VALID [2022-04-15 10:25:29,506 INFO L290 TraceCheckUtils]: 11: Hoare triple {4179#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,506 INFO L290 TraceCheckUtils]: 12: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [93] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= |v_main_#t~post6_54| |v_main_#t~post6_52|) (= v_main_~b~0_53 v_main_~b~0_52)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_54|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,506 INFO L290 TraceCheckUtils]: 13: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [94] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,507 INFO L290 TraceCheckUtils]: 14: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [95] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= |v_main_#t~post6_57| |v_main_#t~post6_52|)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_57|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,507 INFO L290 TraceCheckUtils]: 15: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [96] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,508 INFO L290 TraceCheckUtils]: 16: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [97] L46-2-->L33-1_primed: Formula: (let ((.cse5 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse1 (<= 0 v_main_~b~0_53)) (.cse4 (= 0 v_main_~a~0_82)) (.cse3 (< v_~counter~0_72 2)) (.cse0 (= .cse5 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse2 (= (mod v_main_~a~0_82 2) 0)) (.cse6 (= v_~counter~0_72 v_~counter~0_71)) (.cse7 (= |v_main_#t~post6_60| |v_main_#t~post6_52|)) (.cse8 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse9 (= v_main_~b~0_53 v_main_~b~0_52))) (or (and (= (+ v_~counter~0_72 v_main_~b~0_53) (+ v_~counter~0_71 v_main_~b~0_52)) .cse0 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse2 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse4) (= .cse5 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52)))) (and (or (not .cse1) .cse4 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse0) (not .cse2)) .cse6 .cse7 .cse8 .cse9) (and (= v_main_~x~0_34 v_main_~x~0_34) .cse6 .cse7 .cse8 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse9)))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_60|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_52|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,508 INFO L290 TraceCheckUtils]: 17: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [98] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,509 INFO L290 TraceCheckUtils]: 18: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [99] L46-2-->L33-1_primed: Formula: (let ((.cse5 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse1 (<= 0 v_main_~b~0_53)) (.cse4 (= 0 v_main_~a~0_82)) (.cse3 (< v_~counter~0_72 2)) (.cse0 (= .cse5 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse2 (= (mod v_main_~a~0_82 2) 0)) (.cse6 (= v_~counter~0_72 v_~counter~0_71)) (.cse7 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse8 (= v_main_~b~0_53 v_main_~b~0_52)) (.cse9 (= |v_main_#t~post6_63| |v_main_#t~post6_52|))) (or (and (= (+ v_~counter~0_72 v_main_~b~0_53) (+ v_~counter~0_71 v_main_~b~0_52)) .cse0 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse2 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse4) (= .cse5 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52)))) (and (= v_main_~x~0_34 v_main_~x~0_34) .cse6 .cse7 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse8 .cse9) (and (or (not .cse1) .cse4 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse0) (not .cse2)) .cse6 .cse7 .cse8 .cse9)))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_63|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_52|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,509 INFO L290 TraceCheckUtils]: 19: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [100] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,509 INFO L290 TraceCheckUtils]: 20: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [101] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= |v_main_#t~post6_66| |v_main_#t~post6_52|)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_66|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,510 INFO L290 TraceCheckUtils]: 21: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [102] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,510 INFO L290 TraceCheckUtils]: 22: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [103] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_69| |v_main_#t~post6_52|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_69|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,510 INFO L290 TraceCheckUtils]: 23: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} [92] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,511 INFO L290 TraceCheckUtils]: 24: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 2);havoc #t~post6; {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:29,511 INFO L272 TraceCheckUtils]: 25: Hoare triple {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4142#true} is VALID [2022-04-15 10:25:29,511 INFO L290 TraceCheckUtils]: 26: Hoare triple {4142#true} ~cond := #in~cond; {4229#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:25:29,511 INFO L290 TraceCheckUtils]: 27: Hoare triple {4229#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:25:29,512 INFO L290 TraceCheckUtils]: 28: Hoare triple {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:25:31,514 WARN L284 TraceCheckUtils]: 29: Hoare quadruple {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} {4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0))} #71#return; {4240#(and (or (and (= main_~a~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= main_~b~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (<= 1 (div (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0))) (not (= main_~b~0 0)) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} is UNKNOWN [2022-04-15 10:25:31,515 INFO L290 TraceCheckUtils]: 30: Hoare triple {4240#(and (or (and (= main_~a~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= main_~b~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (<= 1 (div (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0))) (not (= main_~b~0 0)) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {4244#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:31,515 INFO L272 TraceCheckUtils]: 31: Hoare triple {4244#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4248#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:25:31,516 INFO L290 TraceCheckUtils]: 32: Hoare triple {4248#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4252#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:25:31,516 INFO L290 TraceCheckUtils]: 33: Hoare triple {4252#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4143#false} is VALID [2022-04-15 10:25:31,516 INFO L290 TraceCheckUtils]: 34: Hoare triple {4143#false} assume !false; {4143#false} is VALID [2022-04-15 10:25:31,516 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-15 10:25:31,516 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:26:29,481 INFO L290 TraceCheckUtils]: 34: Hoare triple {4143#false} assume !false; {4143#false} is VALID [2022-04-15 10:26:29,487 INFO L290 TraceCheckUtils]: 33: Hoare triple {4252#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4143#false} is VALID [2022-04-15 10:26:29,487 INFO L290 TraceCheckUtils]: 32: Hoare triple {4248#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4252#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:26:29,488 INFO L272 TraceCheckUtils]: 31: Hoare triple {4268#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4248#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:26:29,488 INFO L290 TraceCheckUtils]: 30: Hoare triple {4272#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {4268#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:26:29,490 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} {4142#true} #71#return; {4272#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-15 10:26:29,490 INFO L290 TraceCheckUtils]: 28: Hoare triple {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:26:29,490 INFO L290 TraceCheckUtils]: 27: Hoare triple {4285#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4233#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 26: Hoare triple {4142#true} ~cond := #in~cond; {4285#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 10:26:29,491 INFO L272 TraceCheckUtils]: 25: Hoare triple {4142#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 24: Hoare triple {4142#true} assume !!(#t~post6 < 2);havoc #t~post6; {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 23: Hoare triple {4142#true} [92] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 22: Hoare triple {4142#true} [103] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_69| |v_main_#t~post6_52|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_69|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 21: Hoare triple {4142#true} [102] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 20: Hoare triple {4142#true} [101] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= |v_main_#t~post6_66| |v_main_#t~post6_52|)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_66|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 19: Hoare triple {4142#true} [100] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 18: Hoare triple {4142#true} [99] L46-2-->L33-1_primed: Formula: (let ((.cse5 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse1 (<= 0 v_main_~b~0_53)) (.cse4 (= 0 v_main_~a~0_82)) (.cse3 (< v_~counter~0_72 2)) (.cse0 (= .cse5 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse2 (= (mod v_main_~a~0_82 2) 0)) (.cse6 (= v_~counter~0_72 v_~counter~0_71)) (.cse7 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse8 (= v_main_~b~0_53 v_main_~b~0_52)) (.cse9 (= |v_main_#t~post6_63| |v_main_#t~post6_52|))) (or (and (= (+ v_~counter~0_72 v_main_~b~0_53) (+ v_~counter~0_71 v_main_~b~0_52)) .cse0 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse2 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse4) (= .cse5 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52)))) (and (= v_main_~x~0_34 v_main_~x~0_34) .cse6 .cse7 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse8 .cse9) (and (or (not .cse1) .cse4 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse0) (not .cse2)) .cse6 .cse7 .cse8 .cse9)))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_63|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_52|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 17: Hoare triple {4142#true} [98] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4142#true} is VALID [2022-04-15 10:26:29,491 INFO L290 TraceCheckUtils]: 16: Hoare triple {4142#true} [97] L46-2-->L33-1_primed: Formula: (let ((.cse5 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse1 (<= 0 v_main_~b~0_53)) (.cse4 (= 0 v_main_~a~0_82)) (.cse3 (< v_~counter~0_72 2)) (.cse0 (= .cse5 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse2 (= (mod v_main_~a~0_82 2) 0)) (.cse6 (= v_~counter~0_72 v_~counter~0_71)) (.cse7 (= |v_main_#t~post6_60| |v_main_#t~post6_52|)) (.cse8 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse9 (= v_main_~b~0_53 v_main_~b~0_52))) (or (and (= (+ v_~counter~0_72 v_main_~b~0_53) (+ v_~counter~0_71 v_main_~b~0_52)) .cse0 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse2 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse4) (= .cse5 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52)))) (and (or (not .cse1) .cse4 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse0) (not .cse2)) .cse6 .cse7 .cse8 .cse9) (and (= v_main_~x~0_34 v_main_~x~0_34) .cse6 .cse7 .cse8 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse9)))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_60|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_52|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 15: Hoare triple {4142#true} [96] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 14: Hoare triple {4142#true} [95] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= |v_main_#t~post6_57| |v_main_#t~post6_52|)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_57|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 13: Hoare triple {4142#true} [94] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 12: Hoare triple {4142#true} [93] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= v_main_~q~0_71 v_main_~q~0_70) (= |v_main_#t~post6_54| |v_main_#t~post6_52|) (= v_main_~b~0_53 v_main_~b~0_52)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_54|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_52|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 11: Hoare triple {4142#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4142#true} {4142#true} #69#return; {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 9: Hoare triple {4142#true} assume true; {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 8: Hoare triple {4142#true} assume !(0 == ~cond); {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 7: Hoare triple {4142#true} ~cond := #in~cond; {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L272 TraceCheckUtils]: 6: Hoare triple {4142#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 5: Hoare triple {4142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L272 TraceCheckUtils]: 4: Hoare triple {4142#true} call #t~ret7 := main(); {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4142#true} {4142#true} #77#return; {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 2: Hoare triple {4142#true} assume true; {4142#true} is VALID [2022-04-15 10:26:29,492 INFO L290 TraceCheckUtils]: 1: Hoare triple {4142#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4142#true} is VALID [2022-04-15 10:26:29,493 INFO L272 TraceCheckUtils]: 0: Hoare triple {4142#true} call ULTIMATE.init(); {4142#true} is VALID [2022-04-15 10:26:29,493 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-15 10:26:29,493 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:26:29,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1665395039] [2022-04-15 10:26:29,493 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:26:29,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1063533924] [2022-04-15 10:26:29,493 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1063533924] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:26:29,493 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:26:29,493 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-15 10:26:33,876 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:26:33,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1030768272] [2022-04-15 10:26:33,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1030768272] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:26:33,877 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:26:33,877 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-15 10:26:33,877 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1364413798] [2022-04-15 10:26:33,877 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:26:33,877 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 20 states have (on average 1.25) internal successors, (25), 17 states have internal predecessors, (25), 4 states have call successors, (6), 3 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 35 [2022-04-15 10:26:33,877 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:26:33,878 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 20 states have (on average 1.25) internal successors, (25), 17 states have internal predecessors, (25), 4 states have call successors, (6), 3 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:26:35,909 WARN L143 InductivityCheck]: Transition 4373#(and (= (mod (+ main_~b~0 1) 2) 1) (= (mod main_~a~0 2) 0) (<= 0 (+ main_~b~0 1)) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (not (= main_~a~0 0)) (< ~counter~0 3)) ( _ , #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; , 4183#(and (<= 1 main_~p~0) (<= 1 main_~y~0)) ) not inductive [2022-04-15 10:26:35,925 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-15 10:26:36,119 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-15 10:26:36,120 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: inductivity failed at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:145) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.checkInductivity(InductivityCheck.java:103) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.(InductivityCheck.java:75) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.constructInterpolantAutomaton(BasicCegarLoop.java:682) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.constructRefinementAutomaton(AbstractCegarLoop.java:547) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:420) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:349) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:331) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopUtils.getCegarLoopResult(CegarLoopUtils.java:56) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:411) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:301) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:261) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:153) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-04-15 10:26:36,122 INFO L158 Benchmark]: Toolchain (without parser) took 278182.71ms. Allocated memory was 167.8MB in the beginning and 201.3MB in the end (delta: 33.6MB). Free memory was 116.8MB in the beginning and 85.6MB in the end (delta: 31.2MB). Peak memory consumption was 64.9MB. Max. memory is 8.0GB. [2022-04-15 10:26:36,122 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 167.8MB. Free memory was 133.3MB in the beginning and 133.2MB in the end (delta: 75.0kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 10:26:36,122 INFO L158 Benchmark]: CACSL2BoogieTranslator took 180.80ms. Allocated memory was 167.8MB in the beginning and 201.3MB in the end (delta: 33.6MB). Free memory was 116.6MB in the beginning and 177.4MB in the end (delta: -60.8MB). Peak memory consumption was 12.8MB. Max. memory is 8.0GB. [2022-04-15 10:26:36,122 INFO L158 Benchmark]: Boogie Preprocessor took 18.74ms. Allocated memory is still 201.3MB. Free memory was 177.4MB in the beginning and 175.9MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-15 10:26:36,122 INFO L158 Benchmark]: RCFGBuilder took 299.54ms. Allocated memory is still 201.3MB. Free memory was 175.9MB in the beginning and 162.2MB in the end (delta: 13.6MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-15 10:26:36,122 INFO L158 Benchmark]: TraceAbstraction took 277679.67ms. Allocated memory is still 201.3MB. Free memory was 161.8MB in the beginning and 85.6MB in the end (delta: 76.2MB). Peak memory consumption was 77.1MB. Max. memory is 8.0GB. [2022-04-15 10:26:36,123 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 167.8MB. Free memory was 133.3MB in the beginning and 133.2MB in the end (delta: 75.0kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 180.80ms. Allocated memory was 167.8MB in the beginning and 201.3MB in the end (delta: 33.6MB). Free memory was 116.6MB in the beginning and 177.4MB in the end (delta: -60.8MB). Peak memory consumption was 12.8MB. Max. memory is 8.0GB. * Boogie Preprocessor took 18.74ms. Allocated memory is still 201.3MB. Free memory was 177.4MB in the beginning and 175.9MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 299.54ms. Allocated memory is still 201.3MB. Free memory was 175.9MB in the beginning and 162.2MB in the end (delta: 13.6MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * TraceAbstraction took 277679.67ms. Allocated memory is still 201.3MB. Free memory was 161.8MB in the beginning and 85.6MB in the end (delta: 76.2MB). Peak memory consumption was 77.1MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: inductivity failed de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: inductivity failed: de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:145) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-04-15 10:26:36,166 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...