java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerCInline_WitnessPrinter.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/array-tiling/mbpr5_true-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:19:06,321 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:19:06,323 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:19:06,340 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:19:06,340 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:19:06,342 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:19:06,343 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:19:06,346 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:19:06,349 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:19:06,350 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:19:06,358 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:19:06,358 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:19:06,361 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:19:06,362 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:19:06,366 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:19:06,367 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:19:06,370 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:19:06,372 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:19:06,376 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:19:06,379 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:19:06,381 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:19:06,383 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:19:06,385 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:19:06,389 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:19:06,389 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:19:06,390 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:19:06,392 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:19:06,393 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:19:06,398 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:19:06,399 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:19:06,400 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:19:06,401 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:19:06,401 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:19:06,401 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:19:06,404 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:19:06,406 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:19:06,406 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-23 12:19:06,428 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:19:06,428 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:19:06,429 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:19:06,429 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:19:06,430 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:19:06,430 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:19:06,430 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:19:06,431 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:19:06,431 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:19:06,431 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:19:06,431 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:19:06,431 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:19:06,432 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:19:06,432 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:19:06,432 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:19:06,432 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:19:06,432 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:19:06,433 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:19:06,433 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:19:06,433 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:19:06,433 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:19:06,433 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:19:06,435 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:19:06,435 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:19:06,436 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:19:06,436 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:19:06,436 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:19:06,436 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:19:06,436 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:19:06,436 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:19:06,437 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:19:06,503 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:19:06,516 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:19:06,520 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:19:06,522 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:19:06,522 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:19:06,523 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-tiling/mbpr5_true-unreach-call.i [2018-11-23 12:19:06,584 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d3d327ad3/96f87c4446964f0b9c138020de46d909/FLAG27038419e [2018-11-23 12:19:06,993 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:19:06,993 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-tiling/mbpr5_true-unreach-call.i [2018-11-23 12:19:07,002 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d3d327ad3/96f87c4446964f0b9c138020de46d909/FLAG27038419e [2018-11-23 12:19:07,364 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d3d327ad3/96f87c4446964f0b9c138020de46d909 [2018-11-23 12:19:07,373 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:19:07,375 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:19:07,376 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:19:07,376 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:19:07,380 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:19:07,384 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:07,388 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3fef57ff and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07, skipping insertion in model container [2018-11-23 12:19:07,388 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:07,399 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:19:07,445 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:19:07,775 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:19:07,780 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:19:07,838 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:19:07,866 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:19:07,867 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07 WrapperNode [2018-11-23 12:19:07,867 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:19:07,868 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:19:07,868 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:19:07,869 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:19:07,878 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:07,893 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:07,902 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:19:07,902 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:19:07,902 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:19:07,903 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:19:07,914 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:07,915 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:07,919 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:07,920 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:08,031 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:08,040 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:08,043 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... [2018-11-23 12:19:08,046 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:19:08,047 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:19:08,047 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:19:08,047 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:19:08,048 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:19:08,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 12:19:08,115 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:19:08,115 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:19:08,115 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:19:08,115 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:19:08,115 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:19:08,115 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:19:08,116 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:19:08,116 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:19:08,116 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 12:19:08,116 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 12:19:08,116 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:19:09,407 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:19:09,408 INFO L280 CfgBuilder]: Removed 6 assue(true) statements. [2018-11-23 12:19:09,408 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:19:09 BoogieIcfgContainer [2018-11-23 12:19:09,409 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:19:09,410 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:19:09,410 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:19:09,413 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:19:09,413 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:19:07" (1/3) ... [2018-11-23 12:19:09,414 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20d3bcd0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:19:09, skipping insertion in model container [2018-11-23 12:19:09,415 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:19:07" (2/3) ... [2018-11-23 12:19:09,415 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20d3bcd0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:19:09, skipping insertion in model container [2018-11-23 12:19:09,415 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:19:09" (3/3) ... [2018-11-23 12:19:09,417 INFO L112 eAbstractionObserver]: Analyzing ICFG mbpr5_true-unreach-call.i [2018-11-23 12:19:09,427 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:19:09,434 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:19:09,452 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:19:09,486 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:19:09,487 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:19:09,487 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:19:09,487 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:19:09,487 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:19:09,488 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:19:09,488 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:19:09,488 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:19:09,488 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:19:09,507 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states. [2018-11-23 12:19:09,514 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 12:19:09,514 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:09,515 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:09,517 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:09,523 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:09,524 INFO L82 PathProgramCache]: Analyzing trace with hash 1208064678, now seen corresponding path program 1 times [2018-11-23 12:19:09,525 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:09,526 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:09,575 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:09,575 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:09,575 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:09,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:09,740 INFO L256 TraceCheckUtils]: 0: Hoare triple {53#true} call ULTIMATE.init(); {53#true} is VALID [2018-11-23 12:19:09,745 INFO L273 TraceCheckUtils]: 1: Hoare triple {53#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {53#true} is VALID [2018-11-23 12:19:09,746 INFO L273 TraceCheckUtils]: 2: Hoare triple {53#true} assume true; {53#true} is VALID [2018-11-23 12:19:09,747 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {53#true} {53#true} #157#return; {53#true} is VALID [2018-11-23 12:19:09,747 INFO L256 TraceCheckUtils]: 4: Hoare triple {53#true} call #t~ret31 := main(); {53#true} is VALID [2018-11-23 12:19:09,748 INFO L273 TraceCheckUtils]: 5: Hoare triple {53#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {53#true} is VALID [2018-11-23 12:19:09,748 INFO L273 TraceCheckUtils]: 6: Hoare triple {53#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {53#true} is VALID [2018-11-23 12:19:09,748 INFO L273 TraceCheckUtils]: 7: Hoare triple {53#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {53#true} is VALID [2018-11-23 12:19:09,749 INFO L273 TraceCheckUtils]: 8: Hoare triple {53#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {53#true} is VALID [2018-11-23 12:19:09,749 INFO L273 TraceCheckUtils]: 9: Hoare triple {53#true} ~i~0 := 1; {53#true} is VALID [2018-11-23 12:19:09,762 INFO L273 TraceCheckUtils]: 10: Hoare triple {53#true} assume !true; {54#false} is VALID [2018-11-23 12:19:09,763 INFO L273 TraceCheckUtils]: 11: Hoare triple {54#false} ~i~0 := 1; {54#false} is VALID [2018-11-23 12:19:09,763 INFO L273 TraceCheckUtils]: 12: Hoare triple {54#false} assume !true; {54#false} is VALID [2018-11-23 12:19:09,764 INFO L273 TraceCheckUtils]: 13: Hoare triple {54#false} ~i~0 := 1; {54#false} is VALID [2018-11-23 12:19:09,764 INFO L273 TraceCheckUtils]: 14: Hoare triple {54#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {54#false} is VALID [2018-11-23 12:19:09,764 INFO L273 TraceCheckUtils]: 15: Hoare triple {54#false} ~i~0 := 1; {54#false} is VALID [2018-11-23 12:19:09,765 INFO L273 TraceCheckUtils]: 16: Hoare triple {54#false} assume !true; {54#false} is VALID [2018-11-23 12:19:09,765 INFO L273 TraceCheckUtils]: 17: Hoare triple {54#false} ~i~0 := 0; {54#false} is VALID [2018-11-23 12:19:09,766 INFO L273 TraceCheckUtils]: 18: Hoare triple {54#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {54#false} is VALID [2018-11-23 12:19:09,766 INFO L273 TraceCheckUtils]: 19: Hoare triple {54#false} assume #t~short30; {54#false} is VALID [2018-11-23 12:19:09,766 INFO L256 TraceCheckUtils]: 20: Hoare triple {54#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {54#false} is VALID [2018-11-23 12:19:09,767 INFO L273 TraceCheckUtils]: 21: Hoare triple {54#false} ~cond := #in~cond; {54#false} is VALID [2018-11-23 12:19:09,767 INFO L273 TraceCheckUtils]: 22: Hoare triple {54#false} assume 0 == ~cond; {54#false} is VALID [2018-11-23 12:19:09,767 INFO L273 TraceCheckUtils]: 23: Hoare triple {54#false} assume !false; {54#false} is VALID [2018-11-23 12:19:09,772 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:19:09,775 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:19:09,775 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 12:19:09,781 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 24 [2018-11-23 12:19:09,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:09,789 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 12:19:10,028 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:10,028 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 12:19:10,038 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 12:19:10,039 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:19:10,041 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 2 states. [2018-11-23 12:19:10,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:10,422 INFO L93 Difference]: Finished difference Result 88 states and 124 transitions. [2018-11-23 12:19:10,422 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 12:19:10,423 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 24 [2018-11-23 12:19:10,423 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:10,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:19:10,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 124 transitions. [2018-11-23 12:19:10,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:19:10,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 124 transitions. [2018-11-23 12:19:10,462 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 124 transitions. [2018-11-23 12:19:11,159 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:11,187 INFO L225 Difference]: With dead ends: 88 [2018-11-23 12:19:11,188 INFO L226 Difference]: Without dead ends: 44 [2018-11-23 12:19:11,195 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:19:11,214 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2018-11-23 12:19:11,243 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2018-11-23 12:19:11,243 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:11,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand 44 states. [2018-11-23 12:19:11,244 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 44 states. [2018-11-23 12:19:11,245 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 44 states. [2018-11-23 12:19:11,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:11,250 INFO L93 Difference]: Finished difference Result 44 states and 55 transitions. [2018-11-23 12:19:11,250 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 55 transitions. [2018-11-23 12:19:11,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:11,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:11,252 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 44 states. [2018-11-23 12:19:11,252 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 44 states. [2018-11-23 12:19:11,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:11,257 INFO L93 Difference]: Finished difference Result 44 states and 55 transitions. [2018-11-23 12:19:11,258 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 55 transitions. [2018-11-23 12:19:11,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:11,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:11,259 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:11,259 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:11,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2018-11-23 12:19:11,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 55 transitions. [2018-11-23 12:19:11,265 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 55 transitions. Word has length 24 [2018-11-23 12:19:11,265 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:11,266 INFO L480 AbstractCegarLoop]: Abstraction has 44 states and 55 transitions. [2018-11-23 12:19:11,266 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 12:19:11,266 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 55 transitions. [2018-11-23 12:19:11,267 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 12:19:11,267 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:11,267 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:11,268 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:11,268 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:11,268 INFO L82 PathProgramCache]: Analyzing trace with hash 625586285, now seen corresponding path program 1 times [2018-11-23 12:19:11,269 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:11,269 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:11,270 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:11,270 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:11,270 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:11,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:11,480 INFO L256 TraceCheckUtils]: 0: Hoare triple {308#true} call ULTIMATE.init(); {308#true} is VALID [2018-11-23 12:19:11,480 INFO L273 TraceCheckUtils]: 1: Hoare triple {308#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {308#true} is VALID [2018-11-23 12:19:11,481 INFO L273 TraceCheckUtils]: 2: Hoare triple {308#true} assume true; {308#true} is VALID [2018-11-23 12:19:11,481 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {308#true} {308#true} #157#return; {308#true} is VALID [2018-11-23 12:19:11,482 INFO L256 TraceCheckUtils]: 4: Hoare triple {308#true} call #t~ret31 := main(); {308#true} is VALID [2018-11-23 12:19:11,482 INFO L273 TraceCheckUtils]: 5: Hoare triple {308#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {308#true} is VALID [2018-11-23 12:19:11,483 INFO L273 TraceCheckUtils]: 6: Hoare triple {308#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {308#true} is VALID [2018-11-23 12:19:11,483 INFO L273 TraceCheckUtils]: 7: Hoare triple {308#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {308#true} is VALID [2018-11-23 12:19:11,483 INFO L273 TraceCheckUtils]: 8: Hoare triple {308#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {308#true} is VALID [2018-11-23 12:19:11,484 INFO L273 TraceCheckUtils]: 9: Hoare triple {308#true} ~i~0 := 1; {308#true} is VALID [2018-11-23 12:19:11,484 INFO L273 TraceCheckUtils]: 10: Hoare triple {308#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {308#true} is VALID [2018-11-23 12:19:11,485 INFO L273 TraceCheckUtils]: 11: Hoare triple {308#true} ~i~0 := 1; {308#true} is VALID [2018-11-23 12:19:11,485 INFO L273 TraceCheckUtils]: 12: Hoare triple {308#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {308#true} is VALID [2018-11-23 12:19:11,485 INFO L273 TraceCheckUtils]: 13: Hoare triple {308#true} ~i~0 := 1; {308#true} is VALID [2018-11-23 12:19:11,486 INFO L273 TraceCheckUtils]: 14: Hoare triple {308#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {308#true} is VALID [2018-11-23 12:19:11,486 INFO L273 TraceCheckUtils]: 15: Hoare triple {308#true} ~i~0 := 1; {308#true} is VALID [2018-11-23 12:19:11,486 INFO L273 TraceCheckUtils]: 16: Hoare triple {308#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {308#true} is VALID [2018-11-23 12:19:11,492 INFO L273 TraceCheckUtils]: 17: Hoare triple {308#true} ~i~0 := 0; {308#true} is VALID [2018-11-23 12:19:11,492 INFO L273 TraceCheckUtils]: 18: Hoare triple {308#true} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {308#true} is VALID [2018-11-23 12:19:11,507 INFO L273 TraceCheckUtils]: 19: Hoare triple {308#true} assume #t~short30; {310#|main_#t~short30|} is VALID [2018-11-23 12:19:11,511 INFO L256 TraceCheckUtils]: 20: Hoare triple {310#|main_#t~short30|} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {311#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2018-11-23 12:19:11,512 INFO L273 TraceCheckUtils]: 21: Hoare triple {311#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {312#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2018-11-23 12:19:11,512 INFO L273 TraceCheckUtils]: 22: Hoare triple {312#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {309#false} is VALID [2018-11-23 12:19:11,513 INFO L273 TraceCheckUtils]: 23: Hoare triple {309#false} assume !false; {309#false} is VALID [2018-11-23 12:19:11,514 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:19:11,515 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:19:11,515 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 12:19:11,517 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 24 [2018-11-23 12:19:11,518 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:11,518 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:19:11,627 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:11,627 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:19:11,627 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:19:11,627 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:19:11,628 INFO L87 Difference]: Start difference. First operand 44 states and 55 transitions. Second operand 5 states. [2018-11-23 12:19:12,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:12,049 INFO L93 Difference]: Finished difference Result 52 states and 63 transitions. [2018-11-23 12:19:12,049 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:19:12,049 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 24 [2018-11-23 12:19:12,049 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:12,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:19:12,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 63 transitions. [2018-11-23 12:19:12,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:19:12,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 63 transitions. [2018-11-23 12:19:12,055 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 63 transitions. [2018-11-23 12:19:12,170 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:12,174 INFO L225 Difference]: With dead ends: 52 [2018-11-23 12:19:12,174 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 12:19:12,176 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:19:12,177 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 12:19:12,194 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 49. [2018-11-23 12:19:12,195 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:12,195 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand 49 states. [2018-11-23 12:19:12,195 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 49 states. [2018-11-23 12:19:12,195 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 49 states. [2018-11-23 12:19:12,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:12,200 INFO L93 Difference]: Finished difference Result 50 states and 61 transitions. [2018-11-23 12:19:12,200 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 61 transitions. [2018-11-23 12:19:12,201 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:12,201 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:12,201 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 50 states. [2018-11-23 12:19:12,202 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 50 states. [2018-11-23 12:19:12,205 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:12,206 INFO L93 Difference]: Finished difference Result 50 states and 61 transitions. [2018-11-23 12:19:12,206 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 61 transitions. [2018-11-23 12:19:12,207 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:12,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:12,207 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:12,208 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:12,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 49 states. [2018-11-23 12:19:12,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 60 transitions. [2018-11-23 12:19:12,211 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 60 transitions. Word has length 24 [2018-11-23 12:19:12,211 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:12,211 INFO L480 AbstractCegarLoop]: Abstraction has 49 states and 60 transitions. [2018-11-23 12:19:12,212 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:19:12,212 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 60 transitions. [2018-11-23 12:19:12,213 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 12:19:12,213 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:12,213 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:12,213 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:12,214 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:12,214 INFO L82 PathProgramCache]: Analyzing trace with hash 627433327, now seen corresponding path program 1 times [2018-11-23 12:19:12,214 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:12,214 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:12,215 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:12,215 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:12,216 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:12,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:12,442 INFO L256 TraceCheckUtils]: 0: Hoare triple {546#true} call ULTIMATE.init(); {546#true} is VALID [2018-11-23 12:19:12,443 INFO L273 TraceCheckUtils]: 1: Hoare triple {546#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {546#true} is VALID [2018-11-23 12:19:12,443 INFO L273 TraceCheckUtils]: 2: Hoare triple {546#true} assume true; {546#true} is VALID [2018-11-23 12:19:12,444 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {546#true} {546#true} #157#return; {546#true} is VALID [2018-11-23 12:19:12,444 INFO L256 TraceCheckUtils]: 4: Hoare triple {546#true} call #t~ret31 := main(); {546#true} is VALID [2018-11-23 12:19:12,445 INFO L273 TraceCheckUtils]: 5: Hoare triple {546#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {546#true} is VALID [2018-11-23 12:19:12,448 INFO L273 TraceCheckUtils]: 6: Hoare triple {546#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {548#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:19:12,450 INFO L273 TraceCheckUtils]: 7: Hoare triple {548#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {549#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:12,451 INFO L273 TraceCheckUtils]: 8: Hoare triple {549#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {547#false} is VALID [2018-11-23 12:19:12,451 INFO L273 TraceCheckUtils]: 9: Hoare triple {547#false} ~i~0 := 1; {547#false} is VALID [2018-11-23 12:19:12,451 INFO L273 TraceCheckUtils]: 10: Hoare triple {547#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {547#false} is VALID [2018-11-23 12:19:12,451 INFO L273 TraceCheckUtils]: 11: Hoare triple {547#false} ~i~0 := 1; {547#false} is VALID [2018-11-23 12:19:12,452 INFO L273 TraceCheckUtils]: 12: Hoare triple {547#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {547#false} is VALID [2018-11-23 12:19:12,452 INFO L273 TraceCheckUtils]: 13: Hoare triple {547#false} ~i~0 := 1; {547#false} is VALID [2018-11-23 12:19:12,452 INFO L273 TraceCheckUtils]: 14: Hoare triple {547#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {547#false} is VALID [2018-11-23 12:19:12,453 INFO L273 TraceCheckUtils]: 15: Hoare triple {547#false} ~i~0 := 1; {547#false} is VALID [2018-11-23 12:19:12,453 INFO L273 TraceCheckUtils]: 16: Hoare triple {547#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {547#false} is VALID [2018-11-23 12:19:12,454 INFO L273 TraceCheckUtils]: 17: Hoare triple {547#false} ~i~0 := 0; {547#false} is VALID [2018-11-23 12:19:12,454 INFO L273 TraceCheckUtils]: 18: Hoare triple {547#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {547#false} is VALID [2018-11-23 12:19:12,455 INFO L273 TraceCheckUtils]: 19: Hoare triple {547#false} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {547#false} is VALID [2018-11-23 12:19:12,455 INFO L256 TraceCheckUtils]: 20: Hoare triple {547#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {547#false} is VALID [2018-11-23 12:19:12,455 INFO L273 TraceCheckUtils]: 21: Hoare triple {547#false} ~cond := #in~cond; {547#false} is VALID [2018-11-23 12:19:12,456 INFO L273 TraceCheckUtils]: 22: Hoare triple {547#false} assume 0 == ~cond; {547#false} is VALID [2018-11-23 12:19:12,456 INFO L273 TraceCheckUtils]: 23: Hoare triple {547#false} assume !false; {547#false} is VALID [2018-11-23 12:19:12,457 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:19:12,457 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:19:12,458 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 12:19:12,458 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 24 [2018-11-23 12:19:12,458 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:12,459 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:19:12,509 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:12,509 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:19:12,509 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:19:12,509 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:19:12,510 INFO L87 Difference]: Start difference. First operand 49 states and 60 transitions. Second operand 4 states. [2018-11-23 12:19:12,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:12,931 INFO L93 Difference]: Finished difference Result 90 states and 112 transitions. [2018-11-23 12:19:12,931 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 12:19:12,931 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 24 [2018-11-23 12:19:12,932 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:12,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:19:12,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 102 transitions. [2018-11-23 12:19:12,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:19:12,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 102 transitions. [2018-11-23 12:19:12,939 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 102 transitions. [2018-11-23 12:19:13,125 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:13,129 INFO L225 Difference]: With dead ends: 90 [2018-11-23 12:19:13,130 INFO L226 Difference]: Without dead ends: 53 [2018-11-23 12:19:13,131 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 1 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:19:13,132 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2018-11-23 12:19:13,185 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 50. [2018-11-23 12:19:13,185 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:13,185 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand 50 states. [2018-11-23 12:19:13,186 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand 50 states. [2018-11-23 12:19:13,186 INFO L87 Difference]: Start difference. First operand 53 states. Second operand 50 states. [2018-11-23 12:19:13,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:13,190 INFO L93 Difference]: Finished difference Result 53 states and 65 transitions. [2018-11-23 12:19:13,190 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 65 transitions. [2018-11-23 12:19:13,191 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:13,191 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:13,191 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 53 states. [2018-11-23 12:19:13,192 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 53 states. [2018-11-23 12:19:13,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:13,195 INFO L93 Difference]: Finished difference Result 53 states and 65 transitions. [2018-11-23 12:19:13,195 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 65 transitions. [2018-11-23 12:19:13,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:13,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:13,196 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:13,197 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:13,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 12:19:13,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 61 transitions. [2018-11-23 12:19:13,200 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 61 transitions. Word has length 24 [2018-11-23 12:19:13,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:13,200 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 61 transitions. [2018-11-23 12:19:13,200 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:19:13,201 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 61 transitions. [2018-11-23 12:19:13,202 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2018-11-23 12:19:13,202 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:13,202 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:13,202 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:13,203 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:13,203 INFO L82 PathProgramCache]: Analyzing trace with hash 506953876, now seen corresponding path program 1 times [2018-11-23 12:19:13,203 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:13,203 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:13,204 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:13,205 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:13,205 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:13,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:13,455 INFO L256 TraceCheckUtils]: 0: Hoare triple {837#true} call ULTIMATE.init(); {837#true} is VALID [2018-11-23 12:19:13,456 INFO L273 TraceCheckUtils]: 1: Hoare triple {837#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {837#true} is VALID [2018-11-23 12:19:13,457 INFO L273 TraceCheckUtils]: 2: Hoare triple {837#true} assume true; {837#true} is VALID [2018-11-23 12:19:13,457 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {837#true} {837#true} #157#return; {837#true} is VALID [2018-11-23 12:19:13,458 INFO L256 TraceCheckUtils]: 4: Hoare triple {837#true} call #t~ret31 := main(); {837#true} is VALID [2018-11-23 12:19:13,458 INFO L273 TraceCheckUtils]: 5: Hoare triple {837#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {837#true} is VALID [2018-11-23 12:19:13,459 INFO L273 TraceCheckUtils]: 6: Hoare triple {837#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {839#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:19:13,460 INFO L273 TraceCheckUtils]: 7: Hoare triple {839#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:13,461 INFO L273 TraceCheckUtils]: 8: Hoare triple {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:13,462 INFO L273 TraceCheckUtils]: 9: Hoare triple {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:13,473 INFO L273 TraceCheckUtils]: 10: Hoare triple {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:13,474 INFO L273 TraceCheckUtils]: 11: Hoare triple {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:13,475 INFO L273 TraceCheckUtils]: 12: Hoare triple {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:13,475 INFO L273 TraceCheckUtils]: 13: Hoare triple {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} ~i~0 := 1; {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:13,476 INFO L273 TraceCheckUtils]: 14: Hoare triple {840#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {841#(<= 1 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:19:13,478 INFO L273 TraceCheckUtils]: 15: Hoare triple {841#(<= 1 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {841#(<= 1 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:19:13,479 INFO L273 TraceCheckUtils]: 16: Hoare triple {841#(<= 1 (div ~CELLCOUNT~0 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {841#(<= 1 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:19:13,479 INFO L273 TraceCheckUtils]: 17: Hoare triple {841#(<= 1 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {842#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1))} is VALID [2018-11-23 12:19:13,480 INFO L273 TraceCheckUtils]: 18: Hoare triple {842#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {838#false} is VALID [2018-11-23 12:19:13,480 INFO L273 TraceCheckUtils]: 19: Hoare triple {838#false} ~i~0 := 1; {838#false} is VALID [2018-11-23 12:19:13,481 INFO L273 TraceCheckUtils]: 20: Hoare triple {838#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {838#false} is VALID [2018-11-23 12:19:13,481 INFO L273 TraceCheckUtils]: 21: Hoare triple {838#false} ~i~0 := 0; {838#false} is VALID [2018-11-23 12:19:13,481 INFO L273 TraceCheckUtils]: 22: Hoare triple {838#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {838#false} is VALID [2018-11-23 12:19:13,481 INFO L273 TraceCheckUtils]: 23: Hoare triple {838#false} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {838#false} is VALID [2018-11-23 12:19:13,482 INFO L256 TraceCheckUtils]: 24: Hoare triple {838#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {838#false} is VALID [2018-11-23 12:19:13,482 INFO L273 TraceCheckUtils]: 25: Hoare triple {838#false} ~cond := #in~cond; {838#false} is VALID [2018-11-23 12:19:13,482 INFO L273 TraceCheckUtils]: 26: Hoare triple {838#false} assume 0 == ~cond; {838#false} is VALID [2018-11-23 12:19:13,482 INFO L273 TraceCheckUtils]: 27: Hoare triple {838#false} assume !false; {838#false} is VALID [2018-11-23 12:19:13,485 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 12:19:13,485 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:19:13,485 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2018-11-23 12:19:13,486 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 28 [2018-11-23 12:19:13,486 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:13,486 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:19:13,522 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:13,522 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:19:13,522 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:19:13,523 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:19:13,523 INFO L87 Difference]: Start difference. First operand 50 states and 61 transitions. Second operand 6 states. [2018-11-23 12:19:13,730 WARN L180 SmtUtils]: Spent 131.00 ms on a formula simplification. DAG size of input: 12 DAG size of output: 10 [2018-11-23 12:19:14,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:14,294 INFO L93 Difference]: Finished difference Result 101 states and 128 transitions. [2018-11-23 12:19:14,294 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:19:14,294 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 28 [2018-11-23 12:19:14,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:14,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:19:14,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 118 transitions. [2018-11-23 12:19:14,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:19:14,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 118 transitions. [2018-11-23 12:19:14,302 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 118 transitions. [2018-11-23 12:19:14,493 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:14,497 INFO L225 Difference]: With dead ends: 101 [2018-11-23 12:19:14,497 INFO L226 Difference]: Without dead ends: 69 [2018-11-23 12:19:14,498 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 2 SyntacticMatches, 1 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:19:14,498 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2018-11-23 12:19:14,742 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 54. [2018-11-23 12:19:14,742 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:14,743 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand 54 states. [2018-11-23 12:19:14,743 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 54 states. [2018-11-23 12:19:14,743 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 54 states. [2018-11-23 12:19:14,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:14,747 INFO L93 Difference]: Finished difference Result 69 states and 85 transitions. [2018-11-23 12:19:14,747 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 85 transitions. [2018-11-23 12:19:14,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:14,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:14,748 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 69 states. [2018-11-23 12:19:14,748 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 69 states. [2018-11-23 12:19:14,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:14,752 INFO L93 Difference]: Finished difference Result 69 states and 85 transitions. [2018-11-23 12:19:14,752 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 85 transitions. [2018-11-23 12:19:14,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:14,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:14,754 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:14,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:14,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-11-23 12:19:14,757 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 65 transitions. [2018-11-23 12:19:14,757 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 65 transitions. Word has length 28 [2018-11-23 12:19:14,758 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:14,758 INFO L480 AbstractCegarLoop]: Abstraction has 54 states and 65 transitions. [2018-11-23 12:19:14,758 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:19:14,758 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 65 transitions. [2018-11-23 12:19:14,759 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2018-11-23 12:19:14,759 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:14,760 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:14,760 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:14,760 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:14,760 INFO L82 PathProgramCache]: Analyzing trace with hash -81151448, now seen corresponding path program 1 times [2018-11-23 12:19:14,760 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:14,761 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:14,762 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:14,762 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:14,762 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:14,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:14,883 INFO L256 TraceCheckUtils]: 0: Hoare triple {1186#true} call ULTIMATE.init(); {1186#true} is VALID [2018-11-23 12:19:14,883 INFO L273 TraceCheckUtils]: 1: Hoare triple {1186#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {1186#true} is VALID [2018-11-23 12:19:14,884 INFO L273 TraceCheckUtils]: 2: Hoare triple {1186#true} assume true; {1186#true} is VALID [2018-11-23 12:19:14,884 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1186#true} {1186#true} #157#return; {1186#true} is VALID [2018-11-23 12:19:14,884 INFO L256 TraceCheckUtils]: 4: Hoare triple {1186#true} call #t~ret31 := main(); {1186#true} is VALID [2018-11-23 12:19:14,884 INFO L273 TraceCheckUtils]: 5: Hoare triple {1186#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {1186#true} is VALID [2018-11-23 12:19:14,891 INFO L273 TraceCheckUtils]: 6: Hoare triple {1186#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,893 INFO L273 TraceCheckUtils]: 7: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,893 INFO L273 TraceCheckUtils]: 8: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,895 INFO L273 TraceCheckUtils]: 9: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,896 INFO L273 TraceCheckUtils]: 10: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,897 INFO L273 TraceCheckUtils]: 11: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,897 INFO L273 TraceCheckUtils]: 12: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,899 INFO L273 TraceCheckUtils]: 13: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} ~i~0 := 1; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,900 INFO L273 TraceCheckUtils]: 14: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,901 INFO L273 TraceCheckUtils]: 15: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,902 INFO L273 TraceCheckUtils]: 16: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,903 INFO L273 TraceCheckUtils]: 17: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,904 INFO L273 TraceCheckUtils]: 18: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,904 INFO L273 TraceCheckUtils]: 19: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} ~i~0 := 1; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,905 INFO L273 TraceCheckUtils]: 20: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,923 INFO L273 TraceCheckUtils]: 21: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,924 INFO L273 TraceCheckUtils]: 22: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,924 INFO L273 TraceCheckUtils]: 23: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,928 INFO L273 TraceCheckUtils]: 24: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,928 INFO L273 TraceCheckUtils]: 25: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} ~i~0 := 1; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,930 INFO L273 TraceCheckUtils]: 26: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,931 INFO L273 TraceCheckUtils]: 27: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,934 INFO L273 TraceCheckUtils]: 28: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,935 INFO L273 TraceCheckUtils]: 29: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,936 INFO L273 TraceCheckUtils]: 30: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,936 INFO L273 TraceCheckUtils]: 31: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} ~i~0 := 1; {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,937 INFO L273 TraceCheckUtils]: 32: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} is VALID [2018-11-23 12:19:14,937 INFO L273 TraceCheckUtils]: 33: Hoare triple {1188#(<= (+ main_~CCCELVOL1~0 1) main_~MINVAL~0)} assume ~CCCELVOL1~0 >= ~MINVAL~0;call write~int(~CCCELVOL1~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {1187#false} is VALID [2018-11-23 12:19:14,938 INFO L273 TraceCheckUtils]: 34: Hoare triple {1187#false} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {1187#false} is VALID [2018-11-23 12:19:14,938 INFO L273 TraceCheckUtils]: 35: Hoare triple {1187#false} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {1187#false} is VALID [2018-11-23 12:19:14,939 INFO L273 TraceCheckUtils]: 36: Hoare triple {1187#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1187#false} is VALID [2018-11-23 12:19:14,939 INFO L273 TraceCheckUtils]: 37: Hoare triple {1187#false} ~i~0 := 0; {1187#false} is VALID [2018-11-23 12:19:14,939 INFO L273 TraceCheckUtils]: 38: Hoare triple {1187#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {1187#false} is VALID [2018-11-23 12:19:14,940 INFO L273 TraceCheckUtils]: 39: Hoare triple {1187#false} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {1187#false} is VALID [2018-11-23 12:19:14,940 INFO L256 TraceCheckUtils]: 40: Hoare triple {1187#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {1187#false} is VALID [2018-11-23 12:19:14,940 INFO L273 TraceCheckUtils]: 41: Hoare triple {1187#false} ~cond := #in~cond; {1187#false} is VALID [2018-11-23 12:19:14,941 INFO L273 TraceCheckUtils]: 42: Hoare triple {1187#false} assume 0 == ~cond; {1187#false} is VALID [2018-11-23 12:19:14,941 INFO L273 TraceCheckUtils]: 43: Hoare triple {1187#false} assume !false; {1187#false} is VALID [2018-11-23 12:19:14,946 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:19:14,947 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:19:14,947 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 12:19:14,947 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 44 [2018-11-23 12:19:14,948 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:14,948 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 12:19:15,015 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:15,015 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 12:19:15,015 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 12:19:15,016 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:19:15,016 INFO L87 Difference]: Start difference. First operand 54 states and 65 transitions. Second operand 3 states. [2018-11-23 12:19:15,178 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:15,178 INFO L93 Difference]: Finished difference Result 75 states and 89 transitions. [2018-11-23 12:19:15,178 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:19:15,178 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 44 [2018-11-23 12:19:15,179 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:15,179 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:19:15,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2018-11-23 12:19:15,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:19:15,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2018-11-23 12:19:15,184 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 74 transitions. [2018-11-23 12:19:15,280 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:15,283 INFO L225 Difference]: With dead ends: 75 [2018-11-23 12:19:15,283 INFO L226 Difference]: Without dead ends: 54 [2018-11-23 12:19:15,283 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:19:15,284 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-11-23 12:19:15,351 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2018-11-23 12:19:15,351 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:15,351 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand 54 states. [2018-11-23 12:19:15,352 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 54 states. [2018-11-23 12:19:15,352 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 54 states. [2018-11-23 12:19:15,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:15,355 INFO L93 Difference]: Finished difference Result 54 states and 64 transitions. [2018-11-23 12:19:15,355 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 64 transitions. [2018-11-23 12:19:15,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:15,356 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:15,356 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 54 states. [2018-11-23 12:19:15,356 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 54 states. [2018-11-23 12:19:15,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:15,359 INFO L93 Difference]: Finished difference Result 54 states and 64 transitions. [2018-11-23 12:19:15,359 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 64 transitions. [2018-11-23 12:19:15,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:15,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:15,360 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:15,360 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:15,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-11-23 12:19:15,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 64 transitions. [2018-11-23 12:19:15,363 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 64 transitions. Word has length 44 [2018-11-23 12:19:15,363 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:15,363 INFO L480 AbstractCegarLoop]: Abstraction has 54 states and 64 transitions. [2018-11-23 12:19:15,363 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 12:19:15,363 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 64 transitions. [2018-11-23 12:19:15,364 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2018-11-23 12:19:15,364 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:15,365 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:15,365 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:15,365 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:15,365 INFO L82 PathProgramCache]: Analyzing trace with hash 619913130, now seen corresponding path program 1 times [2018-11-23 12:19:15,366 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:15,366 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:15,367 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:15,367 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:15,367 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:15,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:16,255 WARN L180 SmtUtils]: Spent 205.00 ms on a formula simplification. DAG size of input: 16 DAG size of output: 12 [2018-11-23 12:19:16,521 WARN L180 SmtUtils]: Spent 138.00 ms on a formula simplification. DAG size of input: 64 DAG size of output: 43 [2018-11-23 12:19:16,908 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 63 DAG size of output: 36 [2018-11-23 12:19:17,665 WARN L180 SmtUtils]: Spent 136.00 ms on a formula simplification. DAG size of input: 69 DAG size of output: 31 [2018-11-23 12:19:18,031 WARN L180 SmtUtils]: Spent 257.00 ms on a formula simplification. DAG size of input: 61 DAG size of output: 21 [2018-11-23 12:19:19,437 INFO L256 TraceCheckUtils]: 0: Hoare triple {1472#true} call ULTIMATE.init(); {1472#true} is VALID [2018-11-23 12:19:19,438 INFO L273 TraceCheckUtils]: 1: Hoare triple {1472#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {1472#true} is VALID [2018-11-23 12:19:19,438 INFO L273 TraceCheckUtils]: 2: Hoare triple {1472#true} assume true; {1472#true} is VALID [2018-11-23 12:19:19,438 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1472#true} {1472#true} #157#return; {1472#true} is VALID [2018-11-23 12:19:19,439 INFO L256 TraceCheckUtils]: 4: Hoare triple {1472#true} call #t~ret31 := main(); {1472#true} is VALID [2018-11-23 12:19:19,439 INFO L273 TraceCheckUtils]: 5: Hoare triple {1472#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {1472#true} is VALID [2018-11-23 12:19:19,441 INFO L273 TraceCheckUtils]: 6: Hoare triple {1472#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {1474#(and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:19,443 INFO L273 TraceCheckUtils]: 7: Hoare triple {1474#(and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {1475#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:19,443 INFO L273 TraceCheckUtils]: 8: Hoare triple {1475#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1475#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:19,445 INFO L273 TraceCheckUtils]: 9: Hoare triple {1475#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {1476#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:19,446 INFO L273 TraceCheckUtils]: 10: Hoare triple {1476#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {1476#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:19,448 INFO L273 TraceCheckUtils]: 11: Hoare triple {1476#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1477#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (or (and (= 20 (+ |main_~#volArray~0.offset| (* 20 (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5)))) (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5)) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (+ (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5))))} is VALID [2018-11-23 12:19:19,451 INFO L273 TraceCheckUtils]: 12: Hoare triple {1477#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (or (and (= 20 (+ |main_~#volArray~0.offset| (* 20 (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5)))) (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5)) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (+ (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1478#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)) (+ |main_~#volArray~0.offset| (- 20))))) (= |main_~#volArray~0.offset| 0))))} is VALID [2018-11-23 12:19:19,455 INFO L273 TraceCheckUtils]: 13: Hoare triple {1478#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)) (+ |main_~#volArray~0.offset| (- 20))))) (= |main_~#volArray~0.offset| 0))))} ~i~0 := 1; {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} is VALID [2018-11-23 12:19:19,456 INFO L273 TraceCheckUtils]: 14: Hoare triple {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} is VALID [2018-11-23 12:19:19,458 INFO L273 TraceCheckUtils]: 15: Hoare triple {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} is VALID [2018-11-23 12:19:19,459 INFO L273 TraceCheckUtils]: 16: Hoare triple {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} is VALID [2018-11-23 12:19:19,477 INFO L273 TraceCheckUtils]: 17: Hoare triple {1479#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (= main_~i~0 1) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= |main_~#volArray~0.offset| 0))))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {1480#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (or (and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0))) (<= (* 5 main_~i~0) (+ ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:19:19,491 INFO L273 TraceCheckUtils]: 18: Hoare triple {1480#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (or (and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0))) (<= (* 5 main_~i~0) (+ ~CELLCOUNT~0 3))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1481#(and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0)))} is VALID [2018-11-23 12:19:19,505 INFO L273 TraceCheckUtils]: 19: Hoare triple {1481#(and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0)))} ~i~0 := 1; {1476#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:19,515 INFO L273 TraceCheckUtils]: 20: Hoare triple {1476#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1482#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:19:19,530 INFO L273 TraceCheckUtils]: 21: Hoare triple {1482#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {1482#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:19:19,546 INFO L273 TraceCheckUtils]: 22: Hoare triple {1482#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {1482#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:19:19,561 INFO L273 TraceCheckUtils]: 23: Hoare triple {1482#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1483#(and (or (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))) (<= main_~i~0 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:19,570 INFO L273 TraceCheckUtils]: 24: Hoare triple {1483#(and (or (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))) (<= main_~i~0 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:19:19,572 INFO L273 TraceCheckUtils]: 25: Hoare triple {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} ~i~0 := 1; {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:19:19,574 INFO L273 TraceCheckUtils]: 26: Hoare triple {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:19:19,575 INFO L273 TraceCheckUtils]: 27: Hoare triple {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:19:19,577 INFO L273 TraceCheckUtils]: 28: Hoare triple {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:19:19,577 INFO L273 TraceCheckUtils]: 29: Hoare triple {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:19:19,579 INFO L273 TraceCheckUtils]: 30: Hoare triple {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:19:19,580 INFO L273 TraceCheckUtils]: 31: Hoare triple {1484#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 20))))))} ~i~0 := 1; {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} is VALID [2018-11-23 12:19:19,582 INFO L273 TraceCheckUtils]: 32: Hoare triple {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} is VALID [2018-11-23 12:19:19,584 INFO L273 TraceCheckUtils]: 33: Hoare triple {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} is VALID [2018-11-23 12:19:19,585 INFO L273 TraceCheckUtils]: 34: Hoare triple {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} is VALID [2018-11-23 12:19:19,587 INFO L273 TraceCheckUtils]: 35: Hoare triple {1485#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))))))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {1486#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0))))} is VALID [2018-11-23 12:19:19,588 INFO L273 TraceCheckUtils]: 36: Hoare triple {1486#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1487#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0)))} is VALID [2018-11-23 12:19:19,590 INFO L273 TraceCheckUtils]: 37: Hoare triple {1487#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) 0)))} ~i~0 := 0; {1488#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:19:19,591 INFO L273 TraceCheckUtils]: 38: Hoare triple {1488#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {1489#(and (= |main_~#volArray~0.offset| 0) |main_#t~short30| (= main_~i~0 0))} is VALID [2018-11-23 12:19:19,591 INFO L273 TraceCheckUtils]: 39: Hoare triple {1489#(and (= |main_~#volArray~0.offset| 0) |main_#t~short30| (= main_~i~0 0))} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {1473#false} is VALID [2018-11-23 12:19:19,592 INFO L256 TraceCheckUtils]: 40: Hoare triple {1473#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {1473#false} is VALID [2018-11-23 12:19:19,592 INFO L273 TraceCheckUtils]: 41: Hoare triple {1473#false} ~cond := #in~cond; {1473#false} is VALID [2018-11-23 12:19:19,592 INFO L273 TraceCheckUtils]: 42: Hoare triple {1473#false} assume 0 == ~cond; {1473#false} is VALID [2018-11-23 12:19:19,593 INFO L273 TraceCheckUtils]: 43: Hoare triple {1473#false} assume !false; {1473#false} is VALID [2018-11-23 12:19:19,606 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 12:19:19,607 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:19,607 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:19:19,624 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:19,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:19,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:19,716 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:19,963 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2018-11-23 12:19:20,018 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 12 [2018-11-23 12:19:20,045 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,056 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,072 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,072 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:29, output treesize:22 [2018-11-23 12:19:20,076 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:20,077 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_50|, main_~CCCELVOL5~0]. (and (<= main_~MINVAL~0 2) (= (store |v_#memory_int_50| |main_~#volArray~0.base| (store (select |v_#memory_int_50| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)) main_~CCCELVOL5~0)) |#memory_int|) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 8 main_~CCCELVOL5~0)) [2018-11-23 12:19:20,077 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:20,295 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:20,297 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 181 treesize of output 284 [2018-11-23 12:19:20,391 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,392 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,393 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,411 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 110 treesize of output 101 [2018-11-23 12:19:20,434 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,435 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,436 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,482 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 65 [2018-11-23 12:19:20,507 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,509 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,510 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,554 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 47 [2018-11-23 12:19:20,576 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,580 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 23 [2018-11-23 12:19:20,585 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,591 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,594 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,597 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,603 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,618 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,618 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 1 variables, input treesize:187, output treesize:14 [2018-11-23 12:19:20,730 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 19 [2018-11-23 12:19:20,735 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,739 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 29 [2018-11-23 12:19:20,744 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,752 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,764 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:20,765 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:33, output treesize:17 [2018-11-23 12:19:20,770 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:20,771 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_52|, main_~CCCELVOL4~0]. (let ((.cse0 (select |v_#memory_int_52| |main_~#volArray~0.base|))) (and (<= 8 (select .cse0 |main_~#volArray~0.offset|)) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (store |v_#memory_int_52| |main_~#volArray~0.base| (store .cse0 (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0)) |#memory_int|))) [2018-11-23 12:19:20,771 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|))) [2018-11-23 12:19:20,789 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:20,791 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 271 treesize of output 464 [2018-11-23 12:19:20,819 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,821 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,843 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 176 treesize of output 165 [2018-11-23 12:19:20,915 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,916 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,917 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,919 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,920 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:20,938 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 98 treesize of output 138 [2018-11-23 12:19:21,086 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,131 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,156 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,170 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,172 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,180 INFO L303 Elim1Store]: Index analysis took 129 ms [2018-11-23 12:19:21,184 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 53 treesize of output 108 [2018-11-23 12:19:21,192 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,194 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,262 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 59 [2018-11-23 12:19:21,265 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,278 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,292 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,341 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,343 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,345 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,359 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 86 treesize of output 98 [2018-11-23 12:19:21,399 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,401 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,403 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,418 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 68 [2018-11-23 12:19:21,439 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,445 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 29 [2018-11-23 12:19:21,449 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,462 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,466 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,477 INFO L267 ElimStorePlain]: Start of recursive call 3: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,479 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,491 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,492 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 2 variables, input treesize:280, output treesize:14 [2018-11-23 12:19:21,495 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:21,495 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_53|, main_~i~0]. (let ((.cse0 (select |v_#memory_int_53| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select .cse0 |main_~#volArray~0.offset|)) (= |#memory_int| (store |v_#memory_int_53| |main_~#volArray~0.base| (let ((.cse3 (* 20 main_~i~0))) (let ((.cse1 (let ((.cse4 (let ((.cse6 (let ((.cse8 (+ |main_~#volArray~0.offset| .cse3 (- 20)))) (store .cse0 .cse8 (select .cse0 .cse8)))) (.cse7 (+ |main_~#volArray~0.offset| .cse3 (- 12)))) (store .cse6 .cse7 (select .cse6 .cse7)))) (.cse5 (+ |main_~#volArray~0.offset| .cse3 (- 8)))) (store .cse4 .cse5 (select .cse4 .cse5)))) (.cse2 (+ |main_~#volArray~0.offset| .cse3 (- 4)))) (store .cse1 .cse2 (select .cse1 .cse2)))))))) [2018-11-23 12:19:21,495 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|))) [2018-11-23 12:19:21,542 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 19 [2018-11-23 12:19:21,557 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,562 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 29 [2018-11-23 12:19:21,577 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,587 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,607 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,608 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:33, output treesize:17 [2018-11-23 12:19:21,611 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:21,611 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_54|, main_~CCCELVOL3~0]. (let ((.cse0 (select |v_#memory_int_54| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |#memory_int| (store |v_#memory_int_54| |main_~#volArray~0.base| (store .cse0 (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) main_~CCCELVOL3~0))) (= |main_~#volArray~0.offset| 0) (<= 8 (select .cse0 |main_~#volArray~0.offset|)))) [2018-11-23 12:19:21,611 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|))) [2018-11-23 12:19:21,722 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:21,724 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 271 treesize of output 464 [2018-11-23 12:19:21,751 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,754 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,777 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 176 treesize of output 165 [2018-11-23 12:19:21,851 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,852 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,853 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,862 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 92 treesize of output 104 [2018-11-23 12:19:21,899 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,900 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,900 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,909 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 68 [2018-11-23 12:19:21,916 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,933 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 29 [2018-11-23 12:19:21,936 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,942 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,948 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:21,974 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,975 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,975 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,976 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,977 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:21,992 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 103 treesize of output 143 [2018-11-23 12:19:22,032 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,034 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,035 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,037 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,038 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,051 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 113 [2018-11-23 12:19:22,061 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,063 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,078 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 64 [2018-11-23 12:19:22,086 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,098 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,105 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,119 INFO L267 ElimStorePlain]: Start of recursive call 3: 2 dim-1 vars, End of recursive call: and 2 xjuncts. [2018-11-23 12:19:22,125 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,135 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,136 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 2 variables, input treesize:280, output treesize:14 [2018-11-23 12:19:22,139 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:22,140 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_55|, main_~i~0]. (let ((.cse0 (select |v_#memory_int_55| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select .cse0 |main_~#volArray~0.offset|)) (= (store |v_#memory_int_55| |main_~#volArray~0.base| (let ((.cse3 (* 20 main_~i~0))) (let ((.cse1 (let ((.cse4 (let ((.cse6 (let ((.cse8 (+ |main_~#volArray~0.offset| .cse3 (- 20)))) (store .cse0 .cse8 (select .cse0 .cse8)))) (.cse7 (+ |main_~#volArray~0.offset| .cse3 (- 16)))) (store .cse6 .cse7 (select .cse6 .cse7)))) (.cse5 (+ |main_~#volArray~0.offset| .cse3 (- 8)))) (store .cse4 .cse5 (select .cse4 .cse5)))) (.cse2 (+ |main_~#volArray~0.offset| .cse3 (- 4)))) (store .cse1 .cse2 (select .cse1 .cse2))))) |#memory_int|))) [2018-11-23 12:19:22,140 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|))) [2018-11-23 12:19:22,167 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 19 [2018-11-23 12:19:22,174 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,177 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 29 [2018-11-23 12:19:22,180 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,188 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,200 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,201 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:33, output treesize:17 [2018-11-23 12:19:22,204 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:22,205 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_56|, main_~CCCELVOL2~0]. (let ((.cse0 (select |v_#memory_int_56| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |#memory_int| (store |v_#memory_int_56| |main_~#volArray~0.base| (store .cse0 (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) main_~CCCELVOL2~0))) (= |main_~#volArray~0.offset| 0) (<= 8 (select .cse0 |main_~#volArray~0.offset|)))) [2018-11-23 12:19:22,205 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|))) [2018-11-23 12:19:22,271 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:22,272 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 271 treesize of output 464 [2018-11-23 12:19:22,431 WARN L180 SmtUtils]: Spent 124.00 ms on a formula simplification. DAG size of input: 30 DAG size of output: 29 [2018-11-23 12:19:22,508 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,513 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,533 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 176 treesize of output 165 [2018-11-23 12:19:22,604 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,605 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,606 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,615 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 92 treesize of output 104 [2018-11-23 12:19:22,652 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,652 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,653 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,662 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 68 [2018-11-23 12:19:22,676 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,680 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 29 [2018-11-23 12:19:22,683 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,690 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,697 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,718 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,719 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,720 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,729 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 86 treesize of output 98 [2018-11-23 12:19:22,767 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,768 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,769 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,778 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 68 [2018-11-23 12:19:22,787 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,792 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 29 [2018-11-23 12:19:22,795 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,803 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,806 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,814 INFO L267 ElimStorePlain]: Start of recursive call 3: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,817 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,826 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,827 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 2 variables, input treesize:280, output treesize:14 [2018-11-23 12:19:22,829 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:22,830 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_57|, main_~i~0]. (let ((.cse0 (select |v_#memory_int_57| |main_~#volArray~0.base|))) (and (<= 8 (select .cse0 |main_~#volArray~0.offset|)) (= (store |v_#memory_int_57| |main_~#volArray~0.base| (let ((.cse3 (* 20 main_~i~0))) (let ((.cse1 (let ((.cse4 (let ((.cse6 (let ((.cse8 (+ |main_~#volArray~0.offset| .cse3 (- 20)))) (store .cse0 .cse8 (select .cse0 .cse8)))) (.cse7 (+ |main_~#volArray~0.offset| .cse3 (- 16)))) (store .cse6 .cse7 (select .cse6 .cse7)))) (.cse5 (+ |main_~#volArray~0.offset| .cse3 (- 12)))) (store .cse4 .cse5 (select .cse4 .cse5)))) (.cse2 (+ |main_~#volArray~0.offset| .cse3 (- 4)))) (store .cse1 .cse2 (select .cse1 .cse2))))) |#memory_int|) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))) [2018-11-23 12:19:22,830 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|))) [2018-11-23 12:19:22,875 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 19 [2018-11-23 12:19:22,881 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,883 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:22,885 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 37 [2018-11-23 12:19:22,894 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,902 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,914 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:22,915 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:33, output treesize:29 [2018-11-23 12:19:22,981 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:22,983 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 283 treesize of output 474 [2018-11-23 12:19:23,017 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,020 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,022 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,024 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,025 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,026 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,049 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 186 treesize of output 210 [2018-11-23 12:19:23,094 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,095 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,096 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,097 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,098 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,100 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,101 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,114 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 96 treesize of output 158 [2018-11-23 12:19:23,173 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,174 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,175 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,176 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,178 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,179 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,184 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,195 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 128 [2018-11-23 12:19:23,304 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,307 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:23,313 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 81 [2018-11-23 12:19:23,321 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:23,337 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:23,344 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:23,352 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:23,359 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:23,374 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 12:19:23,374 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 2 variables, input treesize:292, output treesize:29 [2018-11-23 12:19:23,769 INFO L256 TraceCheckUtils]: 0: Hoare triple {1472#true} call ULTIMATE.init(); {1472#true} is VALID [2018-11-23 12:19:23,769 INFO L273 TraceCheckUtils]: 1: Hoare triple {1472#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {1472#true} is VALID [2018-11-23 12:19:23,770 INFO L273 TraceCheckUtils]: 2: Hoare triple {1472#true} assume true; {1472#true} is VALID [2018-11-23 12:19:23,770 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1472#true} {1472#true} #157#return; {1472#true} is VALID [2018-11-23 12:19:23,770 INFO L256 TraceCheckUtils]: 4: Hoare triple {1472#true} call #t~ret31 := main(); {1472#true} is VALID [2018-11-23 12:19:23,771 INFO L273 TraceCheckUtils]: 5: Hoare triple {1472#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {1472#true} is VALID [2018-11-23 12:19:23,772 INFO L273 TraceCheckUtils]: 6: Hoare triple {1472#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {1511#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:23,773 INFO L273 TraceCheckUtils]: 7: Hoare triple {1511#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 8 main_~CCCELVOL5~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {1515#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 8 main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:23,774 INFO L273 TraceCheckUtils]: 8: Hoare triple {1515#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 8 main_~CCCELVOL5~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1515#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 8 main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:23,775 INFO L273 TraceCheckUtils]: 9: Hoare triple {1515#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 8 main_~CCCELVOL5~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {1522#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,776 INFO L273 TraceCheckUtils]: 10: Hoare triple {1522#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,776 INFO L273 TraceCheckUtils]: 11: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,777 INFO L273 TraceCheckUtils]: 12: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,778 INFO L273 TraceCheckUtils]: 13: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,779 INFO L273 TraceCheckUtils]: 14: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,781 INFO L273 TraceCheckUtils]: 15: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,788 INFO L273 TraceCheckUtils]: 16: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,789 INFO L273 TraceCheckUtils]: 17: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,790 INFO L273 TraceCheckUtils]: 18: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,790 INFO L273 TraceCheckUtils]: 19: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,791 INFO L273 TraceCheckUtils]: 20: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,792 INFO L273 TraceCheckUtils]: 21: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,793 INFO L273 TraceCheckUtils]: 22: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,794 INFO L273 TraceCheckUtils]: 23: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,795 INFO L273 TraceCheckUtils]: 24: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,796 INFO L273 TraceCheckUtils]: 25: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,797 INFO L273 TraceCheckUtils]: 26: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,799 INFO L273 TraceCheckUtils]: 27: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,800 INFO L273 TraceCheckUtils]: 28: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,801 INFO L273 TraceCheckUtils]: 29: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,802 INFO L273 TraceCheckUtils]: 30: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,803 INFO L273 TraceCheckUtils]: 31: Hoare triple {1526#(and (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,804 INFO L273 TraceCheckUtils]: 32: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,806 INFO L273 TraceCheckUtils]: 33: Hoare triple {1536#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {1597#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,808 INFO L273 TraceCheckUtils]: 34: Hoare triple {1597#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {1601#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,810 INFO L273 TraceCheckUtils]: 35: Hoare triple {1601#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {1601#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,811 INFO L273 TraceCheckUtils]: 36: Hoare triple {1601#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {1601#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:23,813 INFO L273 TraceCheckUtils]: 37: Hoare triple {1601#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 0; {1611#(and (exists ((v_prenex_4 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_4) (- 4)))) (<= 1 v_prenex_4))) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:19:23,815 INFO L273 TraceCheckUtils]: 38: Hoare triple {1611#(and (exists ((v_prenex_4 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_4) (- 4)))) (<= 1 v_prenex_4))) (<= main_~MINVAL~0 2) (<= 8 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {1615#|main_#t~short30|} is VALID [2018-11-23 12:19:23,816 INFO L273 TraceCheckUtils]: 39: Hoare triple {1615#|main_#t~short30|} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {1473#false} is VALID [2018-11-23 12:19:23,817 INFO L256 TraceCheckUtils]: 40: Hoare triple {1473#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {1473#false} is VALID [2018-11-23 12:19:23,817 INFO L273 TraceCheckUtils]: 41: Hoare triple {1473#false} ~cond := #in~cond; {1473#false} is VALID [2018-11-23 12:19:23,817 INFO L273 TraceCheckUtils]: 42: Hoare triple {1473#false} assume 0 == ~cond; {1473#false} is VALID [2018-11-23 12:19:23,818 INFO L273 TraceCheckUtils]: 43: Hoare triple {1473#false} assume !false; {1473#false} is VALID [2018-11-23 12:19:23,830 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:19:23,850 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:19:23,850 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 11] total 27 [2018-11-23 12:19:23,850 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 44 [2018-11-23 12:19:23,851 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:23,851 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-23 12:19:24,007 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:24,007 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-23 12:19:24,008 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-23 12:19:24,008 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=589, Unknown=0, NotChecked=0, Total=702 [2018-11-23 12:19:24,009 INFO L87 Difference]: Start difference. First operand 54 states and 64 transitions. Second operand 27 states. [2018-11-23 12:19:27,758 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 75 DAG size of output: 43 [2018-11-23 12:19:30,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:30,430 INFO L93 Difference]: Finished difference Result 144 states and 181 transitions. [2018-11-23 12:19:30,430 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:19:30,430 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 44 [2018-11-23 12:19:30,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:30,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:19:30,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 169 transitions. [2018-11-23 12:19:30,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:19:30,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 169 transitions. [2018-11-23 12:19:30,441 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 169 transitions. [2018-11-23 12:19:30,752 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:30,755 INFO L225 Difference]: With dead ends: 144 [2018-11-23 12:19:30,755 INFO L226 Difference]: Without dead ends: 99 [2018-11-23 12:19:30,756 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 36 SyntacticMatches, 13 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 433 ImplicationChecksByTransitivity, 4.5s TimeCoverageRelationStatistics Valid=412, Invalid=1310, Unknown=0, NotChecked=0, Total=1722 [2018-11-23 12:19:30,757 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2018-11-23 12:19:30,913 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 56. [2018-11-23 12:19:30,914 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:30,914 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand 56 states. [2018-11-23 12:19:30,914 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand 56 states. [2018-11-23 12:19:30,914 INFO L87 Difference]: Start difference. First operand 99 states. Second operand 56 states. [2018-11-23 12:19:30,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:30,920 INFO L93 Difference]: Finished difference Result 99 states and 123 transitions. [2018-11-23 12:19:30,921 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 123 transitions. [2018-11-23 12:19:30,921 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:30,921 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:30,922 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 99 states. [2018-11-23 12:19:30,922 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 99 states. [2018-11-23 12:19:30,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:30,926 INFO L93 Difference]: Finished difference Result 99 states and 123 transitions. [2018-11-23 12:19:30,926 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 123 transitions. [2018-11-23 12:19:30,927 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:30,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:30,927 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:30,927 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:30,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 56 states. [2018-11-23 12:19:30,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 65 transitions. [2018-11-23 12:19:30,930 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 65 transitions. Word has length 44 [2018-11-23 12:19:30,930 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:30,930 INFO L480 AbstractCegarLoop]: Abstraction has 56 states and 65 transitions. [2018-11-23 12:19:30,930 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-23 12:19:30,930 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 65 transitions. [2018-11-23 12:19:30,931 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2018-11-23 12:19:30,931 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:30,931 INFO L402 BasicCegarLoop]: trace histogram [2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:30,932 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:30,932 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:30,932 INFO L82 PathProgramCache]: Analyzing trace with hash -1119878701, now seen corresponding path program 1 times [2018-11-23 12:19:30,932 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:30,932 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:30,933 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:30,933 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:30,933 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:30,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:31,619 WARN L180 SmtUtils]: Spent 147.00 ms on a formula simplification. DAG size of input: 75 DAG size of output: 24 [2018-11-23 12:19:32,041 WARN L180 SmtUtils]: Spent 132.00 ms on a formula simplification. DAG size of input: 89 DAG size of output: 32 [2018-11-23 12:19:32,501 WARN L180 SmtUtils]: Spent 173.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 53 [2018-11-23 12:19:32,905 WARN L180 SmtUtils]: Spent 177.00 ms on a formula simplification. DAG size of input: 99 DAG size of output: 36 [2018-11-23 12:19:33,086 WARN L180 SmtUtils]: Spent 118.00 ms on a formula simplification. DAG size of input: 93 DAG size of output: 33 [2018-11-23 12:19:33,371 WARN L180 SmtUtils]: Spent 174.00 ms on a formula simplification. DAG size of input: 107 DAG size of output: 40 [2018-11-23 12:19:35,126 INFO L256 TraceCheckUtils]: 0: Hoare triple {2124#true} call ULTIMATE.init(); {2124#true} is VALID [2018-11-23 12:19:35,127 INFO L273 TraceCheckUtils]: 1: Hoare triple {2124#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2124#true} is VALID [2018-11-23 12:19:35,127 INFO L273 TraceCheckUtils]: 2: Hoare triple {2124#true} assume true; {2124#true} is VALID [2018-11-23 12:19:35,127 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2124#true} {2124#true} #157#return; {2124#true} is VALID [2018-11-23 12:19:35,127 INFO L256 TraceCheckUtils]: 4: Hoare triple {2124#true} call #t~ret31 := main(); {2124#true} is VALID [2018-11-23 12:19:35,127 INFO L273 TraceCheckUtils]: 5: Hoare triple {2124#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2124#true} is VALID [2018-11-23 12:19:35,128 INFO L273 TraceCheckUtils]: 6: Hoare triple {2124#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {2126#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:35,129 INFO L273 TraceCheckUtils]: 7: Hoare triple {2126#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:35,130 INFO L273 TraceCheckUtils]: 8: Hoare triple {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:35,131 INFO L273 TraceCheckUtils]: 9: Hoare triple {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:35,132 INFO L273 TraceCheckUtils]: 10: Hoare triple {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:35,133 INFO L273 TraceCheckUtils]: 11: Hoare triple {2127#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2128#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (or (<= (+ (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= 2 ~CELLCOUNT~0) (<= (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))))} is VALID [2018-11-23 12:19:35,136 INFO L273 TraceCheckUtils]: 12: Hoare triple {2128#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (or (<= (+ (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= 2 ~CELLCOUNT~0) (<= (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2129#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:35,138 INFO L273 TraceCheckUtils]: 13: Hoare triple {2129#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} ~i~0 := 1; {2130#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (or (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5))) (<= main_~i~0 0)) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:35,139 INFO L273 TraceCheckUtils]: 14: Hoare triple {2130#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (or (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5))) (<= main_~i~0 0)) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2130#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (or (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5))) (<= main_~i~0 0)) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:35,141 INFO L273 TraceCheckUtils]: 15: Hoare triple {2130#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (or (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5))) (<= main_~i~0 0)) (<= (+ main_~MINVAL~0 3) main_~CCCELVOL4~0))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {2131#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= (+ main_~MINVAL~0 3) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)))) (<= main_~i~0 0)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:35,143 INFO L273 TraceCheckUtils]: 16: Hoare triple {2131#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= (+ main_~MINVAL~0 3) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)))) (<= main_~i~0 0)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {2131#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= (+ main_~MINVAL~0 3) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)))) (<= main_~i~0 0)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:35,147 INFO L273 TraceCheckUtils]: 17: Hoare triple {2131#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= (+ main_~MINVAL~0 3) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)))) (<= main_~i~0 0)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {2132#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)) (+ |main_~#volArray~0.offset| (- 16))))) (<= (* 5 main_~i~0) (+ ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:35,149 INFO L273 TraceCheckUtils]: 18: Hoare triple {2132#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)) (+ |main_~#volArray~0.offset| (- 16))))) (<= (* 5 main_~i~0) (+ ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2133#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)) (+ |main_~#volArray~0.offset| (- 16))))))))} is VALID [2018-11-23 12:19:35,151 INFO L273 TraceCheckUtils]: 19: Hoare triple {2133#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5)) (+ |main_~#volArray~0.offset| (- 16))))))))} ~i~0 := 1; {2134#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5))) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))))))} is VALID [2018-11-23 12:19:35,153 INFO L273 TraceCheckUtils]: 20: Hoare triple {2134#(and (<= (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) (div (+ ~CELLCOUNT~0 3) 5)) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (<= (+ (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5) 1) (div (+ ~CELLCOUNT~0 3) 5)) (and (= (* 20 main_~i~0) (* 20 (div (+ (* 5 (div ~CELLCOUNT~0 5)) (+ (- ~CELLCOUNT~0) 6)) 5))) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,156 INFO L273 TraceCheckUtils]: 21: Hoare triple {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,159 INFO L273 TraceCheckUtils]: 22: Hoare triple {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,164 INFO L273 TraceCheckUtils]: 23: Hoare triple {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {2136#(and (<= 1 (div ~CELLCOUNT~0 5)) (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 16))))) (<= main_~i~0 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:19:35,167 INFO L273 TraceCheckUtils]: 24: Hoare triple {2136#(and (<= 1 (div ~CELLCOUNT~0 5)) (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 16))))) (<= main_~i~0 (div ~CELLCOUNT~0 5))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2137#(and (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 16)))))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,168 INFO L273 TraceCheckUtils]: 25: Hoare triple {2137#(and (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 16)))))) (<= 1 (div ~CELLCOUNT~0 5)))} ~i~0 := 1; {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,168 INFO L273 TraceCheckUtils]: 26: Hoare triple {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,169 INFO L273 TraceCheckUtils]: 27: Hoare triple {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,170 INFO L273 TraceCheckUtils]: 28: Hoare triple {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,171 INFO L273 TraceCheckUtils]: 29: Hoare triple {2135#(and (or (and (= (* 20 main_~i~0) 20) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16))))) (<= 2 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {2138#(or (and (<= 1 (div ~CELLCOUNT~0 5)) (or (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 (div ~CELLCOUNT~0 5)) (- 16)))) (<= 2 (div ~CELLCOUNT~0 5)))) (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,173 INFO L273 TraceCheckUtils]: 30: Hoare triple {2138#(or (and (<= 1 (div ~CELLCOUNT~0 5)) (or (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 (div ~CELLCOUNT~0 5)) (- 16)))) (<= 2 (div ~CELLCOUNT~0 5)))) (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2137#(and (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 16)))))) (<= 1 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,175 INFO L273 TraceCheckUtils]: 31: Hoare triple {2137#(and (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 1) (+ |main_~#volArray~0.offset| (- 16)))))) (<= 1 (div ~CELLCOUNT~0 5)))} ~i~0 := 1; {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} is VALID [2018-11-23 12:19:35,175 INFO L273 TraceCheckUtils]: 32: Hoare triple {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} is VALID [2018-11-23 12:19:35,177 INFO L273 TraceCheckUtils]: 33: Hoare triple {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} is VALID [2018-11-23 12:19:35,179 INFO L273 TraceCheckUtils]: 34: Hoare triple {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} is VALID [2018-11-23 12:19:35,181 INFO L273 TraceCheckUtils]: 35: Hoare triple {2139#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 3) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16))))) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {2140#(or (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:19:35,182 INFO L273 TraceCheckUtils]: 36: Hoare triple {2140#(or (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2141#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:19:35,184 INFO L273 TraceCheckUtils]: 37: Hoare triple {2141#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} ~i~0 := 0; {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:19:35,185 INFO L273 TraceCheckUtils]: 38: Hoare triple {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:19:35,186 INFO L273 TraceCheckUtils]: 39: Hoare triple {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} assume #t~short30; {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:19:35,186 INFO L256 TraceCheckUtils]: 40: Hoare triple {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2124#true} is VALID [2018-11-23 12:19:35,186 INFO L273 TraceCheckUtils]: 41: Hoare triple {2124#true} ~cond := #in~cond; {2124#true} is VALID [2018-11-23 12:19:35,187 INFO L273 TraceCheckUtils]: 42: Hoare triple {2124#true} assume !(0 == ~cond); {2124#true} is VALID [2018-11-23 12:19:35,187 INFO L273 TraceCheckUtils]: 43: Hoare triple {2124#true} assume true; {2124#true} is VALID [2018-11-23 12:19:35,188 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {2124#true} {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} #161#return; {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:19:35,189 INFO L273 TraceCheckUtils]: 45: Hoare triple {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:19:35,190 INFO L273 TraceCheckUtils]: 46: Hoare triple {2142#(and (<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 16))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {2143#(<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:19:35,191 INFO L273 TraceCheckUtils]: 47: Hoare triple {2143#(<= (+ main_~MINVAL~0 3) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {2144#|main_#t~short30|} is VALID [2018-11-23 12:19:35,191 INFO L273 TraceCheckUtils]: 48: Hoare triple {2144#|main_#t~short30|} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {2125#false} is VALID [2018-11-23 12:19:35,191 INFO L256 TraceCheckUtils]: 49: Hoare triple {2125#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2125#false} is VALID [2018-11-23 12:19:35,191 INFO L273 TraceCheckUtils]: 50: Hoare triple {2125#false} ~cond := #in~cond; {2125#false} is VALID [2018-11-23 12:19:35,192 INFO L273 TraceCheckUtils]: 51: Hoare triple {2125#false} assume 0 == ~cond; {2125#false} is VALID [2018-11-23 12:19:35,192 INFO L273 TraceCheckUtils]: 52: Hoare triple {2125#false} assume !false; {2125#false} is VALID [2018-11-23 12:19:35,214 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 3 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:19:35,214 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:35,214 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:19:35,233 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:35,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:35,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:35,300 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:35,566 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2018-11-23 12:19:35,569 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 12 [2018-11-23 12:19:35,575 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,577 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,595 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,595 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:29, output treesize:22 [2018-11-23 12:19:35,612 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:35,612 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_60|, main_~CCCELVOL4~0]. (and (= |#memory_int| (store |v_#memory_int_60| |main_~#volArray~0.base| (store (select |v_#memory_int_60| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0))) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0)) [2018-11-23 12:19:35,613 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:35,825 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:35,827 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 151 treesize of output 222 [2018-11-23 12:19:35,851 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,852 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,853 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,861 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 96 treesize of output 101 [2018-11-23 12:19:35,881 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,883 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,884 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,892 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 71 [2018-11-23 12:19:35,907 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,908 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,909 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,917 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 53 [2018-11-23 12:19:35,923 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:35,928 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 27 [2018-11-23 12:19:35,929 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,936 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,939 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,942 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,945 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,952 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:35,953 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 1 variables, input treesize:157, output treesize:16 [2018-11-23 12:19:36,045 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 21 [2018-11-23 12:19:36,051 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,054 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 33 [2018-11-23 12:19:36,058 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,063 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,075 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,076 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:35, output treesize:19 [2018-11-23 12:19:36,080 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:36,080 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_62|, main_~CCCELVOL3~0]. (let ((.cse0 (select |v_#memory_int_62| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 5 (select .cse0 (+ |main_~#volArray~0.offset| 4))) (= |main_~#volArray~0.offset| 0) (= |#memory_int| (store |v_#memory_int_62| |main_~#volArray~0.base| (store .cse0 (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) main_~CCCELVOL3~0))))) [2018-11-23 12:19:36,080 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:36,107 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:36,108 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 273 treesize of output 466 [2018-11-23 12:19:36,135 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,136 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,150 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 178 treesize of output 153 [2018-11-23 12:19:36,174 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,177 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,202 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 88 treesize of output 111 [2018-11-23 12:19:36,267 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,268 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,269 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,278 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 80 [2018-11-23 12:19:36,284 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,289 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 33 [2018-11-23 12:19:36,291 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,302 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,325 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,326 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,327 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,329 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,331 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,345 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 60 treesize of output 119 [2018-11-23 12:19:36,353 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,353 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,362 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 68 [2018-11-23 12:19:36,365 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,379 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,393 INFO L267 ElimStorePlain]: Start of recursive call 4: 2 dim-1 vars, End of recursive call: and 2 xjuncts. [2018-11-23 12:19:36,400 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,402 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,412 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,413 INFO L202 ElimStorePlain]: Needed 8 recursive calls to eliminate 2 variables, input treesize:282, output treesize:16 [2018-11-23 12:19:36,420 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:36,420 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_63|, main_~i~0]. (let ((.cse0 (select |v_#memory_int_63| |main_~#volArray~0.base|))) (and (<= 5 (select .cse0 (+ |main_~#volArray~0.offset| 4))) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (store |v_#memory_int_63| |main_~#volArray~0.base| (let ((.cse3 (* 20 main_~i~0))) (let ((.cse1 (let ((.cse4 (let ((.cse6 (let ((.cse8 (+ |main_~#volArray~0.offset| .cse3 (- 20)))) (store .cse0 .cse8 (select .cse0 .cse8)))) (.cse7 (+ |main_~#volArray~0.offset| .cse3 (- 16)))) (store .cse6 .cse7 (select .cse6 .cse7)))) (.cse5 (+ |main_~#volArray~0.offset| .cse3 (- 8)))) (store .cse4 .cse5 (select .cse4 .cse5)))) (.cse2 (+ |main_~#volArray~0.offset| .cse3 (- 4)))) (store .cse1 .cse2 (select .cse1 .cse2))))) |#memory_int|))) [2018-11-23 12:19:36,420 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:36,449 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 21 [2018-11-23 12:19:36,453 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,457 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 33 [2018-11-23 12:19:36,460 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,466 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,478 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,479 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:35, output treesize:19 [2018-11-23 12:19:36,483 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:36,484 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_64|, main_~CCCELVOL2~0]. (let ((.cse0 (select |v_#memory_int_64| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= 5 (select .cse0 (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= |#memory_int| (store |v_#memory_int_64| |main_~#volArray~0.base| (store .cse0 (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) main_~CCCELVOL2~0))))) [2018-11-23 12:19:36,484 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:36,529 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:36,531 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 273 treesize of output 466 [2018-11-23 12:19:36,556 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,557 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,570 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 178 treesize of output 153 [2018-11-23 12:19:36,599 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,601 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,660 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 88 treesize of output 96 [2018-11-23 12:19:36,699 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,701 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,706 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,724 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 74 [2018-11-23 12:19:36,733 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,744 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 33 [2018-11-23 12:19:36,746 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,757 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,765 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,769 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,773 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,787 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,787 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 2 variables, input treesize:282, output treesize:16 [2018-11-23 12:19:36,791 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:36,791 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_65|, main_~i~0]. (let ((.cse0 (select |v_#memory_int_65| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 5 (select .cse0 (+ |main_~#volArray~0.offset| 4))) (= |main_~#volArray~0.offset| 0) (= |#memory_int| (store |v_#memory_int_65| |main_~#volArray~0.base| (let ((.cse3 (* 20 main_~i~0))) (let ((.cse1 (let ((.cse4 (let ((.cse6 (let ((.cse8 (+ |main_~#volArray~0.offset| .cse3 (- 20)))) (store .cse0 .cse8 (select .cse0 .cse8)))) (.cse7 (+ |main_~#volArray~0.offset| .cse3 (- 16)))) (store .cse6 .cse7 (select .cse6 .cse7)))) (.cse5 (+ |main_~#volArray~0.offset| .cse3 (- 12)))) (store .cse4 .cse5 (select .cse4 .cse5)))) (.cse2 (+ |main_~#volArray~0.offset| .cse3 (- 4)))) (store .cse1 .cse2 (select .cse1 .cse2)))))))) [2018-11-23 12:19:36,791 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:36,853 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 21 [2018-11-23 12:19:36,862 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,868 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:36,870 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 43 [2018-11-23 12:19:36,872 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,883 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,897 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:36,897 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:35, output treesize:31 [2018-11-23 12:19:37,032 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:37,034 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 285 treesize of output 476 [2018-11-23 12:19:37,128 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,130 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,133 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,135 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,138 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,146 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,158 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 188 treesize of output 217 [2018-11-23 12:19:37,201 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,202 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,203 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,204 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,205 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,240 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,340 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 98 treesize of output 156 [2018-11-23 12:19:37,383 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,385 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,386 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,387 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,388 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,389 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,392 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,403 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 53 treesize of output 138 [2018-11-23 12:19:37,414 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,415 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:37,440 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 53 treesize of output 89 [2018-11-23 12:19:37,470 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:37,496 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:37,502 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:37,509 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:37,519 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:37,530 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 12:19:37,531 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 2 variables, input treesize:294, output treesize:31 [2018-11-23 12:19:38,052 INFO L256 TraceCheckUtils]: 0: Hoare triple {2124#true} call ULTIMATE.init(); {2124#true} is VALID [2018-11-23 12:19:38,052 INFO L273 TraceCheckUtils]: 1: Hoare triple {2124#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2124#true} is VALID [2018-11-23 12:19:38,052 INFO L273 TraceCheckUtils]: 2: Hoare triple {2124#true} assume true; {2124#true} is VALID [2018-11-23 12:19:38,053 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2124#true} {2124#true} #157#return; {2124#true} is VALID [2018-11-23 12:19:38,053 INFO L256 TraceCheckUtils]: 4: Hoare triple {2124#true} call #t~ret31 := main(); {2124#true} is VALID [2018-11-23 12:19:38,053 INFO L273 TraceCheckUtils]: 5: Hoare triple {2124#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2124#true} is VALID [2018-11-23 12:19:38,054 INFO L273 TraceCheckUtils]: 6: Hoare triple {2124#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,055 INFO L273 TraceCheckUtils]: 7: Hoare triple {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,056 INFO L273 TraceCheckUtils]: 8: Hoare triple {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,057 INFO L273 TraceCheckUtils]: 9: Hoare triple {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,058 INFO L273 TraceCheckUtils]: 10: Hoare triple {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,058 INFO L273 TraceCheckUtils]: 11: Hoare triple {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,059 INFO L273 TraceCheckUtils]: 12: Hoare triple {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,059 INFO L273 TraceCheckUtils]: 13: Hoare triple {2166#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} ~i~0 := 1; {2188#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,060 INFO L273 TraceCheckUtils]: 14: Hoare triple {2188#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2188#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} is VALID [2018-11-23 12:19:38,061 INFO L273 TraceCheckUtils]: 15: Hoare triple {2188#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 5 main_~CCCELVOL4~0))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {2195#(and (<= main_~MINVAL~0 2) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,062 INFO L273 TraceCheckUtils]: 16: Hoare triple {2195#(and (<= main_~MINVAL~0 2) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,063 INFO L273 TraceCheckUtils]: 17: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,064 INFO L273 TraceCheckUtils]: 18: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,065 INFO L273 TraceCheckUtils]: 19: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,066 INFO L273 TraceCheckUtils]: 20: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,067 INFO L273 TraceCheckUtils]: 21: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,068 INFO L273 TraceCheckUtils]: 22: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,069 INFO L273 TraceCheckUtils]: 23: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,070 INFO L273 TraceCheckUtils]: 24: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,072 INFO L273 TraceCheckUtils]: 25: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,073 INFO L273 TraceCheckUtils]: 26: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,075 INFO L273 TraceCheckUtils]: 27: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,076 INFO L273 TraceCheckUtils]: 28: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,077 INFO L273 TraceCheckUtils]: 29: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,078 INFO L273 TraceCheckUtils]: 30: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,079 INFO L273 TraceCheckUtils]: 31: Hoare triple {2199#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,079 INFO L273 TraceCheckUtils]: 32: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,081 INFO L273 TraceCheckUtils]: 33: Hoare triple {2209#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {2252#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,083 INFO L273 TraceCheckUtils]: 34: Hoare triple {2252#(and (<= 1 main_~i~0) (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= |main_~#volArray~0.offset| 0))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {2256#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,084 INFO L273 TraceCheckUtils]: 35: Hoare triple {2256#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {2256#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,085 INFO L273 TraceCheckUtils]: 36: Hoare triple {2256#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2256#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:38,086 INFO L273 TraceCheckUtils]: 37: Hoare triple {2256#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0))} ~i~0 := 0; {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} is VALID [2018-11-23 12:19:38,088 INFO L273 TraceCheckUtils]: 38: Hoare triple {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} is VALID [2018-11-23 12:19:38,089 INFO L273 TraceCheckUtils]: 39: Hoare triple {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} assume #t~short30; {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} is VALID [2018-11-23 12:19:38,091 INFO L256 TraceCheckUtils]: 40: Hoare triple {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} is VALID [2018-11-23 12:19:38,092 INFO L273 TraceCheckUtils]: 41: Hoare triple {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} ~cond := #in~cond; {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} is VALID [2018-11-23 12:19:38,093 INFO L273 TraceCheckUtils]: 42: Hoare triple {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} assume !(0 == ~cond); {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} is VALID [2018-11-23 12:19:38,093 INFO L273 TraceCheckUtils]: 43: Hoare triple {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} assume true; {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} is VALID [2018-11-23 12:19:38,095 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {2276#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 1 v_prenex_6) (<= 5 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 20 v_prenex_6) (- 4))))))} {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} #161#return; {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} is VALID [2018-11-23 12:19:38,096 INFO L273 TraceCheckUtils]: 45: Hoare triple {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} is VALID [2018-11-23 12:19:38,097 INFO L273 TraceCheckUtils]: 46: Hoare triple {2266#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {2295#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} is VALID [2018-11-23 12:19:38,099 INFO L273 TraceCheckUtils]: 47: Hoare triple {2295#(and (<= 5 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_6 Int)) (and (<= 1 v_prenex_6) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_6) (- 4)))))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {2144#|main_#t~short30|} is VALID [2018-11-23 12:19:38,099 INFO L273 TraceCheckUtils]: 48: Hoare triple {2144#|main_#t~short30|} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {2125#false} is VALID [2018-11-23 12:19:38,099 INFO L256 TraceCheckUtils]: 49: Hoare triple {2125#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2125#false} is VALID [2018-11-23 12:19:38,100 INFO L273 TraceCheckUtils]: 50: Hoare triple {2125#false} ~cond := #in~cond; {2125#false} is VALID [2018-11-23 12:19:38,100 INFO L273 TraceCheckUtils]: 51: Hoare triple {2125#false} assume 0 == ~cond; {2125#false} is VALID [2018-11-23 12:19:38,100 INFO L273 TraceCheckUtils]: 52: Hoare triple {2125#false} assume !false; {2125#false} is VALID [2018-11-23 12:19:38,112 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 12:19:38,131 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:19:38,131 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 13] total 31 [2018-11-23 12:19:38,132 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 53 [2018-11-23 12:19:38,132 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:38,132 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states. [2018-11-23 12:19:38,319 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:38,319 INFO L459 AbstractCegarLoop]: Interpolant automaton has 31 states [2018-11-23 12:19:38,319 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2018-11-23 12:19:38,320 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=128, Invalid=802, Unknown=0, NotChecked=0, Total=930 [2018-11-23 12:19:38,320 INFO L87 Difference]: Start difference. First operand 56 states and 65 transitions. Second operand 31 states. [2018-11-23 12:19:40,182 WARN L180 SmtUtils]: Spent 106.00 ms on a formula simplification. DAG size of input: 65 DAG size of output: 33 [2018-11-23 12:19:40,413 WARN L180 SmtUtils]: Spent 105.00 ms on a formula simplification. DAG size of input: 82 DAG size of output: 25 [2018-11-23 12:19:44,281 WARN L180 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 100 DAG size of output: 37 [2018-11-23 12:19:45,601 WARN L180 SmtUtils]: Spent 163.00 ms on a formula simplification. DAG size of input: 80 DAG size of output: 43 [2018-11-23 12:19:45,947 WARN L180 SmtUtils]: Spent 125.00 ms on a formula simplification. DAG size of input: 88 DAG size of output: 33 [2018-11-23 12:19:46,369 WARN L180 SmtUtils]: Spent 180.00 ms on a formula simplification. DAG size of input: 86 DAG size of output: 31 [2018-11-23 12:19:47,206 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 108 DAG size of output: 36 [2018-11-23 12:19:49,974 WARN L180 SmtUtils]: Spent 111.00 ms on a formula simplification. DAG size of input: 81 DAG size of output: 44 [2018-11-23 12:19:51,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:51,147 INFO L93 Difference]: Finished difference Result 176 states and 220 transitions. [2018-11-23 12:19:51,147 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2018-11-23 12:19:51,147 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 53 [2018-11-23 12:19:51,147 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:51,147 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 12:19:51,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 207 transitions. [2018-11-23 12:19:51,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 12:19:51,158 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 207 transitions. [2018-11-23 12:19:51,158 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states and 207 transitions. [2018-11-23 12:19:51,598 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 207 edges. 207 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:51,602 INFO L225 Difference]: With dead ends: 176 [2018-11-23 12:19:51,602 INFO L226 Difference]: Without dead ends: 135 [2018-11-23 12:19:51,604 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 43 SyntacticMatches, 11 SemanticMatches, 60 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1019 ImplicationChecksByTransitivity, 8.1s TimeCoverageRelationStatistics Valid=918, Invalid=2864, Unknown=0, NotChecked=0, Total=3782 [2018-11-23 12:19:51,604 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2018-11-23 12:19:51,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 61. [2018-11-23 12:19:51,787 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:51,787 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand 61 states. [2018-11-23 12:19:51,788 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand 61 states. [2018-11-23 12:19:51,788 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 61 states. [2018-11-23 12:19:51,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:51,794 INFO L93 Difference]: Finished difference Result 135 states and 167 transitions. [2018-11-23 12:19:51,794 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 167 transitions. [2018-11-23 12:19:51,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:51,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:51,795 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 135 states. [2018-11-23 12:19:51,795 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 135 states. [2018-11-23 12:19:51,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:51,801 INFO L93 Difference]: Finished difference Result 135 states and 167 transitions. [2018-11-23 12:19:51,801 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 167 transitions. [2018-11-23 12:19:51,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:51,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:51,802 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:51,802 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:51,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2018-11-23 12:19:51,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 70 transitions. [2018-11-23 12:19:51,805 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 70 transitions. Word has length 53 [2018-11-23 12:19:51,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:51,805 INFO L480 AbstractCegarLoop]: Abstraction has 61 states and 70 transitions. [2018-11-23 12:19:51,805 INFO L481 AbstractCegarLoop]: Interpolant automaton has 31 states. [2018-11-23 12:19:51,805 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 70 transitions. [2018-11-23 12:19:51,806 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2018-11-23 12:19:51,806 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:51,806 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:51,807 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:51,807 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:51,807 INFO L82 PathProgramCache]: Analyzing trace with hash -1340834358, now seen corresponding path program 2 times [2018-11-23 12:19:51,807 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:51,807 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:51,808 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:51,808 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:19:51,808 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:51,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:52,737 WARN L180 SmtUtils]: Spent 118.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 22 [2018-11-23 12:19:53,130 WARN L180 SmtUtils]: Spent 134.00 ms on a formula simplification. DAG size of input: 83 DAG size of output: 39 [2018-11-23 12:19:54,494 INFO L256 TraceCheckUtils]: 0: Hoare triple {2963#true} call ULTIMATE.init(); {2963#true} is VALID [2018-11-23 12:19:54,495 INFO L273 TraceCheckUtils]: 1: Hoare triple {2963#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2963#true} is VALID [2018-11-23 12:19:54,495 INFO L273 TraceCheckUtils]: 2: Hoare triple {2963#true} assume true; {2963#true} is VALID [2018-11-23 12:19:54,495 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2963#true} {2963#true} #157#return; {2963#true} is VALID [2018-11-23 12:19:54,496 INFO L256 TraceCheckUtils]: 4: Hoare triple {2963#true} call #t~ret31 := main(); {2963#true} is VALID [2018-11-23 12:19:54,496 INFO L273 TraceCheckUtils]: 5: Hoare triple {2963#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2963#true} is VALID [2018-11-23 12:19:54,497 INFO L273 TraceCheckUtils]: 6: Hoare triple {2963#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {2965#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0) (<= main_~CCCELVOL5~0 8) (<= 8 main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:54,498 INFO L273 TraceCheckUtils]: 7: Hoare triple {2965#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0) (<= main_~CCCELVOL5~0 8) (<= 8 main_~CCCELVOL5~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {2966#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= main_~CCCELVOL5~0 8) (<= 8 main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:54,499 INFO L273 TraceCheckUtils]: 8: Hoare triple {2966#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= main_~CCCELVOL5~0 8) (<= 8 main_~CCCELVOL5~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2966#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= main_~CCCELVOL5~0 8) (<= 8 main_~CCCELVOL5~0))} is VALID [2018-11-23 12:19:54,500 INFO L273 TraceCheckUtils]: 9: Hoare triple {2966#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= main_~CCCELVOL5~0 8) (<= 8 main_~CCCELVOL5~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,501 INFO L273 TraceCheckUtils]: 10: Hoare triple {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,502 INFO L273 TraceCheckUtils]: 11: Hoare triple {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,503 INFO L273 TraceCheckUtils]: 12: Hoare triple {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,504 INFO L273 TraceCheckUtils]: 13: Hoare triple {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,505 INFO L273 TraceCheckUtils]: 14: Hoare triple {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,506 INFO L273 TraceCheckUtils]: 15: Hoare triple {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,507 INFO L273 TraceCheckUtils]: 16: Hoare triple {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,508 INFO L273 TraceCheckUtils]: 17: Hoare triple {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {2969#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)))} is VALID [2018-11-23 12:19:54,509 INFO L273 TraceCheckUtils]: 18: Hoare triple {2969#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,510 INFO L273 TraceCheckUtils]: 19: Hoare triple {2967#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,511 INFO L273 TraceCheckUtils]: 20: Hoare triple {2968#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2970#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,513 INFO L273 TraceCheckUtils]: 21: Hoare triple {2970#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:19:54,515 INFO L273 TraceCheckUtils]: 22: Hoare triple {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:19:54,516 INFO L273 TraceCheckUtils]: 23: Hoare triple {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {2972#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)))} is VALID [2018-11-23 12:19:54,518 INFO L273 TraceCheckUtils]: 24: Hoare triple {2972#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2973#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,519 INFO L273 TraceCheckUtils]: 25: Hoare triple {2973#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:19:54,521 INFO L273 TraceCheckUtils]: 26: Hoare triple {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:19:54,523 INFO L273 TraceCheckUtils]: 27: Hoare triple {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:19:54,525 INFO L273 TraceCheckUtils]: 28: Hoare triple {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:19:54,526 INFO L273 TraceCheckUtils]: 29: Hoare triple {2971#(and (<= 1 (div ~CELLCOUNT~0 5)) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {2972#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)))} is VALID [2018-11-23 12:19:54,528 INFO L273 TraceCheckUtils]: 30: Hoare triple {2972#(and (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2973#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,529 INFO L273 TraceCheckUtils]: 31: Hoare triple {2973#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (<= 1 (div ~CELLCOUNT~0 5)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} is VALID [2018-11-23 12:19:54,530 INFO L273 TraceCheckUtils]: 32: Hoare triple {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} is VALID [2018-11-23 12:19:54,532 INFO L273 TraceCheckUtils]: 33: Hoare triple {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} is VALID [2018-11-23 12:19:54,533 INFO L273 TraceCheckUtils]: 34: Hoare triple {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} is VALID [2018-11-23 12:19:54,535 INFO L273 TraceCheckUtils]: 35: Hoare triple {2974#(and (= |main_~#volArray~0.offset| 0) (or (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 19)) (and (= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 20) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))))))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {2975#(and (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39))))} is VALID [2018-11-23 12:19:54,537 INFO L273 TraceCheckUtils]: 36: Hoare triple {2975#(and (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0)) 39))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {2976#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,537 INFO L273 TraceCheckUtils]: 37: Hoare triple {2976#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 0; {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:19:54,538 INFO L273 TraceCheckUtils]: 38: Hoare triple {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:19:54,541 INFO L273 TraceCheckUtils]: 39: Hoare triple {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume #t~short30; {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:19:54,542 INFO L256 TraceCheckUtils]: 40: Hoare triple {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2963#true} is VALID [2018-11-23 12:19:54,542 INFO L273 TraceCheckUtils]: 41: Hoare triple {2963#true} ~cond := #in~cond; {2963#true} is VALID [2018-11-23 12:19:54,542 INFO L273 TraceCheckUtils]: 42: Hoare triple {2963#true} assume !(0 == ~cond); {2963#true} is VALID [2018-11-23 12:19:54,542 INFO L273 TraceCheckUtils]: 43: Hoare triple {2963#true} assume true; {2963#true} is VALID [2018-11-23 12:19:54,543 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {2963#true} {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} #161#return; {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:19:54,544 INFO L273 TraceCheckUtils]: 45: Hoare triple {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:19:54,548 INFO L273 TraceCheckUtils]: 46: Hoare triple {2977#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 8)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} is VALID [2018-11-23 12:19:54,549 INFO L273 TraceCheckUtils]: 47: Hoare triple {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} is VALID [2018-11-23 12:19:54,549 INFO L273 TraceCheckUtils]: 48: Hoare triple {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} assume #t~short30; {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} is VALID [2018-11-23 12:19:54,549 INFO L256 TraceCheckUtils]: 49: Hoare triple {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2963#true} is VALID [2018-11-23 12:19:54,549 INFO L273 TraceCheckUtils]: 50: Hoare triple {2963#true} ~cond := #in~cond; {2963#true} is VALID [2018-11-23 12:19:54,550 INFO L273 TraceCheckUtils]: 51: Hoare triple {2963#true} assume !(0 == ~cond); {2963#true} is VALID [2018-11-23 12:19:54,550 INFO L273 TraceCheckUtils]: 52: Hoare triple {2963#true} assume true; {2963#true} is VALID [2018-11-23 12:19:54,550 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {2963#true} {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} #161#return; {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} is VALID [2018-11-23 12:19:54,551 INFO L273 TraceCheckUtils]: 54: Hoare triple {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} is VALID [2018-11-23 12:19:54,552 INFO L273 TraceCheckUtils]: 55: Hoare triple {2978#(and (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) 4))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {2979#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:54,554 INFO L273 TraceCheckUtils]: 56: Hoare triple {2979#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|))) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {2980#(and (= |main_~#volArray~0.offset| 0) |main_#t~short30|)} is VALID [2018-11-23 12:19:54,554 INFO L273 TraceCheckUtils]: 57: Hoare triple {2980#(and (= |main_~#volArray~0.offset| 0) |main_#t~short30|)} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {2964#false} is VALID [2018-11-23 12:19:54,554 INFO L256 TraceCheckUtils]: 58: Hoare triple {2964#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2964#false} is VALID [2018-11-23 12:19:54,555 INFO L273 TraceCheckUtils]: 59: Hoare triple {2964#false} ~cond := #in~cond; {2964#false} is VALID [2018-11-23 12:19:54,555 INFO L273 TraceCheckUtils]: 60: Hoare triple {2964#false} assume 0 == ~cond; {2964#false} is VALID [2018-11-23 12:19:54,555 INFO L273 TraceCheckUtils]: 61: Hoare triple {2964#false} assume !false; {2964#false} is VALID [2018-11-23 12:19:54,572 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:19:54,573 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:54,573 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:19:54,583 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:19:54,628 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:19:54,628 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:19:54,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:54,655 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:54,809 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2018-11-23 12:19:54,816 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 12 [2018-11-23 12:19:54,818 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:54,821 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:54,835 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:54,835 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:29, output treesize:22 [2018-11-23 12:19:54,840 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:54,840 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_68|, main_~CCCELVOL3~0]. (and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (store |v_#memory_int_68| |main_~#volArray~0.base| (store (select |v_#memory_int_68| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) main_~CCCELVOL3~0)) |#memory_int|) (<= 7 main_~CCCELVOL3~0)) [2018-11-23 12:19:54,840 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:54,884 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:54,885 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 151 treesize of output 222 [2018-11-23 12:19:54,910 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,911 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,913 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,920 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 96 treesize of output 101 [2018-11-23 12:19:54,939 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,940 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,941 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,949 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 71 [2018-11-23 12:19:54,968 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,969 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,970 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,981 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 53 [2018-11-23 12:19:54,987 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:54,992 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 27 [2018-11-23 12:19:54,994 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,001 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,004 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,007 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,010 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,018 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,018 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 1 variables, input treesize:157, output treesize:16 [2018-11-23 12:19:55,118 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 21 [2018-11-23 12:19:55,125 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,129 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 33 [2018-11-23 12:19:55,133 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,141 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,154 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,154 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:35, output treesize:19 [2018-11-23 12:19:55,159 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:55,159 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_70|, main_~CCCELVOL2~0]. (let ((.cse0 (select |v_#memory_int_70| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 7 (select .cse0 (+ |main_~#volArray~0.offset| 8))) (= |main_~#volArray~0.offset| 0) (= |#memory_int| (store |v_#memory_int_70| |main_~#volArray~0.base| (store .cse0 (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) main_~CCCELVOL2~0))))) [2018-11-23 12:19:55,159 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)))) [2018-11-23 12:19:55,177 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:55,178 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 273 treesize of output 466 [2018-11-23 12:19:55,207 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,208 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,209 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,217 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 178 treesize of output 164 [2018-11-23 12:19:55,248 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,251 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,262 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 88 treesize of output 93 [2018-11-23 12:19:55,286 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,287 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,311 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 43 treesize of output 81 [2018-11-23 12:19:55,327 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,328 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,337 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 70 treesize of output 68 [2018-11-23 12:19:55,340 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,367 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,371 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 33 [2018-11-23 12:19:55,374 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,381 INFO L267 ElimStorePlain]: Start of recursive call 5: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,384 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,390 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,393 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,402 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,403 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 2 variables, input treesize:282, output treesize:16 [2018-11-23 12:19:55,406 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:55,406 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_71|, main_~i~0]. (let ((.cse0 (select |v_#memory_int_71| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 7 (select .cse0 (+ |main_~#volArray~0.offset| 8))) (= |main_~#volArray~0.offset| 0) (= (store |v_#memory_int_71| |main_~#volArray~0.base| (let ((.cse3 (* 20 main_~i~0))) (let ((.cse1 (let ((.cse4 (let ((.cse6 (let ((.cse8 (+ |main_~#volArray~0.offset| .cse3 (- 20)))) (store .cse0 .cse8 (select .cse0 .cse8)))) (.cse7 (+ |main_~#volArray~0.offset| .cse3 (- 16)))) (store .cse6 .cse7 (select .cse6 .cse7)))) (.cse5 (+ |main_~#volArray~0.offset| .cse3 (- 12)))) (store .cse4 .cse5 (select .cse4 .cse5)))) (.cse2 (+ |main_~#volArray~0.offset| .cse3 (- 4)))) (store .cse1 .cse2 (select .cse1 .cse2))))) |#memory_int|))) [2018-11-23 12:19:55,407 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)))) [2018-11-23 12:19:55,435 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 21 [2018-11-23 12:19:55,441 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,443 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,445 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 43 [2018-11-23 12:19:55,448 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,458 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,471 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,471 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:35, output treesize:31 [2018-11-23 12:19:55,531 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:55,533 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 285 treesize of output 476 [2018-11-23 12:19:55,568 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,569 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,571 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,572 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,573 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,574 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,578 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,588 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 188 treesize of output 228 [2018-11-23 12:19:55,635 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,636 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,637 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,639 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,641 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,645 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,657 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 98 treesize of output 157 [2018-11-23 12:19:55,704 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,705 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,706 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,707 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,711 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,714 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,742 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 53 treesize of output 141 [2018-11-23 12:19:55,762 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,764 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,766 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,777 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 131 treesize of output 135 [2018-11-23 12:19:55,783 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,834 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,836 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,837 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,840 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:55,846 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 89 [2018-11-23 12:19:55,849 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,867 INFO L267 ElimStorePlain]: Start of recursive call 5: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,875 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,882 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,889 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:55,905 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 12:19:55,905 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 2 variables, input treesize:294, output treesize:31 [2018-11-23 12:19:56,622 INFO L256 TraceCheckUtils]: 0: Hoare triple {2963#true} call ULTIMATE.init(); {2963#true} is VALID [2018-11-23 12:19:56,622 INFO L273 TraceCheckUtils]: 1: Hoare triple {2963#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2963#true} is VALID [2018-11-23 12:19:56,622 INFO L273 TraceCheckUtils]: 2: Hoare triple {2963#true} assume true; {2963#true} is VALID [2018-11-23 12:19:56,623 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2963#true} {2963#true} #157#return; {2963#true} is VALID [2018-11-23 12:19:56,623 INFO L256 TraceCheckUtils]: 4: Hoare triple {2963#true} call #t~ret31 := main(); {2963#true} is VALID [2018-11-23 12:19:56,623 INFO L273 TraceCheckUtils]: 5: Hoare triple {2963#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2963#true} is VALID [2018-11-23 12:19:56,624 INFO L273 TraceCheckUtils]: 6: Hoare triple {2963#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,625 INFO L273 TraceCheckUtils]: 7: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,625 INFO L273 TraceCheckUtils]: 8: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,626 INFO L273 TraceCheckUtils]: 9: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,626 INFO L273 TraceCheckUtils]: 10: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,627 INFO L273 TraceCheckUtils]: 11: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,627 INFO L273 TraceCheckUtils]: 12: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,628 INFO L273 TraceCheckUtils]: 13: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} ~i~0 := 1; {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,629 INFO L273 TraceCheckUtils]: 14: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,629 INFO L273 TraceCheckUtils]: 15: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,630 INFO L273 TraceCheckUtils]: 16: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,631 INFO L273 TraceCheckUtils]: 17: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,632 INFO L273 TraceCheckUtils]: 18: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,633 INFO L273 TraceCheckUtils]: 19: Hoare triple {3002#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} ~i~0 := 1; {3042#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,634 INFO L273 TraceCheckUtils]: 20: Hoare triple {3042#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3042#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:19:56,635 INFO L273 TraceCheckUtils]: 21: Hoare triple {3042#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {3049#(and (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:56,636 INFO L273 TraceCheckUtils]: 22: Hoare triple {3049#(and (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,637 INFO L273 TraceCheckUtils]: 23: Hoare triple {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,638 INFO L273 TraceCheckUtils]: 24: Hoare triple {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,639 INFO L273 TraceCheckUtils]: 25: Hoare triple {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} ~i~0 := 1; {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,640 INFO L273 TraceCheckUtils]: 26: Hoare triple {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,641 INFO L273 TraceCheckUtils]: 27: Hoare triple {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,643 INFO L273 TraceCheckUtils]: 28: Hoare triple {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,643 INFO L273 TraceCheckUtils]: 29: Hoare triple {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,644 INFO L273 TraceCheckUtils]: 30: Hoare triple {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,645 INFO L273 TraceCheckUtils]: 31: Hoare triple {3053#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} ~i~0 := 1; {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,646 INFO L273 TraceCheckUtils]: 32: Hoare triple {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,647 INFO L273 TraceCheckUtils]: 33: Hoare triple {3063#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {3088#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,649 INFO L273 TraceCheckUtils]: 34: Hoare triple {3088#(and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {3092#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,651 INFO L273 TraceCheckUtils]: 35: Hoare triple {3092#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {3092#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,652 INFO L273 TraceCheckUtils]: 36: Hoare triple {3092#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3092#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,653 INFO L273 TraceCheckUtils]: 37: Hoare triple {3092#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} ~i~0 := 0; {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:56,654 INFO L273 TraceCheckUtils]: 38: Hoare triple {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:56,656 INFO L273 TraceCheckUtils]: 39: Hoare triple {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} assume #t~short30; {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:56,658 INFO L256 TraceCheckUtils]: 40: Hoare triple {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,659 INFO L273 TraceCheckUtils]: 41: Hoare triple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} ~cond := #in~cond; {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,659 INFO L273 TraceCheckUtils]: 42: Hoare triple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} assume !(0 == ~cond); {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,660 INFO L273 TraceCheckUtils]: 43: Hoare triple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} assume true; {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,661 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} #161#return; {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:56,662 INFO L273 TraceCheckUtils]: 45: Hoare triple {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:56,663 INFO L273 TraceCheckUtils]: 46: Hoare triple {3102#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,665 INFO L273 TraceCheckUtils]: 47: Hoare triple {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,666 INFO L273 TraceCheckUtils]: 48: Hoare triple {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume #t~short30; {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,668 INFO L256 TraceCheckUtils]: 49: Hoare triple {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,669 INFO L273 TraceCheckUtils]: 50: Hoare triple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} ~cond := #in~cond; {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,669 INFO L273 TraceCheckUtils]: 51: Hoare triple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} assume !(0 == ~cond); {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,670 INFO L273 TraceCheckUtils]: 52: Hoare triple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} assume true; {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} is VALID [2018-11-23 12:19:56,671 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {3112#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int) (v_prenex_10 Int)) (and (<= 7 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) (+ (* 20 v_prenex_10) (- 4))) 0) (<= 1 v_prenex_10)))} {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} #161#return; {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,672 INFO L273 TraceCheckUtils]: 54: Hoare triple {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,674 INFO L273 TraceCheckUtils]: 55: Hoare triple {3131#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3159#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} is VALID [2018-11-23 12:19:56,675 INFO L273 TraceCheckUtils]: 56: Hoare triple {3159#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((v_prenex_10 Int)) (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_10) (- 4)))) (<= 1 v_prenex_10))) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3163#|main_#t~short30|} is VALID [2018-11-23 12:19:56,676 INFO L273 TraceCheckUtils]: 57: Hoare triple {3163#|main_#t~short30|} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {2964#false} is VALID [2018-11-23 12:19:56,676 INFO L256 TraceCheckUtils]: 58: Hoare triple {2964#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {2964#false} is VALID [2018-11-23 12:19:56,677 INFO L273 TraceCheckUtils]: 59: Hoare triple {2964#false} ~cond := #in~cond; {2964#false} is VALID [2018-11-23 12:19:56,677 INFO L273 TraceCheckUtils]: 60: Hoare triple {2964#false} assume 0 == ~cond; {2964#false} is VALID [2018-11-23 12:19:56,677 INFO L273 TraceCheckUtils]: 61: Hoare triple {2964#false} assume !false; {2964#false} is VALID [2018-11-23 12:19:56,730 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 12 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 12:19:56,749 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:19:56,749 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 14] total 30 [2018-11-23 12:19:56,750 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 62 [2018-11-23 12:19:56,750 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:56,750 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2018-11-23 12:19:56,925 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:56,926 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2018-11-23 12:19:56,926 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2018-11-23 12:19:56,927 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=127, Invalid=743, Unknown=0, NotChecked=0, Total=870 [2018-11-23 12:19:56,927 INFO L87 Difference]: Start difference. First operand 61 states and 70 transitions. Second operand 30 states. [2018-11-23 12:20:03,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:03,523 INFO L93 Difference]: Finished difference Result 140 states and 166 transitions. [2018-11-23 12:20:03,523 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:20:03,523 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 62 [2018-11-23 12:20:03,524 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:03,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 12:20:03,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 148 transitions. [2018-11-23 12:20:03,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 12:20:03,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 148 transitions. [2018-11-23 12:20:03,530 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 148 transitions. [2018-11-23 12:20:03,790 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:03,792 INFO L225 Difference]: With dead ends: 140 [2018-11-23 12:20:03,792 INFO L226 Difference]: Without dead ends: 100 [2018-11-23 12:20:03,793 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 48 SyntacticMatches, 15 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 611 ImplicationChecksByTransitivity, 4.0s TimeCoverageRelationStatistics Valid=476, Invalid=1686, Unknown=0, NotChecked=0, Total=2162 [2018-11-23 12:20:03,793 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2018-11-23 12:20:04,056 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 66. [2018-11-23 12:20:04,057 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:04,057 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand 66 states. [2018-11-23 12:20:04,057 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand 66 states. [2018-11-23 12:20:04,057 INFO L87 Difference]: Start difference. First operand 100 states. Second operand 66 states. [2018-11-23 12:20:04,061 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:04,061 INFO L93 Difference]: Finished difference Result 100 states and 115 transitions. [2018-11-23 12:20:04,061 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 115 transitions. [2018-11-23 12:20:04,062 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:04,062 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:04,062 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 100 states. [2018-11-23 12:20:04,062 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 100 states. [2018-11-23 12:20:04,065 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:04,065 INFO L93 Difference]: Finished difference Result 100 states and 115 transitions. [2018-11-23 12:20:04,065 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 115 transitions. [2018-11-23 12:20:04,066 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:04,066 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:04,066 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:04,066 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:04,066 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 66 states. [2018-11-23 12:20:04,068 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 75 transitions. [2018-11-23 12:20:04,069 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 75 transitions. Word has length 62 [2018-11-23 12:20:04,069 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:04,069 INFO L480 AbstractCegarLoop]: Abstraction has 66 states and 75 transitions. [2018-11-23 12:20:04,069 INFO L481 AbstractCegarLoop]: Interpolant automaton has 30 states. [2018-11-23 12:20:04,069 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 75 transitions. [2018-11-23 12:20:04,070 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2018-11-23 12:20:04,070 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:04,070 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:20:04,071 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:04,071 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:04,071 INFO L82 PathProgramCache]: Analyzing trace with hash -1477015629, now seen corresponding path program 3 times [2018-11-23 12:20:04,071 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:04,071 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:04,072 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:04,072 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:04,072 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:04,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:04,538 WARN L180 SmtUtils]: Spent 183.00 ms on a formula simplification. DAG size of input: 14 DAG size of output: 9 [2018-11-23 12:20:04,972 WARN L180 SmtUtils]: Spent 123.00 ms on a formula simplification. DAG size of input: 26 DAG size of output: 15 [2018-11-23 12:20:05,775 WARN L180 SmtUtils]: Spent 157.00 ms on a formula simplification. DAG size of input: 64 DAG size of output: 28 [2018-11-23 12:20:06,345 WARN L180 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 32 [2018-11-23 12:20:06,763 INFO L256 TraceCheckUtils]: 0: Hoare triple {3683#true} call ULTIMATE.init(); {3683#true} is VALID [2018-11-23 12:20:06,763 INFO L273 TraceCheckUtils]: 1: Hoare triple {3683#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {3683#true} is VALID [2018-11-23 12:20:06,764 INFO L273 TraceCheckUtils]: 2: Hoare triple {3683#true} assume true; {3683#true} is VALID [2018-11-23 12:20:06,764 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3683#true} {3683#true} #157#return; {3683#true} is VALID [2018-11-23 12:20:06,764 INFO L256 TraceCheckUtils]: 4: Hoare triple {3683#true} call #t~ret31 := main(); {3683#true} is VALID [2018-11-23 12:20:06,764 INFO L273 TraceCheckUtils]: 5: Hoare triple {3683#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {3683#true} is VALID [2018-11-23 12:20:06,766 INFO L273 TraceCheckUtils]: 6: Hoare triple {3683#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {3685#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:06,767 INFO L273 TraceCheckUtils]: 7: Hoare triple {3685#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:06,767 INFO L273 TraceCheckUtils]: 8: Hoare triple {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:06,768 INFO L273 TraceCheckUtils]: 9: Hoare triple {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:06,769 INFO L273 TraceCheckUtils]: 10: Hoare triple {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:06,770 INFO L273 TraceCheckUtils]: 11: Hoare triple {3686#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3687#(and (or (<= 2 (div (+ ~CELLCOUNT~0 3) 5)) (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0) (<= (* 5 main_~i~0) 10)) (<= (* 5 main_~i~0) (+ ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:06,772 INFO L273 TraceCheckUtils]: 12: Hoare triple {3687#(and (or (<= 2 (div (+ ~CELLCOUNT~0 3) 5)) (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0) (<= (* 5 main_~i~0) 10)) (<= (* 5 main_~i~0) (+ ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:20:06,773 INFO L273 TraceCheckUtils]: 13: Hoare triple {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} ~i~0 := 1; {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:20:06,774 INFO L273 TraceCheckUtils]: 14: Hoare triple {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:20:06,775 INFO L273 TraceCheckUtils]: 15: Hoare triple {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:20:06,776 INFO L273 TraceCheckUtils]: 16: Hoare triple {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:20:06,776 INFO L273 TraceCheckUtils]: 17: Hoare triple {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:20:06,777 INFO L273 TraceCheckUtils]: 18: Hoare triple {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} is VALID [2018-11-23 12:20:06,779 INFO L273 TraceCheckUtils]: 19: Hoare triple {3688#(and (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div (+ ~CELLCOUNT~0 3) 5))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))} ~i~0 := 1; {3689#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)))} is VALID [2018-11-23 12:20:06,780 INFO L273 TraceCheckUtils]: 20: Hoare triple {3689#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (or (and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= (+ (* 5 main_~i~0) 2) ~CELLCOUNT~0)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} is VALID [2018-11-23 12:20:06,781 INFO L273 TraceCheckUtils]: 21: Hoare triple {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} is VALID [2018-11-23 12:20:06,782 INFO L273 TraceCheckUtils]: 22: Hoare triple {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} is VALID [2018-11-23 12:20:06,784 INFO L273 TraceCheckUtils]: 23: Hoare triple {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {3691#(or (and (< ~CELLCOUNT~0 0) (not (= (* 5 (div ~CELLCOUNT~0 5)) ~CELLCOUNT~0)) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (and (or (and (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= (+ main_~i~0 1) (* 2 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (* 2 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:06,786 INFO L273 TraceCheckUtils]: 24: Hoare triple {3691#(or (and (< ~CELLCOUNT~0 0) (not (= (* 5 (div ~CELLCOUNT~0 5)) ~CELLCOUNT~0)) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (and (or (and (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= (+ main_~i~0 1) (* 2 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (* 2 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3692#(and (<= 1 (div ~CELLCOUNT~0 5)) (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)))} is VALID [2018-11-23 12:20:06,787 INFO L273 TraceCheckUtils]: 25: Hoare triple {3692#(and (<= 1 (div ~CELLCOUNT~0 5)) (or (<= 2 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)))} ~i~0 := 1; {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} is VALID [2018-11-23 12:20:06,788 INFO L273 TraceCheckUtils]: 26: Hoare triple {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} is VALID [2018-11-23 12:20:06,789 INFO L273 TraceCheckUtils]: 27: Hoare triple {3690#(and (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (and (<= 1 (div ~CELLCOUNT~0 5)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))) (= main_~i~0 1))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {3693#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} is VALID [2018-11-23 12:20:06,791 INFO L273 TraceCheckUtils]: 28: Hoare triple {3693#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {3693#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} is VALID [2018-11-23 12:20:06,793 INFO L273 TraceCheckUtils]: 29: Hoare triple {3693#(or (and (= (* 20 main_~i~0) (* 20 (div ~CELLCOUNT~0 5))) (<= (+ main_~MINVAL~0 1) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (and (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 5)) (= main_~i~0 1)))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {3694#(or (and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:06,795 INFO L273 TraceCheckUtils]: 30: Hoare triple {3694#(or (and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5)) (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,796 INFO L273 TraceCheckUtils]: 31: Hoare triple {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} ~i~0 := 1; {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,797 INFO L273 TraceCheckUtils]: 32: Hoare triple {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,798 INFO L273 TraceCheckUtils]: 33: Hoare triple {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,800 INFO L273 TraceCheckUtils]: 34: Hoare triple {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,801 INFO L273 TraceCheckUtils]: 35: Hoare triple {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,802 INFO L273 TraceCheckUtils]: 36: Hoare triple {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,802 INFO L273 TraceCheckUtils]: 37: Hoare triple {3695#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} ~i~0 := 0; {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:20:06,804 INFO L273 TraceCheckUtils]: 38: Hoare triple {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:20:06,804 INFO L273 TraceCheckUtils]: 39: Hoare triple {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} assume #t~short30; {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:20:06,805 INFO L256 TraceCheckUtils]: 40: Hoare triple {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3683#true} is VALID [2018-11-23 12:20:06,805 INFO L273 TraceCheckUtils]: 41: Hoare triple {3683#true} ~cond := #in~cond; {3683#true} is VALID [2018-11-23 12:20:06,805 INFO L273 TraceCheckUtils]: 42: Hoare triple {3683#true} assume !(0 == ~cond); {3683#true} is VALID [2018-11-23 12:20:06,805 INFO L273 TraceCheckUtils]: 43: Hoare triple {3683#true} assume true; {3683#true} is VALID [2018-11-23 12:20:06,806 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3683#true} {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} #161#return; {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:20:06,807 INFO L273 TraceCheckUtils]: 45: Hoare triple {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} is VALID [2018-11-23 12:20:06,809 INFO L273 TraceCheckUtils]: 46: Hoare triple {3696#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (* 5 (div ~CELLCOUNT~0 5))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,810 INFO L273 TraceCheckUtils]: 47: Hoare triple {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,811 INFO L273 TraceCheckUtils]: 48: Hoare triple {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} assume #t~short30; {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,811 INFO L256 TraceCheckUtils]: 49: Hoare triple {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3683#true} is VALID [2018-11-23 12:20:06,812 INFO L273 TraceCheckUtils]: 50: Hoare triple {3683#true} ~cond := #in~cond; {3683#true} is VALID [2018-11-23 12:20:06,812 INFO L273 TraceCheckUtils]: 51: Hoare triple {3683#true} assume !(0 == ~cond); {3683#true} is VALID [2018-11-23 12:20:06,812 INFO L273 TraceCheckUtils]: 52: Hoare triple {3683#true} assume true; {3683#true} is VALID [2018-11-23 12:20:06,830 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {3683#true} {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} #161#return; {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,831 INFO L273 TraceCheckUtils]: 54: Hoare triple {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} is VALID [2018-11-23 12:20:06,832 INFO L273 TraceCheckUtils]: 55: Hoare triple {3697#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ (* 5 (div ~CELLCOUNT~0 5)) (+ main_~i~0 (- 1)))) (+ |main_~#volArray~0.offset| (- 8))))) (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:20:06,832 INFO L273 TraceCheckUtils]: 56: Hoare triple {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:20:06,833 INFO L273 TraceCheckUtils]: 57: Hoare triple {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} assume #t~short30; {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:20:06,833 INFO L256 TraceCheckUtils]: 58: Hoare triple {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3683#true} is VALID [2018-11-23 12:20:06,833 INFO L273 TraceCheckUtils]: 59: Hoare triple {3683#true} ~cond := #in~cond; {3683#true} is VALID [2018-11-23 12:20:06,834 INFO L273 TraceCheckUtils]: 60: Hoare triple {3683#true} assume !(0 == ~cond); {3683#true} is VALID [2018-11-23 12:20:06,834 INFO L273 TraceCheckUtils]: 61: Hoare triple {3683#true} assume true; {3683#true} is VALID [2018-11-23 12:20:06,835 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {3683#true} {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} #161#return; {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:20:06,835 INFO L273 TraceCheckUtils]: 63: Hoare triple {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:20:06,836 INFO L273 TraceCheckUtils]: 64: Hoare triple {3698#(and (<= 1 (div ~CELLCOUNT~0 5)) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 (+ (* 5 (div ~CELLCOUNT~0 5)) (- 2)))) (+ |main_~#volArray~0.offset| (- 8))))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3699#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:20:06,837 INFO L273 TraceCheckUtils]: 65: Hoare triple {3699#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3700#|main_#t~short30|} is VALID [2018-11-23 12:20:06,837 INFO L273 TraceCheckUtils]: 66: Hoare triple {3700#|main_#t~short30|} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {3684#false} is VALID [2018-11-23 12:20:06,837 INFO L256 TraceCheckUtils]: 67: Hoare triple {3684#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3684#false} is VALID [2018-11-23 12:20:06,837 INFO L273 TraceCheckUtils]: 68: Hoare triple {3684#false} ~cond := #in~cond; {3684#false} is VALID [2018-11-23 12:20:06,838 INFO L273 TraceCheckUtils]: 69: Hoare triple {3684#false} assume 0 == ~cond; {3684#false} is VALID [2018-11-23 12:20:06,838 INFO L273 TraceCheckUtils]: 70: Hoare triple {3684#false} assume !false; {3684#false} is VALID [2018-11-23 12:20:06,860 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 9 proven. 24 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2018-11-23 12:20:06,860 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:06,860 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:06,871 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:20:06,913 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 12:20:06,913 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:06,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:06,951 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:07,281 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2018-11-23 12:20:07,294 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 12 [2018-11-23 12:20:07,295 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,297 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,308 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,308 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:26, output treesize:19 [2018-11-23 12:20:07,311 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:20:07,311 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_74|, main_~CCCELVOL2~0]. (and (= |#memory_int| (store |v_#memory_int_74| |main_~#volArray~0.base| (store (select |v_#memory_int_74| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) main_~CCCELVOL2~0))) (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= main_~i~0 1)) [2018-11-23 12:20:07,311 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8))))) [2018-11-23 12:20:07,350 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:07,352 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 151 treesize of output 222 [2018-11-23 12:20:07,374 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,375 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,376 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,383 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 96 treesize of output 101 [2018-11-23 12:20:07,411 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,413 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,415 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,426 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 71 [2018-11-23 12:20:07,451 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,453 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,455 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,468 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 53 [2018-11-23 12:20:07,481 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,487 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 27 [2018-11-23 12:20:07,489 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,504 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,506 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,510 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,515 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,523 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,523 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 1 variables, input treesize:154, output treesize:13 [2018-11-23 12:20:07,651 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 24 [2018-11-23 12:20:07,657 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,659 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,661 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 52 [2018-11-23 12:20:07,664 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,677 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,689 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,689 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:35, output treesize:31 [2018-11-23 12:20:07,791 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:07,795 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 160 treesize of output 229 [2018-11-23 12:20:07,825 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,826 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,826 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,827 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,828 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,828 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,834 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,841 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 103 treesize of output 142 [2018-11-23 12:20:07,874 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,875 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,876 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,877 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,878 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,879 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,880 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,894 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 65 treesize of output 114 [2018-11-23 12:20:07,923 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,924 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,925 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,927 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:07,934 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 72 [2018-11-23 12:20:07,943 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 40 [2018-11-23 12:20:07,948 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,958 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,964 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,970 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,975 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,982 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,983 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 1 variables, input treesize:163, output treesize:22 [2018-11-23 12:20:08,549 INFO L256 TraceCheckUtils]: 0: Hoare triple {3683#true} call ULTIMATE.init(); {3683#true} is VALID [2018-11-23 12:20:08,550 INFO L273 TraceCheckUtils]: 1: Hoare triple {3683#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {3683#true} is VALID [2018-11-23 12:20:08,550 INFO L273 TraceCheckUtils]: 2: Hoare triple {3683#true} assume true; {3683#true} is VALID [2018-11-23 12:20:08,550 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3683#true} {3683#true} #157#return; {3683#true} is VALID [2018-11-23 12:20:08,550 INFO L256 TraceCheckUtils]: 4: Hoare triple {3683#true} call #t~ret31 := main(); {3683#true} is VALID [2018-11-23 12:20:08,551 INFO L273 TraceCheckUtils]: 5: Hoare triple {3683#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {3683#true} is VALID [2018-11-23 12:20:08,552 INFO L273 TraceCheckUtils]: 6: Hoare triple {3683#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {3722#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (< 1 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:08,553 INFO L273 TraceCheckUtils]: 7: Hoare triple {3722#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (< 1 ~CELLCOUNT~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:08,553 INFO L273 TraceCheckUtils]: 8: Hoare triple {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:08,554 INFO L273 TraceCheckUtils]: 9: Hoare triple {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:08,554 INFO L273 TraceCheckUtils]: 10: Hoare triple {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:08,555 INFO L273 TraceCheckUtils]: 11: Hoare triple {3726#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3739#(and (<= main_~MINVAL~0 2) (<= main_~i~0 2) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:08,556 INFO L273 TraceCheckUtils]: 12: Hoare triple {3739#(and (<= main_~MINVAL~0 2) (<= main_~i~0 2) (<= 3 main_~CCCELVOL2~0) (= (mod ~CELLCOUNT~0 5) 0) (< 1 ~CELLCOUNT~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,556 INFO L273 TraceCheckUtils]: 13: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} ~i~0 := 1; {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,557 INFO L273 TraceCheckUtils]: 14: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,558 INFO L273 TraceCheckUtils]: 15: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,559 INFO L273 TraceCheckUtils]: 16: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,560 INFO L273 TraceCheckUtils]: 17: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,560 INFO L273 TraceCheckUtils]: 18: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,561 INFO L273 TraceCheckUtils]: 19: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} ~i~0 := 1; {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,562 INFO L273 TraceCheckUtils]: 20: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,563 INFO L273 TraceCheckUtils]: 21: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,564 INFO L273 TraceCheckUtils]: 22: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,564 INFO L273 TraceCheckUtils]: 23: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,565 INFO L273 TraceCheckUtils]: 24: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,566 INFO L273 TraceCheckUtils]: 25: Hoare triple {3743#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0))} ~i~0 := 1; {3783#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,567 INFO L273 TraceCheckUtils]: 26: Hoare triple {3783#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3783#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0))} is VALID [2018-11-23 12:20:08,568 INFO L273 TraceCheckUtils]: 27: Hoare triple {3783#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {3790#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,569 INFO L273 TraceCheckUtils]: 28: Hoare triple {3790#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {3794#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2))} is VALID [2018-11-23 12:20:08,570 INFO L273 TraceCheckUtils]: 29: Hoare triple {3794#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {3794#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2))} is VALID [2018-11-23 12:20:08,571 INFO L273 TraceCheckUtils]: 30: Hoare triple {3794#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3794#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2))} is VALID [2018-11-23 12:20:08,572 INFO L273 TraceCheckUtils]: 31: Hoare triple {3794#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2))} ~i~0 := 1; {3790#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,572 INFO L273 TraceCheckUtils]: 32: Hoare triple {3790#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3790#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,574 INFO L273 TraceCheckUtils]: 33: Hoare triple {3790#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,575 INFO L273 TraceCheckUtils]: 34: Hoare triple {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {3814#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,576 INFO L273 TraceCheckUtils]: 35: Hoare triple {3814#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {3814#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,577 INFO L273 TraceCheckUtils]: 36: Hoare triple {3814#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {3814#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,578 INFO L273 TraceCheckUtils]: 37: Hoare triple {3814#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} ~i~0 := 0; {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:08,579 INFO L273 TraceCheckUtils]: 38: Hoare triple {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:08,580 INFO L273 TraceCheckUtils]: 39: Hoare triple {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} assume #t~short30; {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:08,582 INFO L256 TraceCheckUtils]: 40: Hoare triple {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,582 INFO L273 TraceCheckUtils]: 41: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} ~cond := #in~cond; {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,583 INFO L273 TraceCheckUtils]: 42: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} assume !(0 == ~cond); {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,583 INFO L273 TraceCheckUtils]: 43: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} assume true; {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,584 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} #161#return; {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:08,585 INFO L273 TraceCheckUtils]: 45: Hoare triple {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:08,586 INFO L273 TraceCheckUtils]: 46: Hoare triple {3824#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,588 INFO L273 TraceCheckUtils]: 47: Hoare triple {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,588 INFO L273 TraceCheckUtils]: 48: Hoare triple {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} assume #t~short30; {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,591 INFO L256 TraceCheckUtils]: 49: Hoare triple {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,592 INFO L273 TraceCheckUtils]: 50: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} ~cond := #in~cond; {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,593 INFO L273 TraceCheckUtils]: 51: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} assume !(0 == ~cond); {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,593 INFO L273 TraceCheckUtils]: 52: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} assume true; {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,594 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} #161#return; {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,594 INFO L273 TraceCheckUtils]: 54: Hoare triple {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:20:08,615 INFO L273 TraceCheckUtils]: 55: Hoare triple {3810#(and (<= main_~MINVAL~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,617 INFO L273 TraceCheckUtils]: 56: Hoare triple {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,618 INFO L273 TraceCheckUtils]: 57: Hoare triple {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume #t~short30; {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,619 INFO L256 TraceCheckUtils]: 58: Hoare triple {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,619 INFO L273 TraceCheckUtils]: 59: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} ~cond := #in~cond; {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,620 INFO L273 TraceCheckUtils]: 60: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} assume !(0 == ~cond); {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,620 INFO L273 TraceCheckUtils]: 61: Hoare triple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} assume true; {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} is VALID [2018-11-23 12:20:08,621 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {3834#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_4| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_4| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 16))) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_4| 12)))))} {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #161#return; {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,622 INFO L273 TraceCheckUtils]: 63: Hoare triple {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,623 INFO L273 TraceCheckUtils]: 64: Hoare triple {3880#(and (= main_~i~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {3908#(and (= main_~i~0 3) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:08,624 INFO L273 TraceCheckUtils]: 65: Hoare triple {3908#(and (= main_~i~0 3) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 12))) (<= main_~MINVAL~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {3700#|main_#t~short30|} is VALID [2018-11-23 12:20:08,625 INFO L273 TraceCheckUtils]: 66: Hoare triple {3700#|main_#t~short30|} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {3684#false} is VALID [2018-11-23 12:20:08,625 INFO L256 TraceCheckUtils]: 67: Hoare triple {3684#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {3684#false} is VALID [2018-11-23 12:20:08,625 INFO L273 TraceCheckUtils]: 68: Hoare triple {3684#false} ~cond := #in~cond; {3684#false} is VALID [2018-11-23 12:20:08,625 INFO L273 TraceCheckUtils]: 69: Hoare triple {3684#false} assume 0 == ~cond; {3684#false} is VALID [2018-11-23 12:20:08,625 INFO L273 TraceCheckUtils]: 70: Hoare triple {3684#false} assume !false; {3684#false} is VALID [2018-11-23 12:20:08,643 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 9 proven. 24 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2018-11-23 12:20:08,663 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:08,663 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 16] total 31 [2018-11-23 12:20:08,663 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 71 [2018-11-23 12:20:08,664 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:08,664 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states. [2018-11-23 12:20:08,840 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:08,841 INFO L459 AbstractCegarLoop]: Interpolant automaton has 31 states [2018-11-23 12:20:08,841 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2018-11-23 12:20:08,841 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=123, Invalid=807, Unknown=0, NotChecked=0, Total=930 [2018-11-23 12:20:08,842 INFO L87 Difference]: Start difference. First operand 66 states and 75 transitions. Second operand 31 states. [2018-11-23 12:20:18,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:18,300 INFO L93 Difference]: Finished difference Result 193 states and 229 transitions. [2018-11-23 12:20:18,300 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2018-11-23 12:20:18,300 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 71 [2018-11-23 12:20:18,300 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:18,300 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 12:20:18,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 206 transitions. [2018-11-23 12:20:18,304 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 12:20:18,308 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 206 transitions. [2018-11-23 12:20:18,309 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 38 states and 206 transitions. [2018-11-23 12:20:19,018 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:19,023 INFO L225 Difference]: With dead ends: 193 [2018-11-23 12:20:19,023 INFO L226 Difference]: Without dead ends: 154 [2018-11-23 12:20:19,025 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 51 SyntacticMatches, 15 SemanticMatches, 61 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1142 ImplicationChecksByTransitivity, 5.7s TimeCoverageRelationStatistics Valid=835, Invalid=3071, Unknown=0, NotChecked=0, Total=3906 [2018-11-23 12:20:19,026 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2018-11-23 12:20:19,508 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 81. [2018-11-23 12:20:19,508 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:19,509 INFO L82 GeneralOperation]: Start isEquivalent. First operand 154 states. Second operand 81 states. [2018-11-23 12:20:19,509 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand 81 states. [2018-11-23 12:20:19,509 INFO L87 Difference]: Start difference. First operand 154 states. Second operand 81 states. [2018-11-23 12:20:19,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:19,516 INFO L93 Difference]: Finished difference Result 154 states and 178 transitions. [2018-11-23 12:20:19,516 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 178 transitions. [2018-11-23 12:20:19,519 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:19,519 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:19,519 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand 154 states. [2018-11-23 12:20:19,519 INFO L87 Difference]: Start difference. First operand 81 states. Second operand 154 states. [2018-11-23 12:20:19,524 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:19,525 INFO L93 Difference]: Finished difference Result 154 states and 178 transitions. [2018-11-23 12:20:19,525 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 178 transitions. [2018-11-23 12:20:19,526 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:19,526 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:19,526 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:19,526 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:19,526 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 81 states. [2018-11-23 12:20:19,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 91 transitions. [2018-11-23 12:20:19,528 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 91 transitions. Word has length 71 [2018-11-23 12:20:19,528 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:19,528 INFO L480 AbstractCegarLoop]: Abstraction has 81 states and 91 transitions. [2018-11-23 12:20:19,528 INFO L481 AbstractCegarLoop]: Interpolant automaton has 31 states. [2018-11-23 12:20:19,529 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 91 transitions. [2018-11-23 12:20:19,529 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2018-11-23 12:20:19,529 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:19,529 INFO L402 BasicCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:20:19,529 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:19,530 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:19,530 INFO L82 PathProgramCache]: Analyzing trace with hash 1512477674, now seen corresponding path program 4 times [2018-11-23 12:20:19,530 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:19,530 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:19,531 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:19,531 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:19,531 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:19,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:20,496 WARN L180 SmtUtils]: Spent 320.00 ms on a formula simplification. DAG size of input: 20 DAG size of output: 14 [2018-11-23 12:20:21,506 INFO L256 TraceCheckUtils]: 0: Hoare triple {4661#true} call ULTIMATE.init(); {4661#true} is VALID [2018-11-23 12:20:21,507 INFO L273 TraceCheckUtils]: 1: Hoare triple {4661#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {4661#true} is VALID [2018-11-23 12:20:21,507 INFO L273 TraceCheckUtils]: 2: Hoare triple {4661#true} assume true; {4661#true} is VALID [2018-11-23 12:20:21,507 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4661#true} {4661#true} #157#return; {4661#true} is VALID [2018-11-23 12:20:21,507 INFO L256 TraceCheckUtils]: 4: Hoare triple {4661#true} call #t~ret31 := main(); {4661#true} is VALID [2018-11-23 12:20:21,507 INFO L273 TraceCheckUtils]: 5: Hoare triple {4661#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {4661#true} is VALID [2018-11-23 12:20:21,508 INFO L273 TraceCheckUtils]: 6: Hoare triple {4661#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {4663#(and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,509 INFO L273 TraceCheckUtils]: 7: Hoare triple {4663#(and (<= 2 ~CELLCOUNT~0) (= |main_~#volArray~0.offset| 0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,510 INFO L273 TraceCheckUtils]: 8: Hoare triple {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,510 INFO L273 TraceCheckUtils]: 9: Hoare triple {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,512 INFO L273 TraceCheckUtils]: 10: Hoare triple {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,513 INFO L273 TraceCheckUtils]: 11: Hoare triple {4664#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4665#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (or (<= (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 0) (<= (* 5 main_~i~0) 10)) (<= (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,514 INFO L273 TraceCheckUtils]: 12: Hoare triple {4665#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (or (<= (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 0) (<= (* 5 main_~i~0) 10)) (<= (div (+ (* 5 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 5) 1) (< 0 (+ ~CELLCOUNT~0 1)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,515 INFO L273 TraceCheckUtils]: 13: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} ~i~0 := 1; {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,516 INFO L273 TraceCheckUtils]: 14: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,517 INFO L273 TraceCheckUtils]: 15: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,518 INFO L273 TraceCheckUtils]: 16: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,519 INFO L273 TraceCheckUtils]: 17: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,520 INFO L273 TraceCheckUtils]: 18: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,521 INFO L273 TraceCheckUtils]: 19: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} ~i~0 := 1; {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:21,522 INFO L273 TraceCheckUtils]: 20: Hoare triple {4666#(and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (= |main_~#volArray~0.offset| 0) (<= (* 5 (div ~CELLCOUNT~0 5)) 5) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,523 INFO L273 TraceCheckUtils]: 21: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,524 INFO L273 TraceCheckUtils]: 22: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,524 INFO L273 TraceCheckUtils]: 23: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,525 INFO L273 TraceCheckUtils]: 24: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,526 INFO L273 TraceCheckUtils]: 25: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} ~i~0 := 1; {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,527 INFO L273 TraceCheckUtils]: 26: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,527 INFO L273 TraceCheckUtils]: 27: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,529 INFO L273 TraceCheckUtils]: 28: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,529 INFO L273 TraceCheckUtils]: 29: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,530 INFO L273 TraceCheckUtils]: 30: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} is VALID [2018-11-23 12:20:21,531 INFO L273 TraceCheckUtils]: 31: Hoare triple {4667#(and (<= ~CELLCOUNT~0 5) (= |main_~#volArray~0.offset| 0) (or (< ~CELLCOUNT~0 0) (<= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))))} ~i~0 := 1; {4668#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,532 INFO L273 TraceCheckUtils]: 32: Hoare triple {4668#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4668#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,533 INFO L273 TraceCheckUtils]: 33: Hoare triple {4668#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {4669#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (or (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (<= ~CELLCOUNT~0 4)))} is VALID [2018-11-23 12:20:21,534 INFO L273 TraceCheckUtils]: 34: Hoare triple {4669#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (or (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (<= ~CELLCOUNT~0 4)))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {4669#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (or (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (<= ~CELLCOUNT~0 4)))} is VALID [2018-11-23 12:20:21,536 INFO L273 TraceCheckUtils]: 35: Hoare triple {4669#(and (<= ~CELLCOUNT~0 5) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (or (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (<= ~CELLCOUNT~0 4)))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {4670#(and (= |main_~#volArray~0.offset| 0) (or (and (<= ~CELLCOUNT~0 5) (or (<= ~CELLCOUNT~0 4) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4))))))) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (* 4 ~CELLCOUNT~0)) (+ (* 20 (div ~CELLCOUNT~0 5)) 39))))} is VALID [2018-11-23 12:20:21,537 INFO L273 TraceCheckUtils]: 36: Hoare triple {4670#(and (= |main_~#volArray~0.offset| 0) (or (and (<= ~CELLCOUNT~0 5) (or (<= ~CELLCOUNT~0 4) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4))))))) (<= (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (* 4 ~CELLCOUNT~0)) (+ (* 20 (div ~CELLCOUNT~0 5)) 39))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4671#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,538 INFO L273 TraceCheckUtils]: 37: Hoare triple {4671#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 0; {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:21,539 INFO L273 TraceCheckUtils]: 38: Hoare triple {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:21,540 INFO L273 TraceCheckUtils]: 39: Hoare triple {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume #t~short30; {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:21,540 INFO L256 TraceCheckUtils]: 40: Hoare triple {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4661#true} is VALID [2018-11-23 12:20:21,541 INFO L273 TraceCheckUtils]: 41: Hoare triple {4661#true} ~cond := #in~cond; {4661#true} is VALID [2018-11-23 12:20:21,541 INFO L273 TraceCheckUtils]: 42: Hoare triple {4661#true} assume !(0 == ~cond); {4661#true} is VALID [2018-11-23 12:20:21,541 INFO L273 TraceCheckUtils]: 43: Hoare triple {4661#true} assume true; {4661#true} is VALID [2018-11-23 12:20:21,542 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {4661#true} {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} #161#return; {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:21,543 INFO L273 TraceCheckUtils]: 45: Hoare triple {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:21,544 INFO L273 TraceCheckUtils]: 46: Hoare triple {4672#(and (or (and (<= ~CELLCOUNT~0 5) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 5) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) 19)) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} is VALID [2018-11-23 12:20:21,545 INFO L273 TraceCheckUtils]: 47: Hoare triple {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} is VALID [2018-11-23 12:20:21,545 INFO L273 TraceCheckUtils]: 48: Hoare triple {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} assume #t~short30; {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} is VALID [2018-11-23 12:20:21,546 INFO L256 TraceCheckUtils]: 49: Hoare triple {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4661#true} is VALID [2018-11-23 12:20:21,546 INFO L273 TraceCheckUtils]: 50: Hoare triple {4661#true} ~cond := #in~cond; {4661#true} is VALID [2018-11-23 12:20:21,546 INFO L273 TraceCheckUtils]: 51: Hoare triple {4661#true} assume !(0 == ~cond); {4661#true} is VALID [2018-11-23 12:20:21,546 INFO L273 TraceCheckUtils]: 52: Hoare triple {4661#true} assume true; {4661#true} is VALID [2018-11-23 12:20:21,547 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {4661#true} {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} #161#return; {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} is VALID [2018-11-23 12:20:21,548 INFO L273 TraceCheckUtils]: 54: Hoare triple {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} is VALID [2018-11-23 12:20:21,549 INFO L273 TraceCheckUtils]: 55: Hoare triple {4673#(and (= |main_~#volArray~0.offset| 0) (or (and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 4))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 15))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,550 INFO L273 TraceCheckUtils]: 56: Hoare triple {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,550 INFO L273 TraceCheckUtils]: 57: Hoare triple {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} assume #t~short30; {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,551 INFO L256 TraceCheckUtils]: 58: Hoare triple {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4661#true} is VALID [2018-11-23 12:20:21,551 INFO L273 TraceCheckUtils]: 59: Hoare triple {4661#true} ~cond := #in~cond; {4661#true} is VALID [2018-11-23 12:20:21,551 INFO L273 TraceCheckUtils]: 60: Hoare triple {4661#true} assume !(0 == ~cond); {4661#true} is VALID [2018-11-23 12:20:21,551 INFO L273 TraceCheckUtils]: 61: Hoare triple {4661#true} assume true; {4661#true} is VALID [2018-11-23 12:20:21,571 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {4661#true} {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} #161#return; {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,574 INFO L273 TraceCheckUtils]: 63: Hoare triple {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:21,575 INFO L273 TraceCheckUtils]: 64: Hoare triple {4674#(and (or (and (<= ~CELLCOUNT~0 (+ main_~i~0 3)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= (+ |main_~#volArray~0.offset| (* 4 ~CELLCOUNT~0)) (+ (* 4 main_~i~0) 11))) (= |main_~#volArray~0.offset| 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:20:21,576 INFO L273 TraceCheckUtils]: 65: Hoare triple {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:20:21,576 INFO L273 TraceCheckUtils]: 66: Hoare triple {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} assume #t~short30; {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:20:21,576 INFO L256 TraceCheckUtils]: 67: Hoare triple {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4661#true} is VALID [2018-11-23 12:20:21,576 INFO L273 TraceCheckUtils]: 68: Hoare triple {4661#true} ~cond := #in~cond; {4661#true} is VALID [2018-11-23 12:20:21,577 INFO L273 TraceCheckUtils]: 69: Hoare triple {4661#true} assume !(0 == ~cond); {4661#true} is VALID [2018-11-23 12:20:21,577 INFO L273 TraceCheckUtils]: 70: Hoare triple {4661#true} assume true; {4661#true} is VALID [2018-11-23 12:20:21,578 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {4661#true} {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} #161#return; {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:20:21,578 INFO L273 TraceCheckUtils]: 72: Hoare triple {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:20:21,579 INFO L273 TraceCheckUtils]: 73: Hoare triple {4675#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 (+ main_~i~0 1)) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4676#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))))} is VALID [2018-11-23 12:20:21,580 INFO L273 TraceCheckUtils]: 74: Hoare triple {4676#(and (= |main_~#volArray~0.offset| 0) (or (<= ~CELLCOUNT~0 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4677#(and (= |main_~#volArray~0.offset| 0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|))))} is VALID [2018-11-23 12:20:21,581 INFO L273 TraceCheckUtils]: 75: Hoare triple {4677#(and (= |main_~#volArray~0.offset| 0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|))))} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {4678#|main_#t~short30|} is VALID [2018-11-23 12:20:21,582 INFO L256 TraceCheckUtils]: 76: Hoare triple {4678#|main_#t~short30|} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4679#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2018-11-23 12:20:21,582 INFO L273 TraceCheckUtils]: 77: Hoare triple {4679#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {4680#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2018-11-23 12:20:21,583 INFO L273 TraceCheckUtils]: 78: Hoare triple {4680#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {4662#false} is VALID [2018-11-23 12:20:21,583 INFO L273 TraceCheckUtils]: 79: Hoare triple {4662#false} assume !false; {4662#false} is VALID [2018-11-23 12:20:21,607 INFO L134 CoverageAnalysis]: Checked inductivity of 79 backedges. 23 proven. 30 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2018-11-23 12:20:21,607 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:21,607 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:21,616 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:20:21,648 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:20:21,648 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:21,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:21,669 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:21,773 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2018-11-23 12:20:21,777 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 12 [2018-11-23 12:20:21,779 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,782 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,790 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,790 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:23, output treesize:19 [2018-11-23 12:20:21,841 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:21,842 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 151 treesize of output 222 [2018-11-23 12:20:21,867 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,868 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,869 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,875 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 96 treesize of output 101 [2018-11-23 12:20:21,891 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,892 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,893 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,899 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 71 [2018-11-23 12:20:21,915 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,916 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,917 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,924 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 53 [2018-11-23 12:20:21,929 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:21,932 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 27 [2018-11-23 12:20:21,935 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,942 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,945 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,947 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,950 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,955 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:21,955 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 1 variables, input treesize:154, output treesize:13 [2018-11-23 12:20:22,555 INFO L256 TraceCheckUtils]: 0: Hoare triple {4661#true} call ULTIMATE.init(); {4661#true} is VALID [2018-11-23 12:20:22,556 INFO L273 TraceCheckUtils]: 1: Hoare triple {4661#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {4661#true} is VALID [2018-11-23 12:20:22,556 INFO L273 TraceCheckUtils]: 2: Hoare triple {4661#true} assume true; {4661#true} is VALID [2018-11-23 12:20:22,556 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4661#true} {4661#true} #157#return; {4661#true} is VALID [2018-11-23 12:20:22,556 INFO L256 TraceCheckUtils]: 4: Hoare triple {4661#true} call #t~ret31 := main(); {4661#true} is VALID [2018-11-23 12:20:22,556 INFO L273 TraceCheckUtils]: 5: Hoare triple {4661#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {4661#true} is VALID [2018-11-23 12:20:22,557 INFO L273 TraceCheckUtils]: 6: Hoare triple {4661#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,557 INFO L273 TraceCheckUtils]: 7: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 8: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 9: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 10: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 11: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 12: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 13: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} ~i~0 := 1; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,560 INFO L273 TraceCheckUtils]: 14: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,560 INFO L273 TraceCheckUtils]: 15: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,561 INFO L273 TraceCheckUtils]: 16: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,561 INFO L273 TraceCheckUtils]: 17: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,562 INFO L273 TraceCheckUtils]: 18: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,562 INFO L273 TraceCheckUtils]: 19: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} ~i~0 := 1; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,563 INFO L273 TraceCheckUtils]: 20: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,563 INFO L273 TraceCheckUtils]: 21: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,564 INFO L273 TraceCheckUtils]: 22: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,564 INFO L273 TraceCheckUtils]: 23: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,565 INFO L273 TraceCheckUtils]: 24: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,565 INFO L273 TraceCheckUtils]: 25: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} ~i~0 := 1; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,566 INFO L273 TraceCheckUtils]: 26: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,566 INFO L273 TraceCheckUtils]: 27: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,568 INFO L273 TraceCheckUtils]: 28: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,569 INFO L273 TraceCheckUtils]: 29: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,569 INFO L273 TraceCheckUtils]: 30: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4702#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:20:22,570 INFO L273 TraceCheckUtils]: 31: Hoare triple {4702#(= |main_~#volArray~0.offset| 0)} ~i~0 := 1; {4778#(and (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,570 INFO L273 TraceCheckUtils]: 32: Hoare triple {4778#(and (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4778#(and (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,571 INFO L273 TraceCheckUtils]: 33: Hoare triple {4778#(and (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,571 INFO L273 TraceCheckUtils]: 34: Hoare triple {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {4789#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,572 INFO L273 TraceCheckUtils]: 35: Hoare triple {4789#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {4789#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,573 INFO L273 TraceCheckUtils]: 36: Hoare triple {4789#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {4789#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,573 INFO L273 TraceCheckUtils]: 37: Hoare triple {4789#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} ~i~0 := 0; {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,574 INFO L273 TraceCheckUtils]: 38: Hoare triple {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,575 INFO L273 TraceCheckUtils]: 39: Hoare triple {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} assume #t~short30; {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,577 INFO L256 TraceCheckUtils]: 40: Hoare triple {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,578 INFO L273 TraceCheckUtils]: 41: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,578 INFO L273 TraceCheckUtils]: 42: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,579 INFO L273 TraceCheckUtils]: 43: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,580 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} #161#return; {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,580 INFO L273 TraceCheckUtils]: 45: Hoare triple {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,581 INFO L273 TraceCheckUtils]: 46: Hoare triple {4799#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,582 INFO L273 TraceCheckUtils]: 47: Hoare triple {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,583 INFO L273 TraceCheckUtils]: 48: Hoare triple {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume #t~short30; {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,585 INFO L256 TraceCheckUtils]: 49: Hoare triple {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,586 INFO L273 TraceCheckUtils]: 50: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,586 INFO L273 TraceCheckUtils]: 51: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,587 INFO L273 TraceCheckUtils]: 52: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,588 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} #161#return; {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,589 INFO L273 TraceCheckUtils]: 54: Hoare triple {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:20:22,590 INFO L273 TraceCheckUtils]: 55: Hoare triple {4785#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,591 INFO L273 TraceCheckUtils]: 56: Hoare triple {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,592 INFO L273 TraceCheckUtils]: 57: Hoare triple {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume #t~short30; {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,594 INFO L256 TraceCheckUtils]: 58: Hoare triple {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,594 INFO L273 TraceCheckUtils]: 59: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,595 INFO L273 TraceCheckUtils]: 60: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,596 INFO L273 TraceCheckUtils]: 61: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,597 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #161#return; {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,597 INFO L273 TraceCheckUtils]: 63: Hoare triple {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,598 INFO L273 TraceCheckUtils]: 64: Hoare triple {4855#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,599 INFO L273 TraceCheckUtils]: 65: Hoare triple {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,600 INFO L273 TraceCheckUtils]: 66: Hoare triple {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume #t~short30; {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,602 INFO L256 TraceCheckUtils]: 67: Hoare triple {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,603 INFO L273 TraceCheckUtils]: 68: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,603 INFO L273 TraceCheckUtils]: 69: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,604 INFO L273 TraceCheckUtils]: 70: Hoare triple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:20:22,605 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {4809#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_7|) 16) 0))} {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #161#return; {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,605 INFO L273 TraceCheckUtils]: 72: Hoare triple {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:22,606 INFO L273 TraceCheckUtils]: 73: Hoare triple {4883#(and (= main_~i~0 3) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {4911#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:22,607 INFO L273 TraceCheckUtils]: 74: Hoare triple {4911#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 4))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {4911#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:22,608 INFO L273 TraceCheckUtils]: 75: Hoare triple {4911#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 4))} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {4678#|main_#t~short30|} is VALID [2018-11-23 12:20:22,609 INFO L256 TraceCheckUtils]: 76: Hoare triple {4678#|main_#t~short30|} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {4921#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:20:22,610 INFO L273 TraceCheckUtils]: 77: Hoare triple {4921#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {4925#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:20:22,611 INFO L273 TraceCheckUtils]: 78: Hoare triple {4925#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4662#false} is VALID [2018-11-23 12:20:22,611 INFO L273 TraceCheckUtils]: 79: Hoare triple {4662#false} assume !false; {4662#false} is VALID [2018-11-23 12:20:22,625 INFO L134 CoverageAnalysis]: Checked inductivity of 79 backedges. 0 proven. 51 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2018-11-23 12:20:22,644 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:22,645 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 14] total 31 [2018-11-23 12:20:22,645 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 80 [2018-11-23 12:20:22,646 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:22,646 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states. [2018-11-23 12:20:22,832 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:22,832 INFO L459 AbstractCegarLoop]: Interpolant automaton has 31 states [2018-11-23 12:20:22,832 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2018-11-23 12:20:22,833 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=119, Invalid=811, Unknown=0, NotChecked=0, Total=930 [2018-11-23 12:20:22,833 INFO L87 Difference]: Start difference. First operand 81 states and 91 transitions. Second operand 31 states. [2018-11-23 12:20:31,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:31,514 INFO L93 Difference]: Finished difference Result 278 states and 323 transitions. [2018-11-23 12:20:31,514 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2018-11-23 12:20:31,515 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 80 [2018-11-23 12:20:31,515 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:31,515 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 12:20:31,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 256 transitions. [2018-11-23 12:20:31,519 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 12:20:31,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 256 transitions. [2018-11-23 12:20:31,522 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 37 states and 256 transitions. [2018-11-23 12:20:31,929 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 256 edges. 256 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:31,936 INFO L225 Difference]: With dead ends: 278 [2018-11-23 12:20:31,936 INFO L226 Difference]: Without dead ends: 126 [2018-11-23 12:20:31,938 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 63 SyntacticMatches, 9 SemanticMatches, 61 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1213 ImplicationChecksByTransitivity, 3.3s TimeCoverageRelationStatistics Valid=552, Invalid=3354, Unknown=0, NotChecked=0, Total=3906 [2018-11-23 12:20:31,938 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2018-11-23 12:20:32,640 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 95. [2018-11-23 12:20:32,640 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:32,640 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand 95 states. [2018-11-23 12:20:32,640 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand 95 states. [2018-11-23 12:20:32,640 INFO L87 Difference]: Start difference. First operand 126 states. Second operand 95 states. [2018-11-23 12:20:32,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:32,647 INFO L93 Difference]: Finished difference Result 126 states and 142 transitions. [2018-11-23 12:20:32,647 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 142 transitions. [2018-11-23 12:20:32,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:32,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:32,648 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 126 states. [2018-11-23 12:20:32,648 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 126 states. [2018-11-23 12:20:32,650 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:32,651 INFO L93 Difference]: Finished difference Result 126 states and 142 transitions. [2018-11-23 12:20:32,651 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 142 transitions. [2018-11-23 12:20:32,651 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:32,651 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:32,651 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:32,651 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:32,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 95 states. [2018-11-23 12:20:32,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 107 transitions. [2018-11-23 12:20:32,653 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 107 transitions. Word has length 80 [2018-11-23 12:20:32,653 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:32,653 INFO L480 AbstractCegarLoop]: Abstraction has 95 states and 107 transitions. [2018-11-23 12:20:32,654 INFO L481 AbstractCegarLoop]: Interpolant automaton has 31 states. [2018-11-23 12:20:32,654 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 107 transitions. [2018-11-23 12:20:32,655 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2018-11-23 12:20:32,655 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:32,655 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 5, 5, 5, 5, 5, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:20:32,655 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:32,655 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:32,655 INFO L82 PathProgramCache]: Analyzing trace with hash 1909752078, now seen corresponding path program 5 times [2018-11-23 12:20:32,656 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:32,656 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:32,656 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:32,656 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:32,657 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:32,670 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:33,239 INFO L256 TraceCheckUtils]: 0: Hoare triple {5746#true} call ULTIMATE.init(); {5746#true} is VALID [2018-11-23 12:20:33,239 INFO L273 TraceCheckUtils]: 1: Hoare triple {5746#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {5746#true} is VALID [2018-11-23 12:20:33,239 INFO L273 TraceCheckUtils]: 2: Hoare triple {5746#true} assume true; {5746#true} is VALID [2018-11-23 12:20:33,239 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5746#true} {5746#true} #157#return; {5746#true} is VALID [2018-11-23 12:20:33,239 INFO L256 TraceCheckUtils]: 4: Hoare triple {5746#true} call #t~ret31 := main(); {5746#true} is VALID [2018-11-23 12:20:33,240 INFO L273 TraceCheckUtils]: 5: Hoare triple {5746#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {5746#true} is VALID [2018-11-23 12:20:33,240 INFO L273 TraceCheckUtils]: 6: Hoare triple {5746#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {5748#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:20:33,242 INFO L273 TraceCheckUtils]: 7: Hoare triple {5748#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:33,242 INFO L273 TraceCheckUtils]: 8: Hoare triple {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:33,244 INFO L273 TraceCheckUtils]: 9: Hoare triple {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:33,245 INFO L273 TraceCheckUtils]: 10: Hoare triple {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:33,246 INFO L273 TraceCheckUtils]: 11: Hoare triple {5749#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5750#(and (<= 2 main_~i~0) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:33,246 INFO L273 TraceCheckUtils]: 12: Hoare triple {5750#(and (<= 2 main_~i~0) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,263 INFO L273 TraceCheckUtils]: 13: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,276 INFO L273 TraceCheckUtils]: 14: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,289 INFO L273 TraceCheckUtils]: 15: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,303 INFO L273 TraceCheckUtils]: 16: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,311 INFO L273 TraceCheckUtils]: 17: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,324 INFO L273 TraceCheckUtils]: 18: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,339 INFO L273 TraceCheckUtils]: 19: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,352 INFO L273 TraceCheckUtils]: 20: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,356 INFO L273 TraceCheckUtils]: 21: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,356 INFO L273 TraceCheckUtils]: 22: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,357 INFO L273 TraceCheckUtils]: 23: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,357 INFO L273 TraceCheckUtils]: 24: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,357 INFO L273 TraceCheckUtils]: 25: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,358 INFO L273 TraceCheckUtils]: 26: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,358 INFO L273 TraceCheckUtils]: 27: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,358 INFO L273 TraceCheckUtils]: 28: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,359 INFO L273 TraceCheckUtils]: 29: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,359 INFO L273 TraceCheckUtils]: 30: Hoare triple {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,360 INFO L273 TraceCheckUtils]: 31: Hoare triple {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,361 INFO L273 TraceCheckUtils]: 32: Hoare triple {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,362 INFO L273 TraceCheckUtils]: 33: Hoare triple {5752#(and (= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {5753#(or (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,364 INFO L273 TraceCheckUtils]: 34: Hoare triple {5753#(or (and (< ~CELLCOUNT~0 0) (not (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5)))) (<= main_~i~0 (+ (div ~CELLCOUNT~0 5) 1))) (<= main_~i~0 (div ~CELLCOUNT~0 5)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5747#false} is VALID [2018-11-23 12:20:33,364 INFO L273 TraceCheckUtils]: 35: Hoare triple {5747#false} ~i~0 := 1; {5747#false} is VALID [2018-11-23 12:20:33,364 INFO L273 TraceCheckUtils]: 36: Hoare triple {5747#false} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5747#false} is VALID [2018-11-23 12:20:33,364 INFO L273 TraceCheckUtils]: 37: Hoare triple {5747#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {5747#false} is VALID [2018-11-23 12:20:33,364 INFO L273 TraceCheckUtils]: 38: Hoare triple {5747#false} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {5747#false} is VALID [2018-11-23 12:20:33,365 INFO L273 TraceCheckUtils]: 39: Hoare triple {5747#false} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {5747#false} is VALID [2018-11-23 12:20:33,365 INFO L273 TraceCheckUtils]: 40: Hoare triple {5747#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5747#false} is VALID [2018-11-23 12:20:33,365 INFO L273 TraceCheckUtils]: 41: Hoare triple {5747#false} ~i~0 := 0; {5747#false} is VALID [2018-11-23 12:20:33,365 INFO L273 TraceCheckUtils]: 42: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,365 INFO L273 TraceCheckUtils]: 43: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,365 INFO L256 TraceCheckUtils]: 44: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5746#true} is VALID [2018-11-23 12:20:33,366 INFO L273 TraceCheckUtils]: 45: Hoare triple {5746#true} ~cond := #in~cond; {5746#true} is VALID [2018-11-23 12:20:33,366 INFO L273 TraceCheckUtils]: 46: Hoare triple {5746#true} assume !(0 == ~cond); {5746#true} is VALID [2018-11-23 12:20:33,366 INFO L273 TraceCheckUtils]: 47: Hoare triple {5746#true} assume true; {5746#true} is VALID [2018-11-23 12:20:33,366 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {5746#true} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,366 INFO L273 TraceCheckUtils]: 49: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,366 INFO L273 TraceCheckUtils]: 50: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,367 INFO L273 TraceCheckUtils]: 51: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,367 INFO L273 TraceCheckUtils]: 52: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,367 INFO L256 TraceCheckUtils]: 53: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5746#true} is VALID [2018-11-23 12:20:33,367 INFO L273 TraceCheckUtils]: 54: Hoare triple {5746#true} ~cond := #in~cond; {5746#true} is VALID [2018-11-23 12:20:33,367 INFO L273 TraceCheckUtils]: 55: Hoare triple {5746#true} assume !(0 == ~cond); {5746#true} is VALID [2018-11-23 12:20:33,367 INFO L273 TraceCheckUtils]: 56: Hoare triple {5746#true} assume true; {5746#true} is VALID [2018-11-23 12:20:33,367 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {5746#true} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,367 INFO L273 TraceCheckUtils]: 58: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,367 INFO L273 TraceCheckUtils]: 59: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,368 INFO L273 TraceCheckUtils]: 60: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,368 INFO L273 TraceCheckUtils]: 61: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,368 INFO L256 TraceCheckUtils]: 62: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5746#true} is VALID [2018-11-23 12:20:33,368 INFO L273 TraceCheckUtils]: 63: Hoare triple {5746#true} ~cond := #in~cond; {5746#true} is VALID [2018-11-23 12:20:33,368 INFO L273 TraceCheckUtils]: 64: Hoare triple {5746#true} assume !(0 == ~cond); {5746#true} is VALID [2018-11-23 12:20:33,368 INFO L273 TraceCheckUtils]: 65: Hoare triple {5746#true} assume true; {5746#true} is VALID [2018-11-23 12:20:33,368 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {5746#true} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,368 INFO L273 TraceCheckUtils]: 67: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,368 INFO L273 TraceCheckUtils]: 68: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,369 INFO L273 TraceCheckUtils]: 69: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,369 INFO L273 TraceCheckUtils]: 70: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,369 INFO L256 TraceCheckUtils]: 71: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5746#true} is VALID [2018-11-23 12:20:33,369 INFO L273 TraceCheckUtils]: 72: Hoare triple {5746#true} ~cond := #in~cond; {5746#true} is VALID [2018-11-23 12:20:33,369 INFO L273 TraceCheckUtils]: 73: Hoare triple {5746#true} assume !(0 == ~cond); {5746#true} is VALID [2018-11-23 12:20:33,369 INFO L273 TraceCheckUtils]: 74: Hoare triple {5746#true} assume true; {5746#true} is VALID [2018-11-23 12:20:33,369 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {5746#true} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,369 INFO L273 TraceCheckUtils]: 76: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,370 INFO L273 TraceCheckUtils]: 77: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,370 INFO L273 TraceCheckUtils]: 78: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,370 INFO L273 TraceCheckUtils]: 79: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,370 INFO L256 TraceCheckUtils]: 80: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5746#true} is VALID [2018-11-23 12:20:33,370 INFO L273 TraceCheckUtils]: 81: Hoare triple {5746#true} ~cond := #in~cond; {5746#true} is VALID [2018-11-23 12:20:33,370 INFO L273 TraceCheckUtils]: 82: Hoare triple {5746#true} assume !(0 == ~cond); {5746#true} is VALID [2018-11-23 12:20:33,370 INFO L273 TraceCheckUtils]: 83: Hoare triple {5746#true} assume true; {5746#true} is VALID [2018-11-23 12:20:33,370 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {5746#true} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,370 INFO L273 TraceCheckUtils]: 85: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,371 INFO L273 TraceCheckUtils]: 86: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,371 INFO L273 TraceCheckUtils]: 87: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,371 INFO L273 TraceCheckUtils]: 88: Hoare triple {5747#false} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {5747#false} is VALID [2018-11-23 12:20:33,371 INFO L256 TraceCheckUtils]: 89: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5747#false} is VALID [2018-11-23 12:20:33,371 INFO L273 TraceCheckUtils]: 90: Hoare triple {5747#false} ~cond := #in~cond; {5747#false} is VALID [2018-11-23 12:20:33,371 INFO L273 TraceCheckUtils]: 91: Hoare triple {5747#false} assume 0 == ~cond; {5747#false} is VALID [2018-11-23 12:20:33,371 INFO L273 TraceCheckUtils]: 92: Hoare triple {5747#false} assume !false; {5747#false} is VALID [2018-11-23 12:20:33,379 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2018-11-23 12:20:33,379 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:33,379 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:33,388 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:20:33,450 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2018-11-23 12:20:33,451 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:33,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:33,475 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:33,698 INFO L256 TraceCheckUtils]: 0: Hoare triple {5746#true} call ULTIMATE.init(); {5746#true} is VALID [2018-11-23 12:20:33,698 INFO L273 TraceCheckUtils]: 1: Hoare triple {5746#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {5746#true} is VALID [2018-11-23 12:20:33,698 INFO L273 TraceCheckUtils]: 2: Hoare triple {5746#true} assume true; {5746#true} is VALID [2018-11-23 12:20:33,699 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5746#true} {5746#true} #157#return; {5746#true} is VALID [2018-11-23 12:20:33,699 INFO L256 TraceCheckUtils]: 4: Hoare triple {5746#true} call #t~ret31 := main(); {5746#true} is VALID [2018-11-23 12:20:33,699 INFO L273 TraceCheckUtils]: 5: Hoare triple {5746#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {5746#true} is VALID [2018-11-23 12:20:33,700 INFO L273 TraceCheckUtils]: 6: Hoare triple {5746#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {5748#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:20:33,701 INFO L273 TraceCheckUtils]: 7: Hoare triple {5748#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:33,701 INFO L273 TraceCheckUtils]: 8: Hoare triple {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:33,702 INFO L273 TraceCheckUtils]: 9: Hoare triple {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:33,703 INFO L273 TraceCheckUtils]: 10: Hoare triple {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:33,704 INFO L273 TraceCheckUtils]: 11: Hoare triple {5778#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5791#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0))} is VALID [2018-11-23 12:20:33,705 INFO L273 TraceCheckUtils]: 12: Hoare triple {5791#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,705 INFO L273 TraceCheckUtils]: 13: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,706 INFO L273 TraceCheckUtils]: 14: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,707 INFO L273 TraceCheckUtils]: 15: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,707 INFO L273 TraceCheckUtils]: 16: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,708 INFO L273 TraceCheckUtils]: 17: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,708 INFO L273 TraceCheckUtils]: 18: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,709 INFO L273 TraceCheckUtils]: 19: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,709 INFO L273 TraceCheckUtils]: 20: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,710 INFO L273 TraceCheckUtils]: 21: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,710 INFO L273 TraceCheckUtils]: 22: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,711 INFO L273 TraceCheckUtils]: 23: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,711 INFO L273 TraceCheckUtils]: 24: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,712 INFO L273 TraceCheckUtils]: 25: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,712 INFO L273 TraceCheckUtils]: 26: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,713 INFO L273 TraceCheckUtils]: 27: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,713 INFO L273 TraceCheckUtils]: 28: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5751#(<= 2 (div ~CELLCOUNT~0 5))} is VALID [2018-11-23 12:20:33,714 INFO L273 TraceCheckUtils]: 29: Hoare triple {5751#(<= 2 (div ~CELLCOUNT~0 5))} ~i~0 := 1; {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,715 INFO L273 TraceCheckUtils]: 30: Hoare triple {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,716 INFO L273 TraceCheckUtils]: 31: Hoare triple {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,717 INFO L273 TraceCheckUtils]: 32: Hoare triple {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,717 INFO L273 TraceCheckUtils]: 33: Hoare triple {5846#(and (<= main_~i~0 1) (<= 2 (div ~CELLCOUNT~0 5)))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {5859#(and (<= main_~i~0 2) (<= 2 (div ~CELLCOUNT~0 5)))} is VALID [2018-11-23 12:20:33,719 INFO L273 TraceCheckUtils]: 34: Hoare triple {5859#(and (<= main_~i~0 2) (<= 2 (div ~CELLCOUNT~0 5)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5747#false} is VALID [2018-11-23 12:20:33,719 INFO L273 TraceCheckUtils]: 35: Hoare triple {5747#false} ~i~0 := 1; {5747#false} is VALID [2018-11-23 12:20:33,719 INFO L273 TraceCheckUtils]: 36: Hoare triple {5747#false} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5747#false} is VALID [2018-11-23 12:20:33,719 INFO L273 TraceCheckUtils]: 37: Hoare triple {5747#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {5747#false} is VALID [2018-11-23 12:20:33,719 INFO L273 TraceCheckUtils]: 38: Hoare triple {5747#false} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {5747#false} is VALID [2018-11-23 12:20:33,720 INFO L273 TraceCheckUtils]: 39: Hoare triple {5747#false} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {5747#false} is VALID [2018-11-23 12:20:33,720 INFO L273 TraceCheckUtils]: 40: Hoare triple {5747#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {5747#false} is VALID [2018-11-23 12:20:33,720 INFO L273 TraceCheckUtils]: 41: Hoare triple {5747#false} ~i~0 := 0; {5747#false} is VALID [2018-11-23 12:20:33,720 INFO L273 TraceCheckUtils]: 42: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,720 INFO L273 TraceCheckUtils]: 43: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,721 INFO L256 TraceCheckUtils]: 44: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5747#false} is VALID [2018-11-23 12:20:33,721 INFO L273 TraceCheckUtils]: 45: Hoare triple {5747#false} ~cond := #in~cond; {5747#false} is VALID [2018-11-23 12:20:33,721 INFO L273 TraceCheckUtils]: 46: Hoare triple {5747#false} assume !(0 == ~cond); {5747#false} is VALID [2018-11-23 12:20:33,721 INFO L273 TraceCheckUtils]: 47: Hoare triple {5747#false} assume true; {5747#false} is VALID [2018-11-23 12:20:33,721 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {5747#false} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,721 INFO L273 TraceCheckUtils]: 49: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,721 INFO L273 TraceCheckUtils]: 50: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L273 TraceCheckUtils]: 51: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L273 TraceCheckUtils]: 52: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L256 TraceCheckUtils]: 53: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L273 TraceCheckUtils]: 54: Hoare triple {5747#false} ~cond := #in~cond; {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L273 TraceCheckUtils]: 55: Hoare triple {5747#false} assume !(0 == ~cond); {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L273 TraceCheckUtils]: 56: Hoare triple {5747#false} assume true; {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {5747#false} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L273 TraceCheckUtils]: 58: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,722 INFO L273 TraceCheckUtils]: 59: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L273 TraceCheckUtils]: 60: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L273 TraceCheckUtils]: 61: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L256 TraceCheckUtils]: 62: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L273 TraceCheckUtils]: 63: Hoare triple {5747#false} ~cond := #in~cond; {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L273 TraceCheckUtils]: 64: Hoare triple {5747#false} assume !(0 == ~cond); {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L273 TraceCheckUtils]: 65: Hoare triple {5747#false} assume true; {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {5747#false} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,723 INFO L273 TraceCheckUtils]: 67: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L273 TraceCheckUtils]: 68: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L273 TraceCheckUtils]: 69: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L273 TraceCheckUtils]: 70: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L256 TraceCheckUtils]: 71: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L273 TraceCheckUtils]: 72: Hoare triple {5747#false} ~cond := #in~cond; {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L273 TraceCheckUtils]: 73: Hoare triple {5747#false} assume !(0 == ~cond); {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L273 TraceCheckUtils]: 74: Hoare triple {5747#false} assume true; {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {5747#false} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,724 INFO L273 TraceCheckUtils]: 76: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L273 TraceCheckUtils]: 77: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L273 TraceCheckUtils]: 78: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L273 TraceCheckUtils]: 79: Hoare triple {5747#false} assume #t~short30; {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L256 TraceCheckUtils]: 80: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L273 TraceCheckUtils]: 81: Hoare triple {5747#false} ~cond := #in~cond; {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L273 TraceCheckUtils]: 82: Hoare triple {5747#false} assume !(0 == ~cond); {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L273 TraceCheckUtils]: 83: Hoare triple {5747#false} assume true; {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {5747#false} {5747#false} #161#return; {5747#false} is VALID [2018-11-23 12:20:33,725 INFO L273 TraceCheckUtils]: 85: Hoare triple {5747#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {5747#false} is VALID [2018-11-23 12:20:33,726 INFO L273 TraceCheckUtils]: 86: Hoare triple {5747#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {5747#false} is VALID [2018-11-23 12:20:33,726 INFO L273 TraceCheckUtils]: 87: Hoare triple {5747#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {5747#false} is VALID [2018-11-23 12:20:33,726 INFO L273 TraceCheckUtils]: 88: Hoare triple {5747#false} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {5747#false} is VALID [2018-11-23 12:20:33,726 INFO L256 TraceCheckUtils]: 89: Hoare triple {5747#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {5747#false} is VALID [2018-11-23 12:20:33,726 INFO L273 TraceCheckUtils]: 90: Hoare triple {5747#false} ~cond := #in~cond; {5747#false} is VALID [2018-11-23 12:20:33,726 INFO L273 TraceCheckUtils]: 91: Hoare triple {5747#false} assume 0 == ~cond; {5747#false} is VALID [2018-11-23 12:20:33,726 INFO L273 TraceCheckUtils]: 92: Hoare triple {5747#false} assume !false; {5747#false} is VALID [2018-11-23 12:20:33,734 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 118 trivial. 0 not checked. [2018-11-23 12:20:33,754 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:33,755 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2018-11-23 12:20:33,755 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 93 [2018-11-23 12:20:33,760 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:33,761 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-23 12:20:33,855 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:33,855 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 12:20:33,855 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 12:20:33,855 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=92, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:20:33,856 INFO L87 Difference]: Start difference. First operand 95 states and 107 transitions. Second operand 12 states. [2018-11-23 12:20:35,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:35,426 INFO L93 Difference]: Finished difference Result 185 states and 210 transitions. [2018-11-23 12:20:35,426 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:20:35,426 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 93 [2018-11-23 12:20:35,426 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:35,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:20:35,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 134 transitions. [2018-11-23 12:20:35,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:20:35,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 134 transitions. [2018-11-23 12:20:35,430 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 134 transitions. [2018-11-23 12:20:35,857 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:35,860 INFO L225 Difference]: With dead ends: 185 [2018-11-23 12:20:35,861 INFO L226 Difference]: Without dead ends: 113 [2018-11-23 12:20:35,861 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 107 GetRequests, 89 SyntacticMatches, 4 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=74, Invalid=166, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:20:35,861 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2018-11-23 12:20:36,411 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 101. [2018-11-23 12:20:36,411 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:36,411 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand 101 states. [2018-11-23 12:20:36,412 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 101 states. [2018-11-23 12:20:36,412 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 101 states. [2018-11-23 12:20:36,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:36,415 INFO L93 Difference]: Finished difference Result 113 states and 124 transitions. [2018-11-23 12:20:36,415 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 124 transitions. [2018-11-23 12:20:36,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:36,416 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:36,416 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 113 states. [2018-11-23 12:20:36,416 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 113 states. [2018-11-23 12:20:36,419 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:36,419 INFO L93 Difference]: Finished difference Result 113 states and 124 transitions. [2018-11-23 12:20:36,419 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 124 transitions. [2018-11-23 12:20:36,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:36,420 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:36,420 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:36,420 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:36,420 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-23 12:20:36,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 112 transitions. [2018-11-23 12:20:36,423 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 112 transitions. Word has length 93 [2018-11-23 12:20:36,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:36,423 INFO L480 AbstractCegarLoop]: Abstraction has 101 states and 112 transitions. [2018-11-23 12:20:36,423 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 12:20:36,423 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 112 transitions. [2018-11-23 12:20:36,424 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2018-11-23 12:20:36,424 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:36,425 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 5, 5, 5, 5, 5, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1] [2018-11-23 12:20:36,425 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:36,425 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:36,425 INFO L82 PathProgramCache]: Analyzing trace with hash 2069213368, now seen corresponding path program 6 times [2018-11-23 12:20:36,425 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:36,426 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:36,426 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:36,426 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:36,427 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:36,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:39,529 INFO L256 TraceCheckUtils]: 0: Hoare triple {6651#true} call ULTIMATE.init(); {6651#true} is VALID [2018-11-23 12:20:39,530 INFO L273 TraceCheckUtils]: 1: Hoare triple {6651#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {6651#true} is VALID [2018-11-23 12:20:39,530 INFO L273 TraceCheckUtils]: 2: Hoare triple {6651#true} assume true; {6651#true} is VALID [2018-11-23 12:20:39,530 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6651#true} {6651#true} #157#return; {6651#true} is VALID [2018-11-23 12:20:39,530 INFO L256 TraceCheckUtils]: 4: Hoare triple {6651#true} call #t~ret31 := main(); {6651#true} is VALID [2018-11-23 12:20:39,530 INFO L273 TraceCheckUtils]: 5: Hoare triple {6651#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {6651#true} is VALID [2018-11-23 12:20:39,532 INFO L273 TraceCheckUtils]: 6: Hoare triple {6651#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {6653#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:20:39,532 INFO L273 TraceCheckUtils]: 7: Hoare triple {6653#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:20:39,533 INFO L273 TraceCheckUtils]: 8: Hoare triple {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:20:39,534 INFO L273 TraceCheckUtils]: 9: Hoare triple {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:20:39,535 INFO L273 TraceCheckUtils]: 10: Hoare triple {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:20:39,536 INFO L273 TraceCheckUtils]: 11: Hoare triple {6654#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6655#(and (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:20:39,537 INFO L273 TraceCheckUtils]: 12: Hoare triple {6655#(and (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6655#(and (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} is VALID [2018-11-23 12:20:39,538 INFO L273 TraceCheckUtils]: 13: Hoare triple {6655#(and (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)) (<= (+ main_~MINVAL~0 6) main_~CCCELVOL5~0))} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {6656#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,540 INFO L273 TraceCheckUtils]: 14: Hoare triple {6656#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {6656#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,542 INFO L273 TraceCheckUtils]: 15: Hoare triple {6656#(and (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 12)))) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (<= 2 main_~i~0) (<= main_~i~0 2) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6657#(and (<= main_~i~0 (+ (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20) 1)) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,543 INFO L273 TraceCheckUtils]: 16: Hoare triple {6657#(and (<= main_~i~0 (+ (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20) 1)) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (< 0 (+ ~CELLCOUNT~0 1)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,544 INFO L273 TraceCheckUtils]: 17: Hoare triple {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} ~i~0 := 1; {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,545 INFO L273 TraceCheckUtils]: 18: Hoare triple {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,547 INFO L273 TraceCheckUtils]: 19: Hoare triple {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,549 INFO L273 TraceCheckUtils]: 20: Hoare triple {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,550 INFO L273 TraceCheckUtils]: 21: Hoare triple {6659#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {6660#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,552 INFO L273 TraceCheckUtils]: 22: Hoare triple {6660#(and (or (and (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 16)) main_~CCCELVOL4~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0)) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,553 INFO L273 TraceCheckUtils]: 23: Hoare triple {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,555 INFO L273 TraceCheckUtils]: 24: Hoare triple {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,556 INFO L273 TraceCheckUtils]: 25: Hoare triple {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,557 INFO L273 TraceCheckUtils]: 26: Hoare triple {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:39,558 INFO L273 TraceCheckUtils]: 27: Hoare triple {6658#(and (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= (div ~CELLCOUNT~0 5) (div (+ (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))) (+ (- |main_~#volArray~0.offset|) 20)) 20)) (< 0 (+ ~CELLCOUNT~0 1)))} ~i~0 := 1; {6661#(and (< 0 (+ ~CELLCOUNT~0 1)) (or (and (not (= (* 20 main_~i~0) 40)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (and (<= (div ~CELLCOUNT~0 5) main_~i~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))))} is VALID [2018-11-23 12:20:39,559 INFO L273 TraceCheckUtils]: 28: Hoare triple {6661#(and (< 0 (+ ~CELLCOUNT~0 1)) (or (and (not (= (* 20 main_~i~0) 40)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))) (and (<= (div ~CELLCOUNT~0 5) main_~i~0) (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6662#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0) (and (not (= (* 20 main_~i~0) 40)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))))} is VALID [2018-11-23 12:20:39,561 INFO L273 TraceCheckUtils]: 29: Hoare triple {6662#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0) (and (not (= (* 20 main_~i~0) 40)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {6663#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0) (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,563 INFO L273 TraceCheckUtils]: 30: Hoare triple {6663#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0) (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {6663#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0) (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,565 INFO L273 TraceCheckUtils]: 31: Hoare triple {6663#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (div ~CELLCOUNT~0 5) main_~i~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0) (<= (+ main_~MINVAL~0 6) (select (store (store (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 16)))) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6664#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (<= (+ (div ~CELLCOUNT~0 5) 2) main_~i~0))} is VALID [2018-11-23 12:20:39,566 INFO L273 TraceCheckUtils]: 32: Hoare triple {6664#(or (and (or (= ~CELLCOUNT~0 (* 5 (div ~CELLCOUNT~0 5))) (<= 0 ~CELLCOUNT~0)) (<= (+ (div ~CELLCOUNT~0 5) 1) main_~i~0)) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))) (<= (+ (div ~CELLCOUNT~0 5) 2) main_~i~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,568 INFO L273 TraceCheckUtils]: 33: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,569 INFO L273 TraceCheckUtils]: 34: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,570 INFO L273 TraceCheckUtils]: 35: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,570 INFO L273 TraceCheckUtils]: 36: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,571 INFO L273 TraceCheckUtils]: 37: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} ~i~0 := 1; {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,572 INFO L273 TraceCheckUtils]: 38: Hoare triple {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,573 INFO L273 TraceCheckUtils]: 39: Hoare triple {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,574 INFO L273 TraceCheckUtils]: 40: Hoare triple {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,576 INFO L273 TraceCheckUtils]: 41: Hoare triple {6666#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20))))))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} is VALID [2018-11-23 12:20:39,577 INFO L273 TraceCheckUtils]: 42: Hoare triple {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} is VALID [2018-11-23 12:20:39,578 INFO L273 TraceCheckUtils]: 43: Hoare triple {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} is VALID [2018-11-23 12:20:39,579 INFO L273 TraceCheckUtils]: 44: Hoare triple {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} is VALID [2018-11-23 12:20:39,580 INFO L273 TraceCheckUtils]: 45: Hoare triple {6667#(and (<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 8)) main_~CCCELVOL2~0) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 20)))) (= (* 20 main_~i~0) 40))} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,580 INFO L273 TraceCheckUtils]: 46: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,581 INFO L273 TraceCheckUtils]: 47: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} ~i~0 := 1; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,582 INFO L273 TraceCheckUtils]: 48: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,583 INFO L273 TraceCheckUtils]: 49: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,584 INFO L273 TraceCheckUtils]: 50: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,585 INFO L273 TraceCheckUtils]: 51: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,586 INFO L273 TraceCheckUtils]: 52: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,587 INFO L273 TraceCheckUtils]: 53: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,588 INFO L273 TraceCheckUtils]: 54: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,589 INFO L273 TraceCheckUtils]: 55: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,589 INFO L273 TraceCheckUtils]: 56: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,590 INFO L273 TraceCheckUtils]: 57: Hoare triple {6665#(<= (+ main_~MINVAL~0 6) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 20 main_~i~0) |main_~#volArray~0.offset| (- 12)) main_~CCCELVOL3~0) (+ (* 20 2) (+ |main_~#volArray~0.offset| (- 20)))))} ~i~0 := 0; {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,591 INFO L273 TraceCheckUtils]: 58: Hoare triple {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,592 INFO L273 TraceCheckUtils]: 59: Hoare triple {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} assume #t~short30; {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,592 INFO L256 TraceCheckUtils]: 60: Hoare triple {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6651#true} is VALID [2018-11-23 12:20:39,592 INFO L273 TraceCheckUtils]: 61: Hoare triple {6651#true} ~cond := #in~cond; {6651#true} is VALID [2018-11-23 12:20:39,593 INFO L273 TraceCheckUtils]: 62: Hoare triple {6651#true} assume !(0 == ~cond); {6651#true} is VALID [2018-11-23 12:20:39,593 INFO L273 TraceCheckUtils]: 63: Hoare triple {6651#true} assume true; {6651#true} is VALID [2018-11-23 12:20:39,594 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {6651#true} {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} #161#return; {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,595 INFO L273 TraceCheckUtils]: 65: Hoare triple {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} is VALID [2018-11-23 12:20:39,596 INFO L273 TraceCheckUtils]: 66: Hoare triple {6668#(and (= main_~i~0 0) (<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 10) (+ |main_~#volArray~0.offset| (- 20))))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,596 INFO L273 TraceCheckUtils]: 67: Hoare triple {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,597 INFO L273 TraceCheckUtils]: 68: Hoare triple {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} assume #t~short30; {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,597 INFO L256 TraceCheckUtils]: 69: Hoare triple {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6651#true} is VALID [2018-11-23 12:20:39,597 INFO L273 TraceCheckUtils]: 70: Hoare triple {6651#true} ~cond := #in~cond; {6651#true} is VALID [2018-11-23 12:20:39,597 INFO L273 TraceCheckUtils]: 71: Hoare triple {6651#true} assume !(0 == ~cond); {6651#true} is VALID [2018-11-23 12:20:39,598 INFO L273 TraceCheckUtils]: 72: Hoare triple {6651#true} assume true; {6651#true} is VALID [2018-11-23 12:20:39,598 INFO L268 TraceCheckUtils]: 73: Hoare quadruple {6651#true} {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} #161#return; {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,599 INFO L273 TraceCheckUtils]: 74: Hoare triple {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,600 INFO L273 TraceCheckUtils]: 75: Hoare triple {6669#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 9)) (+ |main_~#volArray~0.offset| (- 20)))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,600 INFO L273 TraceCheckUtils]: 76: Hoare triple {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,600 INFO L273 TraceCheckUtils]: 77: Hoare triple {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} assume #t~short30; {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,600 INFO L256 TraceCheckUtils]: 78: Hoare triple {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6651#true} is VALID [2018-11-23 12:20:39,601 INFO L273 TraceCheckUtils]: 79: Hoare triple {6651#true} ~cond := #in~cond; {6651#true} is VALID [2018-11-23 12:20:39,601 INFO L273 TraceCheckUtils]: 80: Hoare triple {6651#true} assume !(0 == ~cond); {6651#true} is VALID [2018-11-23 12:20:39,601 INFO L273 TraceCheckUtils]: 81: Hoare triple {6651#true} assume true; {6651#true} is VALID [2018-11-23 12:20:39,602 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {6651#true} {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} #161#return; {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,602 INFO L273 TraceCheckUtils]: 83: Hoare triple {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,603 INFO L273 TraceCheckUtils]: 84: Hoare triple {6670#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 20)))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,603 INFO L273 TraceCheckUtils]: 85: Hoare triple {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,604 INFO L273 TraceCheckUtils]: 86: Hoare triple {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} assume #t~short30; {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,604 INFO L256 TraceCheckUtils]: 87: Hoare triple {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6651#true} is VALID [2018-11-23 12:20:39,604 INFO L273 TraceCheckUtils]: 88: Hoare triple {6651#true} ~cond := #in~cond; {6651#true} is VALID [2018-11-23 12:20:39,604 INFO L273 TraceCheckUtils]: 89: Hoare triple {6651#true} assume !(0 == ~cond); {6651#true} is VALID [2018-11-23 12:20:39,604 INFO L273 TraceCheckUtils]: 90: Hoare triple {6651#true} assume true; {6651#true} is VALID [2018-11-23 12:20:39,605 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {6651#true} {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} #161#return; {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,605 INFO L273 TraceCheckUtils]: 92: Hoare triple {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,606 INFO L273 TraceCheckUtils]: 93: Hoare triple {6671#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 20)))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,607 INFO L273 TraceCheckUtils]: 94: Hoare triple {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,607 INFO L273 TraceCheckUtils]: 95: Hoare triple {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} assume #t~short30; {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,608 INFO L256 TraceCheckUtils]: 96: Hoare triple {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6651#true} is VALID [2018-11-23 12:20:39,608 INFO L273 TraceCheckUtils]: 97: Hoare triple {6651#true} ~cond := #in~cond; {6651#true} is VALID [2018-11-23 12:20:39,608 INFO L273 TraceCheckUtils]: 98: Hoare triple {6651#true} assume !(0 == ~cond); {6651#true} is VALID [2018-11-23 12:20:39,608 INFO L273 TraceCheckUtils]: 99: Hoare triple {6651#true} assume true; {6651#true} is VALID [2018-11-23 12:20:39,609 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {6651#true} {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} #161#return; {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,610 INFO L273 TraceCheckUtils]: 101: Hoare triple {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} is VALID [2018-11-23 12:20:39,611 INFO L273 TraceCheckUtils]: 102: Hoare triple {6672#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 20)))))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6673#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:20:39,611 INFO L273 TraceCheckUtils]: 103: Hoare triple {6673#(<= (+ main_~MINVAL~0 6) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 main_~i~0) |main_~#volArray~0.offset|)))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6674#|main_#t~short30|} is VALID [2018-11-23 12:20:39,612 INFO L273 TraceCheckUtils]: 104: Hoare triple {6674#|main_#t~short30|} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {6652#false} is VALID [2018-11-23 12:20:39,612 INFO L256 TraceCheckUtils]: 105: Hoare triple {6652#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6652#false} is VALID [2018-11-23 12:20:39,612 INFO L273 TraceCheckUtils]: 106: Hoare triple {6652#false} ~cond := #in~cond; {6652#false} is VALID [2018-11-23 12:20:39,612 INFO L273 TraceCheckUtils]: 107: Hoare triple {6652#false} assume 0 == ~cond; {6652#false} is VALID [2018-11-23 12:20:39,612 INFO L273 TraceCheckUtils]: 108: Hoare triple {6652#false} assume !false; {6652#false} is VALID [2018-11-23 12:20:39,665 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 24 proven. 75 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2018-11-23 12:20:39,666 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:39,666 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:39,675 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:20:39,785 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2018-11-23 12:20:39,785 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:39,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:39,819 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:39,939 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2018-11-23 12:20:39,944 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 12 [2018-11-23 12:20:39,947 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:39,950 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:39,959 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:39,959 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:23, output treesize:19 [2018-11-23 12:20:40,010 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:40,011 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 276 treesize of output 469 [2018-11-23 12:20:40,041 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,042 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,043 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,051 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 181 treesize of output 173 [2018-11-23 12:20:40,073 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,074 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,076 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,083 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 91 treesize of output 113 [2018-11-23 12:20:40,104 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,105 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,106 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,112 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 83 [2018-11-23 12:20:40,188 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,235 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 39 [2018-11-23 12:20:40,262 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,400 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,439 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,478 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,519 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,598 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,598 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 1 variables, input treesize:282, output treesize:19 [2018-11-23 12:20:40,659 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 21 [2018-11-23 12:20:40,666 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,667 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 33 [2018-11-23 12:20:40,670 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,679 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,690 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:40,690 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:32, output treesize:28 [2018-11-23 12:20:40,766 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:40,767 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 285 treesize of output 476 [2018-11-23 12:20:40,808 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,809 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,811 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,812 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,813 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,814 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,828 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 188 treesize of output 213 [2018-11-23 12:20:40,879 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,881 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,882 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,883 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,884 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,885 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,898 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 98 treesize of output 153 [2018-11-23 12:20:40,947 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,949 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,950 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,951 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,953 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,954 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,967 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 53 treesize of output 123 [2018-11-23 12:20:40,975 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,977 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,978 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:40,985 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 70 [2018-11-23 12:20:40,990 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:41,007 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:41,015 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:41,023 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:41,031 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:41,045 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 12:20:41,045 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 2 variables, input treesize:291, output treesize:28 [2018-11-23 12:20:42,244 WARN L180 SmtUtils]: Spent 160.00 ms on a formula simplification that was a NOOP. DAG size: 23 [2018-11-23 12:20:55,203 INFO L256 TraceCheckUtils]: 0: Hoare triple {6651#true} call ULTIMATE.init(); {6651#true} is VALID [2018-11-23 12:20:55,203 INFO L273 TraceCheckUtils]: 1: Hoare triple {6651#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {6651#true} is VALID [2018-11-23 12:20:55,203 INFO L273 TraceCheckUtils]: 2: Hoare triple {6651#true} assume true; {6651#true} is VALID [2018-11-23 12:20:55,204 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6651#true} {6651#true} #157#return; {6651#true} is VALID [2018-11-23 12:20:55,204 INFO L256 TraceCheckUtils]: 4: Hoare triple {6651#true} call #t~ret31 := main(); {6651#true} is VALID [2018-11-23 12:20:55,204 INFO L273 TraceCheckUtils]: 5: Hoare triple {6651#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {6651#true} is VALID [2018-11-23 12:20:55,205 INFO L273 TraceCheckUtils]: 6: Hoare triple {6651#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL5~0 := 8;~CCCELVOL4~0 := 5;~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,205 INFO L273 TraceCheckUtils]: 7: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then ~CELLCOUNT~0 % 5 - 5 else ~CELLCOUNT~0 % 5) then 1 else 0);~i~0 := 1; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,205 INFO L273 TraceCheckUtils]: 8: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,206 INFO L273 TraceCheckUtils]: 9: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,206 INFO L273 TraceCheckUtils]: 10: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,206 INFO L273 TraceCheckUtils]: 11: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,207 INFO L273 TraceCheckUtils]: 12: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,207 INFO L273 TraceCheckUtils]: 13: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL5~0 >= ~MINVAL~0;call write~int(~CCCELVOL5~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,208 INFO L273 TraceCheckUtils]: 14: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem4;call #t~mem5 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem5, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem5;call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem6; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,208 INFO L273 TraceCheckUtils]: 15: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,209 INFO L273 TraceCheckUtils]: 16: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,209 INFO L273 TraceCheckUtils]: 17: Hoare triple {6696#(<= 2 main_~MINVAL~0)} ~i~0 := 1; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,210 INFO L273 TraceCheckUtils]: 18: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,210 INFO L273 TraceCheckUtils]: 19: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,211 INFO L273 TraceCheckUtils]: 20: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,211 INFO L273 TraceCheckUtils]: 21: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,212 INFO L273 TraceCheckUtils]: 22: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,212 INFO L273 TraceCheckUtils]: 23: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL4~0 >= ~MINVAL~0;call write~int(~CCCELVOL4~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,213 INFO L273 TraceCheckUtils]: 24: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem8 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem8, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem8;call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem10;call #t~mem11 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem11, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem11; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,213 INFO L273 TraceCheckUtils]: 25: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post7 := ~i~0;~i~0 := 1 + #t~post7;havoc #t~post7; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,214 INFO L273 TraceCheckUtils]: 26: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,214 INFO L273 TraceCheckUtils]: 27: Hoare triple {6696#(<= 2 main_~MINVAL~0)} ~i~0 := 1; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,215 INFO L273 TraceCheckUtils]: 28: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,215 INFO L273 TraceCheckUtils]: 29: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,216 INFO L273 TraceCheckUtils]: 30: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,216 INFO L273 TraceCheckUtils]: 31: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,217 INFO L273 TraceCheckUtils]: 32: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,217 INFO L273 TraceCheckUtils]: 33: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,218 INFO L273 TraceCheckUtils]: 34: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem13, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem13;call #t~mem14 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem14, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem14;call #t~mem15 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem15, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem15;call #t~mem16 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem16, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem16; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,218 INFO L273 TraceCheckUtils]: 35: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,219 INFO L273 TraceCheckUtils]: 36: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,219 INFO L273 TraceCheckUtils]: 37: Hoare triple {6696#(<= 2 main_~MINVAL~0)} ~i~0 := 1; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,220 INFO L273 TraceCheckUtils]: 38: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,220 INFO L273 TraceCheckUtils]: 39: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,221 INFO L273 TraceCheckUtils]: 40: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,221 INFO L273 TraceCheckUtils]: 41: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,222 INFO L273 TraceCheckUtils]: 42: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,223 INFO L273 TraceCheckUtils]: 43: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,223 INFO L273 TraceCheckUtils]: 44: Hoare triple {6696#(<= 2 main_~MINVAL~0)} call #t~mem18 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem18, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem18;call #t~mem19 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem19, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem19;call #t~mem20 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem20, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem20;call #t~mem21 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);call write~int(#t~mem21, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4);havoc #t~mem21; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,224 INFO L273 TraceCheckUtils]: 45: Hoare triple {6696#(<= 2 main_~MINVAL~0)} #t~post17 := ~i~0;~i~0 := 1 + #t~post17;havoc #t~post17; {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,224 INFO L273 TraceCheckUtils]: 46: Hoare triple {6696#(<= 2 main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6696#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:20:55,225 INFO L273 TraceCheckUtils]: 47: Hoare triple {6696#(<= 2 main_~MINVAL~0)} ~i~0 := 1; {6820#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,225 INFO L273 TraceCheckUtils]: 48: Hoare triple {6820#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6820#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,227 INFO L273 TraceCheckUtils]: 49: Hoare triple {6820#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {6827#(and (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,228 INFO L273 TraceCheckUtils]: 50: Hoare triple {6827#(and (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {6827#(and (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,229 INFO L273 TraceCheckUtils]: 51: Hoare triple {6827#(and (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= main_~i~0 1))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {6834#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,230 INFO L273 TraceCheckUtils]: 52: Hoare triple {6834#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6834#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,231 INFO L273 TraceCheckUtils]: 53: Hoare triple {6834#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 1), 4); {6841#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,234 INFO L273 TraceCheckUtils]: 54: Hoare triple {6841#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} call #t~mem23 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);call write~int(#t~mem23, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 5), 4);havoc #t~mem23;call #t~mem24 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);call write~int(#t~mem24, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 4), 4);havoc #t~mem24;call #t~mem25 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);call write~int(#t~mem25, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 3), 4);havoc #t~mem25;call #t~mem26 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);call write~int(#t~mem26, ~#volArray~0.base, ~#volArray~0.offset + 4 * (5 * ~i~0 - 2), 4);havoc #t~mem26; {6845#(and (<= 2 main_~MINVAL~0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,235 INFO L273 TraceCheckUtils]: 55: Hoare triple {6845#(and (<= 2 main_~MINVAL~0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post22 := ~i~0;~i~0 := 1 + #t~post22;havoc #t~post22; {6845#(and (<= 2 main_~MINVAL~0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,235 INFO L273 TraceCheckUtils]: 56: Hoare triple {6845#(and (<= 2 main_~MINVAL~0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 5 then 1 + ~CELLCOUNT~0 / 5 else ~CELLCOUNT~0 / 5)); {6845#(and (<= 2 main_~MINVAL~0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,236 INFO L273 TraceCheckUtils]: 57: Hoare triple {6845#(and (<= 2 main_~MINVAL~0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 main_~i~0) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} ~i~0 := 0; {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,237 INFO L273 TraceCheckUtils]: 58: Hoare triple {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,237 INFO L273 TraceCheckUtils]: 59: Hoare triple {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} assume #t~short30; {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,239 INFO L256 TraceCheckUtils]: 60: Hoare triple {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,240 INFO L273 TraceCheckUtils]: 61: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} ~cond := #in~cond; {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,240 INFO L273 TraceCheckUtils]: 62: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} assume !(0 == ~cond); {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,241 INFO L273 TraceCheckUtils]: 63: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} assume true; {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,242 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} #161#return; {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,243 INFO L273 TraceCheckUtils]: 65: Hoare triple {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,244 INFO L273 TraceCheckUtils]: 66: Hoare triple {6855#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,245 INFO L273 TraceCheckUtils]: 67: Hoare triple {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,246 INFO L273 TraceCheckUtils]: 68: Hoare triple {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume #t~short30; {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,248 INFO L256 TraceCheckUtils]: 69: Hoare triple {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,248 INFO L273 TraceCheckUtils]: 70: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} ~cond := #in~cond; {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,249 INFO L273 TraceCheckUtils]: 71: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} assume !(0 == ~cond); {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,250 INFO L273 TraceCheckUtils]: 72: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} assume true; {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,250 INFO L268 TraceCheckUtils]: 73: Hoare quadruple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #161#return; {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,251 INFO L273 TraceCheckUtils]: 74: Hoare triple {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,251 INFO L273 TraceCheckUtils]: 75: Hoare triple {6884#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,252 INFO L273 TraceCheckUtils]: 76: Hoare triple {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,252 INFO L273 TraceCheckUtils]: 77: Hoare triple {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume #t~short30; {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,254 INFO L256 TraceCheckUtils]: 78: Hoare triple {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,255 INFO L273 TraceCheckUtils]: 79: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} ~cond := #in~cond; {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,256 INFO L273 TraceCheckUtils]: 80: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} assume !(0 == ~cond); {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,256 INFO L273 TraceCheckUtils]: 81: Hoare triple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} assume true; {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} is VALID [2018-11-23 12:20:55,257 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {6865#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_11| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_11| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_11| (- 4))) 0) (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_11|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_11| 16)))))} {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #161#return; {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,258 INFO L273 TraceCheckUtils]: 83: Hoare triple {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,259 INFO L273 TraceCheckUtils]: 84: Hoare triple {6912#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,260 INFO L273 TraceCheckUtils]: 85: Hoare triple {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:55,261 INFO L273 TraceCheckUtils]: 86: Hoare triple {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} assume #t~short30; {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:56,042 INFO L256 TraceCheckUtils]: 87: Hoare triple {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} is VALID [2018-11-23 12:20:56,043 INFO L273 TraceCheckUtils]: 88: Hoare triple {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} ~cond := #in~cond; {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} is VALID [2018-11-23 12:20:56,043 INFO L273 TraceCheckUtils]: 89: Hoare triple {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} assume !(0 == ~cond); {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} is VALID [2018-11-23 12:20:56,044 INFO L273 TraceCheckUtils]: 90: Hoare triple {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} assume true; {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} is VALID [2018-11-23 12:20:56,044 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {6950#(exists ((v_prenex_13 Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_14| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_14| Int)) (and (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_14| 16))) (<= 2 v_prenex_13) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_14|) (+ (* 20 v_prenex_13) |v_main_~#volArray~0.offset_BEFORE_CALL_14| (- 4))) 0)))} {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #161#return; {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:56,045 INFO L273 TraceCheckUtils]: 92: Hoare triple {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} is VALID [2018-11-23 12:20:56,045 INFO L273 TraceCheckUtils]: 93: Hoare triple {6940#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0))} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6969#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:56,047 INFO L273 TraceCheckUtils]: 94: Hoare triple {6969#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_13 Int)) (and (<= 2 v_prenex_13) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 20 v_prenex_13) (- 4)))))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16)) 0) (= main_~i~0 4))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6973#(not |main_#t~short30|)} is VALID [2018-11-23 12:20:56,047 INFO L273 TraceCheckUtils]: 95: Hoare triple {6973#(not |main_#t~short30|)} assume #t~short30; {6652#false} is VALID [2018-11-23 12:20:56,047 INFO L256 TraceCheckUtils]: 96: Hoare triple {6652#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6652#false} is VALID [2018-11-23 12:20:56,048 INFO L273 TraceCheckUtils]: 97: Hoare triple {6652#false} ~cond := #in~cond; {6652#false} is VALID [2018-11-23 12:20:56,048 INFO L273 TraceCheckUtils]: 98: Hoare triple {6652#false} assume !(0 == ~cond); {6652#false} is VALID [2018-11-23 12:20:56,048 INFO L273 TraceCheckUtils]: 99: Hoare triple {6652#false} assume true; {6652#false} is VALID [2018-11-23 12:20:56,048 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {6652#false} {6652#false} #161#return; {6652#false} is VALID [2018-11-23 12:20:56,048 INFO L273 TraceCheckUtils]: 101: Hoare triple {6652#false} havoc #t~short30;havoc #t~mem29;havoc #t~mem28; {6652#false} is VALID [2018-11-23 12:20:56,049 INFO L273 TraceCheckUtils]: 102: Hoare triple {6652#false} #t~post27 := ~i~0;~i~0 := 1 + #t~post27;havoc #t~post27; {6652#false} is VALID [2018-11-23 12:20:56,049 INFO L273 TraceCheckUtils]: 103: Hoare triple {6652#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem28 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := #t~mem28 >= ~MINVAL~0; {6652#false} is VALID [2018-11-23 12:20:56,049 INFO L273 TraceCheckUtils]: 104: Hoare triple {6652#false} assume !#t~short30;call #t~mem29 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short30 := 0 == #t~mem29; {6652#false} is VALID [2018-11-23 12:20:56,049 INFO L256 TraceCheckUtils]: 105: Hoare triple {6652#false} call __VERIFIER_assert((if #t~short30 then 1 else 0)); {6652#false} is VALID [2018-11-23 12:20:56,049 INFO L273 TraceCheckUtils]: 106: Hoare triple {6652#false} ~cond := #in~cond; {6652#false} is VALID [2018-11-23 12:20:56,050 INFO L273 TraceCheckUtils]: 107: Hoare triple {6652#false} assume 0 == ~cond; {6652#false} is VALID [2018-11-23 12:20:56,050 INFO L273 TraceCheckUtils]: 108: Hoare triple {6652#false} assume !false; {6652#false} is VALID [2018-11-23 12:20:56,084 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 62 proven. 44 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2018-11-23 12:20:56,102 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:56,102 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 16] total 38 [2018-11-23 12:20:56,103 INFO L78 Accepts]: Start accepts. Automaton has 38 states. Word has length 109 [2018-11-23 12:20:56,103 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:56,104 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 38 states. [2018-11-23 12:20:57,434 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 168 edges. 168 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:57,434 INFO L459 AbstractCegarLoop]: Interpolant automaton has 38 states [2018-11-23 12:20:57,434 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 38 interpolants. [2018-11-23 12:20:57,435 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=152, Invalid=1252, Unknown=2, NotChecked=0, Total=1406 [2018-11-23 12:20:57,435 INFO L87 Difference]: Start difference. First operand 101 states and 112 transitions. Second operand 38 states. [2018-11-23 12:21:15,159 WARN L180 SmtUtils]: Spent 806.00 ms on a formula simplification. DAG size of input: 59 DAG size of output: 52 [2018-11-23 12:21:18,137 WARN L180 SmtUtils]: Spent 576.00 ms on a formula simplification. DAG size of input: 57 DAG size of output: 50 [2018-11-23 12:21:20,868 WARN L180 SmtUtils]: Spent 718.00 ms on a formula simplification. DAG size of input: 58 DAG size of output: 51 [2018-11-23 12:21:23,021 WARN L180 SmtUtils]: Spent 631.00 ms on a formula simplification. DAG size of input: 64 DAG size of output: 43 [2018-11-23 12:21:29,633 WARN L180 SmtUtils]: Spent 692.00 ms on a formula simplification. DAG size of input: 79 DAG size of output: 48 [2018-11-23 12:21:30,515 WARN L180 SmtUtils]: Spent 647.00 ms on a formula simplification. DAG size of input: 62 DAG size of output: 39 [2018-11-23 12:21:34,866 WARN L180 SmtUtils]: Spent 749.00 ms on a formula simplification. DAG size of input: 63 DAG size of output: 40 [2018-11-23 12:21:40,070 WARN L180 SmtUtils]: Spent 679.00 ms on a formula simplification. DAG size of input: 58 DAG size of output: 52 [2018-11-23 12:21:48,862 WARN L180 SmtUtils]: Spent 715.00 ms on a formula simplification. DAG size of input: 59 DAG size of output: 53 [2018-11-23 12:21:51,568 WARN L180 SmtUtils]: Spent 508.00 ms on a formula simplification. DAG size of input: 73 DAG size of output: 62 [2018-11-23 12:21:59,351 WARN L180 SmtUtils]: Spent 260.00 ms on a formula simplification that was a NOOP. DAG size: 39 [2018-11-23 12:22:02,280 WARN L180 SmtUtils]: Spent 833.00 ms on a formula simplification. DAG size of input: 61 DAG size of output: 53 [2018-11-23 12:22:09,487 WARN L180 SmtUtils]: Spent 669.00 ms on a formula simplification. DAG size of input: 62 DAG size of output: 43 [2018-11-23 12:22:10,173 WARN L180 SmtUtils]: Spent 524.00 ms on a formula simplification. DAG size of input: 70 DAG size of output: 46 [2018-11-23 12:22:13,663 WARN L180 SmtUtils]: Spent 789.00 ms on a formula simplification. DAG size of input: 63 DAG size of output: 44 [2018-11-23 12:22:16,422 WARN L180 SmtUtils]: Spent 635.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 47 [2018-11-23 12:22:21,463 WARN L180 SmtUtils]: Spent 655.00 ms on a formula simplification. DAG size of input: 42 DAG size of output: 41 [2018-11-23 12:22:22,826 WARN L180 SmtUtils]: Spent 671.00 ms on a formula simplification. DAG size of input: 43 DAG size of output: 42 [2018-11-23 12:22:23,890 WARN L180 SmtUtils]: Spent 953.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 53 [2018-11-23 12:22:29,268 WARN L180 SmtUtils]: Spent 689.00 ms on a formula simplification. DAG size of input: 55 DAG size of output: 50