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/mbpr3_true-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:18:11,087 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:18:11,089 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:18:11,101 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:18:11,102 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:18:11,103 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:18:11,104 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:18:11,106 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:18:11,108 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:18:11,108 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:18:11,109 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:18:11,110 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:18:11,111 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:18:11,112 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:18:11,113 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:18:11,114 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:18:11,114 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:18:11,116 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:18:11,118 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:18:11,120 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:18:11,121 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:18:11,123 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:18:11,130 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:18:11,131 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:18:11,131 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:18:11,134 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:18:11,135 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:18:11,141 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:18:11,142 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:18:11,144 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:18:11,144 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:18:11,145 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:18:11,145 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:18:11,146 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:18:11,147 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:18:11,147 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:18:11,151 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:18:11,182 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:18:11,182 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:18:11,184 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:18:11,185 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:18:11,185 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:18:11,186 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:18:11,186 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:18:11,186 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:18:11,186 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:18:11,186 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:18:11,187 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:18:11,187 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:18:11,187 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:18:11,187 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:18:11,187 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:18:11,188 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:18:11,189 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:18:11,189 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:18:11,189 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:18:11,189 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:18:11,190 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:18:11,190 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:18:11,190 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:18:11,190 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:18:11,190 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:18:11,191 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:18:11,191 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:18:11,191 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:18:11,192 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:18:11,192 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:18:11,192 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:18:11,252 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:18:11,266 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:18:11,270 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:18:11,272 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:18:11,272 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:18:11,273 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-tiling/mbpr3_true-unreach-call.i [2018-11-23 12:18:11,335 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/423c8bd64/56bce881fdd84a7e9f651ccd408dbe1c/FLAG6c9035ddf [2018-11-23 12:18:11,757 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:18:11,758 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-tiling/mbpr3_true-unreach-call.i [2018-11-23 12:18:11,765 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/423c8bd64/56bce881fdd84a7e9f651ccd408dbe1c/FLAG6c9035ddf [2018-11-23 12:18:12,136 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/423c8bd64/56bce881fdd84a7e9f651ccd408dbe1c [2018-11-23 12:18:12,146 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:18:12,147 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:18:12,148 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:18:12,149 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:18:12,153 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:18:12,154 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,157 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1e8d26f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12, skipping insertion in model container [2018-11-23 12:18:12,158 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,169 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:18:12,202 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:18:12,484 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:18:12,490 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:18:12,552 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:18:12,595 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:18:12,595 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12 WrapperNode [2018-11-23 12:18:12,595 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:18:12,596 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:18:12,596 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:18:12,596 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:18:12,604 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:18:12" (1/1) ... [2018-11-23 12:18:12,615 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:18:12" (1/1) ... [2018-11-23 12:18:12,624 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:18:12,624 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:18:12,624 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:18:12,625 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:18:12,633 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,634 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,637 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,637 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,655 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,667 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,669 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (1/1) ... [2018-11-23 12:18:12,672 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:18:12,672 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:18:12,672 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:18:12,673 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:18:12,675 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (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:18:12,808 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 12:18:12,809 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:18:12,809 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:18:12,809 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:18:12,809 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:18:12,809 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:18:12,809 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:18:12,809 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:18:12,809 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:18:12,810 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 12:18:12,810 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 12:18:12,810 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:18:13,873 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:18:13,874 INFO L280 CfgBuilder]: Removed 4 assue(true) statements. [2018-11-23 12:18:13,875 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:18:13 BoogieIcfgContainer [2018-11-23 12:18:13,875 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:18:13,876 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:18:13,876 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:18:13,879 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:18:13,879 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:18:12" (1/3) ... [2018-11-23 12:18:13,880 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@65a2528f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:18:13, skipping insertion in model container [2018-11-23 12:18:13,880 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:18:12" (2/3) ... [2018-11-23 12:18:13,881 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@65a2528f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:18:13, skipping insertion in model container [2018-11-23 12:18:13,881 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:18:13" (3/3) ... [2018-11-23 12:18:13,883 INFO L112 eAbstractionObserver]: Analyzing ICFG mbpr3_true-unreach-call.i [2018-11-23 12:18:13,893 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:18:13,900 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:18:13,919 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:18:13,955 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:18:13,956 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:18:13,956 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:18:13,956 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:18:13,957 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:18:13,957 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:18:13,957 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:18:13,958 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:18:13,958 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:18:13,977 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states. [2018-11-23 12:18:13,984 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2018-11-23 12:18:13,984 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:13,985 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] [2018-11-23 12:18:13,987 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:13,993 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:13,993 INFO L82 PathProgramCache]: Analyzing trace with hash -1164915713, now seen corresponding path program 1 times [2018-11-23 12:18:13,995 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:13,996 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:14,046 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:14,046 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:14,046 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:14,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:14,194 INFO L256 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {43#true} is VALID [2018-11-23 12:18:14,198 INFO L273 TraceCheckUtils]: 1: Hoare triple {43#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {43#true} is VALID [2018-11-23 12:18:14,198 INFO L273 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2018-11-23 12:18:14,199 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #115#return; {43#true} is VALID [2018-11-23 12:18:14,199 INFO L256 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret15 := main(); {43#true} is VALID [2018-11-23 12:18:14,199 INFO L273 TraceCheckUtils]: 5: Hoare triple {43#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {43#true} is VALID [2018-11-23 12:18:14,200 INFO L273 TraceCheckUtils]: 6: Hoare triple {43#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {43#true} is VALID [2018-11-23 12:18:14,200 INFO L273 TraceCheckUtils]: 7: Hoare triple {43#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {43#true} is VALID [2018-11-23 12:18:14,200 INFO L273 TraceCheckUtils]: 8: Hoare triple {43#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {43#true} is VALID [2018-11-23 12:18:14,201 INFO L273 TraceCheckUtils]: 9: Hoare triple {43#true} ~i~0 := 1; {43#true} is VALID [2018-11-23 12:18:14,202 INFO L273 TraceCheckUtils]: 10: Hoare triple {43#true} assume !true; {44#false} is VALID [2018-11-23 12:18:14,203 INFO L273 TraceCheckUtils]: 11: Hoare triple {44#false} ~i~0 := 1; {44#false} is VALID [2018-11-23 12:18:14,203 INFO L273 TraceCheckUtils]: 12: Hoare triple {44#false} assume !true; {44#false} is VALID [2018-11-23 12:18:14,203 INFO L273 TraceCheckUtils]: 13: Hoare triple {44#false} ~i~0 := 0; {44#false} is VALID [2018-11-23 12:18:14,203 INFO L273 TraceCheckUtils]: 14: Hoare triple {44#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {44#false} is VALID [2018-11-23 12:18:14,204 INFO L273 TraceCheckUtils]: 15: Hoare triple {44#false} assume #t~short14; {44#false} is VALID [2018-11-23 12:18:14,204 INFO L256 TraceCheckUtils]: 16: Hoare triple {44#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {44#false} is VALID [2018-11-23 12:18:14,204 INFO L273 TraceCheckUtils]: 17: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2018-11-23 12:18:14,205 INFO L273 TraceCheckUtils]: 18: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2018-11-23 12:18:14,205 INFO L273 TraceCheckUtils]: 19: Hoare triple {44#false} assume !false; {44#false} is VALID [2018-11-23 12:18:14,209 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:18:14,212 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:18:14,212 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 12:18:14,217 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 20 [2018-11-23 12:18:14,220 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:14,224 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 12:18:14,283 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:14,283 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 12:18:14,292 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 12:18:14,293 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:18:14,296 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 2 states. [2018-11-23 12:18:14,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:14,727 INFO L93 Difference]: Finished difference Result 68 states and 92 transitions. [2018-11-23 12:18:14,727 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 12:18:14,727 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 20 [2018-11-23 12:18:14,727 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:14,729 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:18:14,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 92 transitions. [2018-11-23 12:18:14,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:18:14,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 92 transitions. [2018-11-23 12:18:14,747 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 92 transitions. [2018-11-23 12:18:15,127 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:15,140 INFO L225 Difference]: With dead ends: 68 [2018-11-23 12:18:15,140 INFO L226 Difference]: Without dead ends: 34 [2018-11-23 12:18:15,144 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:18:15,163 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2018-11-23 12:18:15,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2018-11-23 12:18:15,211 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:15,212 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 34 states. [2018-11-23 12:18:15,212 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 34 states. [2018-11-23 12:18:15,213 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 34 states. [2018-11-23 12:18:15,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:15,218 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2018-11-23 12:18:15,219 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2018-11-23 12:18:15,219 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:15,220 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:15,220 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 34 states. [2018-11-23 12:18:15,220 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 34 states. [2018-11-23 12:18:15,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:15,226 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2018-11-23 12:18:15,226 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2018-11-23 12:18:15,227 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:15,227 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:15,228 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:15,228 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:15,228 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-23 12:18:15,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 41 transitions. [2018-11-23 12:18:15,234 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 41 transitions. Word has length 20 [2018-11-23 12:18:15,234 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:15,234 INFO L480 AbstractCegarLoop]: Abstraction has 34 states and 41 transitions. [2018-11-23 12:18:15,235 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 12:18:15,235 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2018-11-23 12:18:15,236 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2018-11-23 12:18:15,236 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:15,236 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] [2018-11-23 12:18:15,237 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:15,237 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:15,237 INFO L82 PathProgramCache]: Analyzing trace with hash 208061977, now seen corresponding path program 1 times [2018-11-23 12:18:15,238 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:15,238 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:15,239 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:15,239 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:15,240 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:15,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:15,637 INFO L256 TraceCheckUtils]: 0: Hoare triple {242#true} call ULTIMATE.init(); {242#true} is VALID [2018-11-23 12:18:15,637 INFO L273 TraceCheckUtils]: 1: Hoare triple {242#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {242#true} is VALID [2018-11-23 12:18:15,638 INFO L273 TraceCheckUtils]: 2: Hoare triple {242#true} assume true; {242#true} is VALID [2018-11-23 12:18:15,638 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {242#true} {242#true} #115#return; {242#true} is VALID [2018-11-23 12:18:15,638 INFO L256 TraceCheckUtils]: 4: Hoare triple {242#true} call #t~ret15 := main(); {242#true} is VALID [2018-11-23 12:18:15,639 INFO L273 TraceCheckUtils]: 5: Hoare triple {242#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {242#true} is VALID [2018-11-23 12:18:15,639 INFO L273 TraceCheckUtils]: 6: Hoare triple {242#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {242#true} is VALID [2018-11-23 12:18:15,639 INFO L273 TraceCheckUtils]: 7: Hoare triple {242#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {242#true} is VALID [2018-11-23 12:18:15,640 INFO L273 TraceCheckUtils]: 8: Hoare triple {242#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {242#true} is VALID [2018-11-23 12:18:15,640 INFO L273 TraceCheckUtils]: 9: Hoare triple {242#true} ~i~0 := 1; {242#true} is VALID [2018-11-23 12:18:15,640 INFO L273 TraceCheckUtils]: 10: Hoare triple {242#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {242#true} is VALID [2018-11-23 12:18:15,641 INFO L273 TraceCheckUtils]: 11: Hoare triple {242#true} ~i~0 := 1; {242#true} is VALID [2018-11-23 12:18:15,641 INFO L273 TraceCheckUtils]: 12: Hoare triple {242#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {242#true} is VALID [2018-11-23 12:18:15,642 INFO L273 TraceCheckUtils]: 13: Hoare triple {242#true} ~i~0 := 0; {242#true} is VALID [2018-11-23 12:18:15,642 INFO L273 TraceCheckUtils]: 14: Hoare triple {242#true} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {242#true} is VALID [2018-11-23 12:18:15,643 INFO L273 TraceCheckUtils]: 15: Hoare triple {242#true} assume #t~short14; {244#|main_#t~short14|} is VALID [2018-11-23 12:18:15,644 INFO L256 TraceCheckUtils]: 16: Hoare triple {244#|main_#t~short14|} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {245#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:15,646 INFO L273 TraceCheckUtils]: 17: Hoare triple {245#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {246#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:18:15,648 INFO L273 TraceCheckUtils]: 18: Hoare triple {246#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {243#false} is VALID [2018-11-23 12:18:15,648 INFO L273 TraceCheckUtils]: 19: Hoare triple {243#false} assume !false; {243#false} is VALID [2018-11-23 12:18:15,655 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:18:15,656 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:18:15,656 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 12:18:15,658 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 20 [2018-11-23 12:18:15,659 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:15,659 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:18:15,734 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:15,735 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:18:15,736 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:18:15,736 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:18:15,736 INFO L87 Difference]: Start difference. First operand 34 states and 41 transitions. Second operand 5 states. [2018-11-23 12:18:16,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:16,214 INFO L93 Difference]: Finished difference Result 42 states and 49 transitions. [2018-11-23 12:18:16,214 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:18:16,214 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 20 [2018-11-23 12:18:16,215 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:16,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:18:16,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2018-11-23 12:18:16,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:18:16,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2018-11-23 12:18:16,225 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 49 transitions. [2018-11-23 12:18:16,316 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:16,319 INFO L225 Difference]: With dead ends: 42 [2018-11-23 12:18:16,320 INFO L226 Difference]: Without dead ends: 40 [2018-11-23 12:18:16,321 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:18:16,321 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2018-11-23 12:18:16,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 39. [2018-11-23 12:18:16,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:16,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand 39 states. [2018-11-23 12:18:16,341 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 39 states. [2018-11-23 12:18:16,341 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 39 states. [2018-11-23 12:18:16,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:16,344 INFO L93 Difference]: Finished difference Result 40 states and 47 transitions. [2018-11-23 12:18:16,344 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 47 transitions. [2018-11-23 12:18:16,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:16,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:16,346 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 40 states. [2018-11-23 12:18:16,346 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 40 states. [2018-11-23 12:18:16,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:16,350 INFO L93 Difference]: Finished difference Result 40 states and 47 transitions. [2018-11-23 12:18:16,350 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 47 transitions. [2018-11-23 12:18:16,351 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:16,351 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:16,351 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:16,351 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:16,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2018-11-23 12:18:16,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 46 transitions. [2018-11-23 12:18:16,355 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 46 transitions. Word has length 20 [2018-11-23 12:18:16,355 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:16,355 INFO L480 AbstractCegarLoop]: Abstraction has 39 states and 46 transitions. [2018-11-23 12:18:16,356 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:18:16,356 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2018-11-23 12:18:16,357 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2018-11-23 12:18:16,357 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:16,357 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] [2018-11-23 12:18:16,357 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:16,358 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:16,358 INFO L82 PathProgramCache]: Analyzing trace with hash 209909019, now seen corresponding path program 1 times [2018-11-23 12:18:16,358 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:16,358 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:16,359 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:16,360 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:16,360 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:16,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:16,607 INFO L256 TraceCheckUtils]: 0: Hoare triple {436#true} call ULTIMATE.init(); {436#true} is VALID [2018-11-23 12:18:16,608 INFO L273 TraceCheckUtils]: 1: Hoare triple {436#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {436#true} is VALID [2018-11-23 12:18:16,608 INFO L273 TraceCheckUtils]: 2: Hoare triple {436#true} assume true; {436#true} is VALID [2018-11-23 12:18:16,609 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {436#true} {436#true} #115#return; {436#true} is VALID [2018-11-23 12:18:16,610 INFO L256 TraceCheckUtils]: 4: Hoare triple {436#true} call #t~ret15 := main(); {436#true} is VALID [2018-11-23 12:18:16,610 INFO L273 TraceCheckUtils]: 5: Hoare triple {436#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {436#true} is VALID [2018-11-23 12:18:16,625 INFO L273 TraceCheckUtils]: 6: Hoare triple {436#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {438#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:18:16,630 INFO L273 TraceCheckUtils]: 7: Hoare triple {438#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {439#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:16,632 INFO L273 TraceCheckUtils]: 8: Hoare triple {439#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {439#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:16,634 INFO L273 TraceCheckUtils]: 9: Hoare triple {439#(and (<= 2 ~CELLCOUNT~0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} ~i~0 := 1; {440#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:16,635 INFO L273 TraceCheckUtils]: 10: Hoare triple {440#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {437#false} is VALID [2018-11-23 12:18:16,635 INFO L273 TraceCheckUtils]: 11: Hoare triple {437#false} ~i~0 := 1; {437#false} is VALID [2018-11-23 12:18:16,636 INFO L273 TraceCheckUtils]: 12: Hoare triple {437#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {437#false} is VALID [2018-11-23 12:18:16,637 INFO L273 TraceCheckUtils]: 13: Hoare triple {437#false} ~i~0 := 0; {437#false} is VALID [2018-11-23 12:18:16,637 INFO L273 TraceCheckUtils]: 14: Hoare triple {437#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {437#false} is VALID [2018-11-23 12:18:16,638 INFO L273 TraceCheckUtils]: 15: Hoare triple {437#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {437#false} is VALID [2018-11-23 12:18:16,638 INFO L256 TraceCheckUtils]: 16: Hoare triple {437#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {437#false} is VALID [2018-11-23 12:18:16,638 INFO L273 TraceCheckUtils]: 17: Hoare triple {437#false} ~cond := #in~cond; {437#false} is VALID [2018-11-23 12:18:16,639 INFO L273 TraceCheckUtils]: 18: Hoare triple {437#false} assume 0 == ~cond; {437#false} is VALID [2018-11-23 12:18:16,639 INFO L273 TraceCheckUtils]: 19: Hoare triple {437#false} assume !false; {437#false} is VALID [2018-11-23 12:18:16,640 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:18:16,641 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:18:16,641 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 12:18:16,641 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 20 [2018-11-23 12:18:16,642 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:16,642 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:18:16,718 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:16,718 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:18:16,719 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:18:16,719 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:18:16,719 INFO L87 Difference]: Start difference. First operand 39 states and 46 transitions. Second operand 5 states. [2018-11-23 12:18:17,126 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:17,126 INFO L93 Difference]: Finished difference Result 78 states and 96 transitions. [2018-11-23 12:18:17,127 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:18:17,127 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 20 [2018-11-23 12:18:17,127 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:17,127 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:18:17,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 86 transitions. [2018-11-23 12:18:17,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:18:17,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 86 transitions. [2018-11-23 12:18:17,135 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 86 transitions. [2018-11-23 12:18:17,335 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:17,338 INFO L225 Difference]: With dead ends: 78 [2018-11-23 12:18:17,338 INFO L226 Difference]: Without dead ends: 51 [2018-11-23 12:18:17,340 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:18:17,340 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-23 12:18:17,396 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 42. [2018-11-23 12:18:17,396 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:17,397 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand 42 states. [2018-11-23 12:18:17,397 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 42 states. [2018-11-23 12:18:17,398 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 42 states. [2018-11-23 12:18:17,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:17,402 INFO L93 Difference]: Finished difference Result 51 states and 61 transitions. [2018-11-23 12:18:17,402 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 61 transitions. [2018-11-23 12:18:17,403 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:17,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:17,403 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 51 states. [2018-11-23 12:18:17,404 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 51 states. [2018-11-23 12:18:17,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:17,407 INFO L93 Difference]: Finished difference Result 51 states and 61 transitions. [2018-11-23 12:18:17,407 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 61 transitions. [2018-11-23 12:18:17,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:17,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:17,409 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:17,409 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:17,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 42 states. [2018-11-23 12:18:17,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 49 transitions. [2018-11-23 12:18:17,412 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 49 transitions. Word has length 20 [2018-11-23 12:18:17,412 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:17,412 INFO L480 AbstractCegarLoop]: Abstraction has 42 states and 49 transitions. [2018-11-23 12:18:17,412 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:18:17,412 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 49 transitions. [2018-11-23 12:18:17,413 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-23 12:18:17,414 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:17,414 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] [2018-11-23 12:18:17,414 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:17,414 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:17,414 INFO L82 PathProgramCache]: Analyzing trace with hash -342662518, now seen corresponding path program 1 times [2018-11-23 12:18:17,415 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:17,415 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:17,416 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:17,416 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:17,416 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:17,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:17,555 INFO L256 TraceCheckUtils]: 0: Hoare triple {702#true} call ULTIMATE.init(); {702#true} is VALID [2018-11-23 12:18:17,556 INFO L273 TraceCheckUtils]: 1: Hoare triple {702#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {702#true} is VALID [2018-11-23 12:18:17,556 INFO L273 TraceCheckUtils]: 2: Hoare triple {702#true} assume true; {702#true} is VALID [2018-11-23 12:18:17,557 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {702#true} {702#true} #115#return; {702#true} is VALID [2018-11-23 12:18:17,557 INFO L256 TraceCheckUtils]: 4: Hoare triple {702#true} call #t~ret15 := main(); {702#true} is VALID [2018-11-23 12:18:17,557 INFO L273 TraceCheckUtils]: 5: Hoare triple {702#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {702#true} is VALID [2018-11-23 12:18:17,563 INFO L273 TraceCheckUtils]: 6: Hoare triple {702#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,564 INFO L273 TraceCheckUtils]: 7: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,565 INFO L273 TraceCheckUtils]: 8: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,566 INFO L273 TraceCheckUtils]: 9: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,566 INFO L273 TraceCheckUtils]: 10: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,575 INFO L273 TraceCheckUtils]: 11: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,576 INFO L273 TraceCheckUtils]: 12: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,577 INFO L273 TraceCheckUtils]: 13: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} ~i~0 := 1; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,578 INFO L273 TraceCheckUtils]: 14: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,581 INFO L273 TraceCheckUtils]: 15: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,592 INFO L273 TraceCheckUtils]: 16: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,593 INFO L273 TraceCheckUtils]: 17: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,594 INFO L273 TraceCheckUtils]: 18: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,595 INFO L273 TraceCheckUtils]: 19: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} ~i~0 := 1; {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,595 INFO L273 TraceCheckUtils]: 20: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:18:17,596 INFO L273 TraceCheckUtils]: 21: Hoare triple {704#(and (= main_~CCCELVOL1~0 1) (<= 2 main_~MINVAL~0))} assume ~CCCELVOL1~0 >= ~MINVAL~0;call write~int(~CCCELVOL1~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {703#false} is VALID [2018-11-23 12:18:17,596 INFO L273 TraceCheckUtils]: 22: Hoare triple {703#false} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {703#false} is VALID [2018-11-23 12:18:17,597 INFO L273 TraceCheckUtils]: 23: Hoare triple {703#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {703#false} is VALID [2018-11-23 12:18:17,597 INFO L273 TraceCheckUtils]: 24: Hoare triple {703#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {703#false} is VALID [2018-11-23 12:18:17,597 INFO L273 TraceCheckUtils]: 25: Hoare triple {703#false} ~i~0 := 0; {703#false} is VALID [2018-11-23 12:18:17,598 INFO L273 TraceCheckUtils]: 26: Hoare triple {703#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {703#false} is VALID [2018-11-23 12:18:17,598 INFO L273 TraceCheckUtils]: 27: Hoare triple {703#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {703#false} is VALID [2018-11-23 12:18:17,599 INFO L256 TraceCheckUtils]: 28: Hoare triple {703#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {703#false} is VALID [2018-11-23 12:18:17,599 INFO L273 TraceCheckUtils]: 29: Hoare triple {703#false} ~cond := #in~cond; {703#false} is VALID [2018-11-23 12:18:17,600 INFO L273 TraceCheckUtils]: 30: Hoare triple {703#false} assume 0 == ~cond; {703#false} is VALID [2018-11-23 12:18:17,600 INFO L273 TraceCheckUtils]: 31: Hoare triple {703#false} assume !false; {703#false} is VALID [2018-11-23 12:18:17,603 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-23 12:18:17,603 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:18:17,603 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 12:18:17,604 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 32 [2018-11-23 12:18:17,604 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:17,604 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 12:18:17,670 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:17,670 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 12:18:17,670 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 12:18:17,670 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:18:17,671 INFO L87 Difference]: Start difference. First operand 42 states and 49 transitions. Second operand 3 states. [2018-11-23 12:18:17,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:17,818 INFO L93 Difference]: Finished difference Result 63 states and 73 transitions. [2018-11-23 12:18:17,818 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:18:17,818 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 32 [2018-11-23 12:18:17,819 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:17,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:18:17,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-23 12:18:17,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:18:17,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-23 12:18:17,824 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 60 transitions. [2018-11-23 12:18:17,955 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:17,958 INFO L225 Difference]: With dead ends: 63 [2018-11-23 12:18:17,958 INFO L226 Difference]: Without dead ends: 42 [2018-11-23 12:18:17,959 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:18:17,959 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2018-11-23 12:18:18,008 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2018-11-23 12:18:18,008 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:18,008 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand 42 states. [2018-11-23 12:18:18,008 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 42 states. [2018-11-23 12:18:18,009 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 42 states. [2018-11-23 12:18:18,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:18,012 INFO L93 Difference]: Finished difference Result 42 states and 48 transitions. [2018-11-23 12:18:18,012 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 48 transitions. [2018-11-23 12:18:18,013 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:18,013 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:18,013 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 42 states. [2018-11-23 12:18:18,014 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 42 states. [2018-11-23 12:18:18,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:18,017 INFO L93 Difference]: Finished difference Result 42 states and 48 transitions. [2018-11-23 12:18:18,017 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 48 transitions. [2018-11-23 12:18:18,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:18,018 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:18,018 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:18,018 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:18,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 42 states. [2018-11-23 12:18:18,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 48 transitions. [2018-11-23 12:18:18,021 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 48 transitions. Word has length 32 [2018-11-23 12:18:18,021 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:18,021 INFO L480 AbstractCegarLoop]: Abstraction has 42 states and 48 transitions. [2018-11-23 12:18:18,021 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 12:18:18,021 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 48 transitions. [2018-11-23 12:18:18,023 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-23 12:18:18,023 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:18,023 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] [2018-11-23 12:18:18,023 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:18,024 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:18,024 INFO L82 PathProgramCache]: Analyzing trace with hash 358402060, now seen corresponding path program 1 times [2018-11-23 12:18:18,024 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:18,024 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:18,025 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:18,025 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:18,026 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:18,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:18,695 WARN L180 SmtUtils]: Spent 111.00 ms on a formula simplification. DAG size of input: 18 DAG size of output: 12 [2018-11-23 12:18:19,237 WARN L180 SmtUtils]: Spent 130.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 36 [2018-11-23 12:18:19,459 WARN L180 SmtUtils]: Spent 103.00 ms on a formula simplification. DAG size of input: 51 DAG size of output: 29 [2018-11-23 12:18:20,034 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification. DAG size of input: 69 DAG size of output: 34 [2018-11-23 12:18:20,372 WARN L180 SmtUtils]: Spent 100.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 38 [2018-11-23 12:18:20,860 INFO L256 TraceCheckUtils]: 0: Hoare triple {932#true} call ULTIMATE.init(); {932#true} is VALID [2018-11-23 12:18:20,860 INFO L273 TraceCheckUtils]: 1: Hoare triple {932#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {932#true} is VALID [2018-11-23 12:18:20,861 INFO L273 TraceCheckUtils]: 2: Hoare triple {932#true} assume true; {932#true} is VALID [2018-11-23 12:18:20,861 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {932#true} {932#true} #115#return; {932#true} is VALID [2018-11-23 12:18:20,861 INFO L256 TraceCheckUtils]: 4: Hoare triple {932#true} call #t~ret15 := main(); {932#true} is VALID [2018-11-23 12:18:20,862 INFO L273 TraceCheckUtils]: 5: Hoare triple {932#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {932#true} is VALID [2018-11-23 12:18:20,863 INFO L273 TraceCheckUtils]: 6: Hoare triple {932#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {934#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:20,865 INFO L273 TraceCheckUtils]: 7: Hoare triple {934#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {935#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,867 INFO L273 TraceCheckUtils]: 8: Hoare triple {935#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {935#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,869 INFO L273 TraceCheckUtils]: 9: Hoare triple {935#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,871 INFO L273 TraceCheckUtils]: 10: Hoare triple {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,873 INFO L273 TraceCheckUtils]: 11: Hoare triple {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {937#(and (or (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0))) (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 23))) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,875 INFO L273 TraceCheckUtils]: 12: Hoare triple {937#(and (or (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0))) (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 23))) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {938#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,877 INFO L273 TraceCheckUtils]: 13: Hoare triple {938#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} ~i~0 := 1; {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,883 INFO L273 TraceCheckUtils]: 14: Hoare triple {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,885 INFO L273 TraceCheckUtils]: 15: Hoare triple {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,886 INFO L273 TraceCheckUtils]: 16: Hoare triple {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,888 INFO L273 TraceCheckUtils]: 17: Hoare triple {936#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {939#(and (= |main_~#volArray~0.offset| 0) (or (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0))) (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (* 6 ~CELLCOUNT~0)) (+ (* 18 (div ~CELLCOUNT~0 3)) 23)))))} is VALID [2018-11-23 12:18:20,890 INFO L273 TraceCheckUtils]: 18: Hoare triple {939#(and (= |main_~#volArray~0.offset| 0) (or (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0))) (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (* 6 ~CELLCOUNT~0)) (+ (* 18 (div ~CELLCOUNT~0 3)) 23)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {938#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:20,891 INFO L273 TraceCheckUtils]: 19: Hoare triple {938#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (= |main_~#volArray~0.offset| 0) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} ~i~0 := 1; {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} is VALID [2018-11-23 12:18:20,893 INFO L273 TraceCheckUtils]: 20: Hoare triple {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} is VALID [2018-11-23 12:18:20,895 INFO L273 TraceCheckUtils]: 21: Hoare triple {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} is VALID [2018-11-23 12:18:20,897 INFO L273 TraceCheckUtils]: 22: Hoare triple {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} is VALID [2018-11-23 12:18:20,899 INFO L273 TraceCheckUtils]: 23: Hoare triple {940#(and (or (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))) (and (<= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0)) 11))) (= |main_~#volArray~0.offset| 0) (or (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))) (not (= 12 (+ |main_~#volArray~0.offset| (* 12 main_~i~0))))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {941#(and (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (* 6 ~CELLCOUNT~0)) (+ (* 18 (div ~CELLCOUNT~0 3)) 23)))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:20,901 INFO L273 TraceCheckUtils]: 24: Hoare triple {941#(and (or (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (* 6 ~CELLCOUNT~0)) (+ (* 18 (div ~CELLCOUNT~0 3)) 23)))) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {942#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:20,902 INFO L273 TraceCheckUtils]: 25: Hoare triple {942#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) 0)) (= |main_~#volArray~0.offset| 0))} ~i~0 := 0; {943#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0)))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:20,903 INFO L273 TraceCheckUtils]: 26: Hoare triple {943#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0)))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {944#(and |main_#t~short14| (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:20,905 INFO L273 TraceCheckUtils]: 27: Hoare triple {944#(and |main_#t~short14| (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {933#false} is VALID [2018-11-23 12:18:20,905 INFO L256 TraceCheckUtils]: 28: Hoare triple {933#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {933#false} is VALID [2018-11-23 12:18:20,906 INFO L273 TraceCheckUtils]: 29: Hoare triple {933#false} ~cond := #in~cond; {933#false} is VALID [2018-11-23 12:18:20,906 INFO L273 TraceCheckUtils]: 30: Hoare triple {933#false} assume 0 == ~cond; {933#false} is VALID [2018-11-23 12:18:20,907 INFO L273 TraceCheckUtils]: 31: Hoare triple {933#false} assume !false; {933#false} is VALID [2018-11-23 12:18:20,918 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:18:20,918 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:20,918 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:18:20,938 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:20,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:21,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:21,010 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:21,395 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:18:21,457 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:18:21,480 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:21,521 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:21,712 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:18:21,713 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:29, output treesize:22 [2018-11-23 12:18:21,729 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:18:21,730 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_26|, main_~CCCELVOL3~0]. (and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0) (= |#memory_int| (store |v_#memory_int_26| |main_~#volArray~0.base| (store (select |v_#memory_int_26| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)) main_~CCCELVOL3~0)))) [2018-11-23 12:18:21,730 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12))))) [2018-11-23 12:18:21,956 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:21,958 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 49 treesize of output 68 [2018-11-23 12:18:21,982 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:21,983 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:21,984 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:21,992 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:18:22,022 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,026 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:18:22,029 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,048 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,050 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,065 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,066 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:55, output treesize:14 [2018-11-23 12:18:22,312 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:18:22,319 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,322 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:18:22,325 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,336 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,350 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:18:22,351 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:33, output treesize:17 [2018-11-23 12:18:22,354 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:18:22,355 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_28|, main_~CCCELVOL2~0]. (let ((.cse0 (select |v_#memory_int_28| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (<= 7 (select .cse0 |main_~#volArray~0.offset|)) (= |#memory_int| (store |v_#memory_int_28| |main_~#volArray~0.base| (store .cse0 (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0))) (= |main_~#volArray~0.offset| 0))) [2018-11-23 12:18:22,355 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|))) [2018-11-23 12:18:22,412 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:22,426 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 67 treesize of output 104 [2018-11-23 12:18:22,451 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,454 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,476 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 41 treesize of output 75 [2018-11-23 12:18:22,493 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,494 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,555 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 66 treesize of output 64 [2018-11-23 12:18:22,559 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,594 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,599 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:18:22,601 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,608 INFO L267 ElimStorePlain]: Start of recursive call 3: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,611 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,620 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:18:22,621 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 2 variables, input treesize:76, output treesize:14 [2018-11-23 12:18:22,623 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:18:22,624 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_29|, main_~i~0]. (let ((.cse3 (select |v_#memory_int_29| |main_~#volArray~0.base|))) (and (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= (store |v_#memory_int_29| |main_~#volArray~0.base| (let ((.cse2 (* 12 main_~i~0))) (let ((.cse0 (let ((.cse4 (+ |main_~#volArray~0.offset| .cse2 (- 12)))) (store .cse3 .cse4 (select .cse3 .cse4)))) (.cse1 (+ |main_~#volArray~0.offset| .cse2 (- 4)))) (store .cse0 .cse1 (select .cse0 .cse1))))) |#memory_int|) (= |main_~#volArray~0.offset| 0) (<= 7 (select .cse3 |main_~#volArray~0.offset|)))) [2018-11-23 12:18:22,624 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|))) [2018-11-23 12:18:22,693 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:18:22,698 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,700 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,702 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:18:22,715 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,723 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,767 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:22,767 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:33, output treesize:29 [2018-11-23 12:18:22,814 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:22,816 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 79 treesize of output 114 [2018-11-23 12:18:22,891 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,916 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,943 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,956 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,958 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,960 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:22,990 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 51 treesize of output 119 [2018-11-23 12:18:23,049 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:23,063 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 3 case distinctions, treesize of input 49 treesize of output 71 [2018-11-23 12:18:23,067 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:23,081 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:23,171 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:23,183 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:18:23,184 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:88, output treesize:29 [2018-11-23 12:18:23,567 INFO L256 TraceCheckUtils]: 0: Hoare triple {932#true} call ULTIMATE.init(); {932#true} is VALID [2018-11-23 12:18:23,568 INFO L273 TraceCheckUtils]: 1: Hoare triple {932#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {932#true} is VALID [2018-11-23 12:18:23,568 INFO L273 TraceCheckUtils]: 2: Hoare triple {932#true} assume true; {932#true} is VALID [2018-11-23 12:18:23,568 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {932#true} {932#true} #115#return; {932#true} is VALID [2018-11-23 12:18:23,568 INFO L256 TraceCheckUtils]: 4: Hoare triple {932#true} call #t~ret15 := main(); {932#true} is VALID [2018-11-23 12:18:23,569 INFO L273 TraceCheckUtils]: 5: Hoare triple {932#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {932#true} is VALID [2018-11-23 12:18:23,571 INFO L273 TraceCheckUtils]: 6: Hoare triple {932#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {966#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:18:23,572 INFO L273 TraceCheckUtils]: 7: Hoare triple {966#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {970#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:18:23,575 INFO L273 TraceCheckUtils]: 8: Hoare triple {970#(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 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {970#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 main_~CCCELVOL3~0))} is VALID [2018-11-23 12:18:23,576 INFO L273 TraceCheckUtils]: 9: Hoare triple {970#(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 * (3 * ~i~0 - 3), 4); {977#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))))} is VALID [2018-11-23 12:18:23,577 INFO L273 TraceCheckUtils]: 10: Hoare triple {977#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 12)))))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,577 INFO L273 TraceCheckUtils]: 11: Hoare triple {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,578 INFO L273 TraceCheckUtils]: 12: Hoare triple {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,578 INFO L273 TraceCheckUtils]: 13: Hoare triple {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} ~i~0 := 1; {991#(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|)))} is VALID [2018-11-23 12:18:23,579 INFO L273 TraceCheckUtils]: 14: Hoare triple {991#(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|)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {991#(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|)))} is VALID [2018-11-23 12:18:23,580 INFO L273 TraceCheckUtils]: 15: Hoare triple {991#(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|)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {991#(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|)))} is VALID [2018-11-23 12:18:23,581 INFO L273 TraceCheckUtils]: 16: Hoare triple {991#(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|)))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,581 INFO L273 TraceCheckUtils]: 17: Hoare triple {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,582 INFO L273 TraceCheckUtils]: 18: Hoare triple {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,583 INFO L273 TraceCheckUtils]: 19: Hoare triple {981#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} ~i~0 := 1; {991#(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|)))} is VALID [2018-11-23 12:18:23,584 INFO L273 TraceCheckUtils]: 20: Hoare triple {991#(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|)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {991#(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|)))} is VALID [2018-11-23 12:18:23,586 INFO L273 TraceCheckUtils]: 21: Hoare triple {991#(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|)))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {1016#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 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|)))} is VALID [2018-11-23 12:18:23,587 INFO L273 TraceCheckUtils]: 22: Hoare triple {1016#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 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|)))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {1020#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,588 INFO L273 TraceCheckUtils]: 23: Hoare triple {1020#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1020#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,590 INFO L273 TraceCheckUtils]: 24: Hoare triple {1020#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1020#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} is VALID [2018-11-23 12:18:23,591 INFO L273 TraceCheckUtils]: 25: Hoare triple {1020#(and (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)))} ~i~0 := 0; {1030#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_2 Int)) (and (<= 1 v_prenex_2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_2) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= main_~i~0 0))} is VALID [2018-11-23 12:18:23,592 INFO L273 TraceCheckUtils]: 26: Hoare triple {1030#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_2 Int)) (and (<= 1 v_prenex_2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_2) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (<= 7 (select (select |#memory_int| |main_~#volArray~0.base|) |main_~#volArray~0.offset|)) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {1034#|main_#t~short14|} is VALID [2018-11-23 12:18:23,593 INFO L273 TraceCheckUtils]: 27: Hoare triple {1034#|main_#t~short14|} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {933#false} is VALID [2018-11-23 12:18:23,593 INFO L256 TraceCheckUtils]: 28: Hoare triple {933#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {933#false} is VALID [2018-11-23 12:18:23,594 INFO L273 TraceCheckUtils]: 29: Hoare triple {933#false} ~cond := #in~cond; {933#false} is VALID [2018-11-23 12:18:23,594 INFO L273 TraceCheckUtils]: 30: Hoare triple {933#false} assume 0 == ~cond; {933#false} is VALID [2018-11-23 12:18:23,594 INFO L273 TraceCheckUtils]: 31: Hoare triple {933#false} assume !false; {933#false} is VALID [2018-11-23 12:18:23,602 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:18:23,632 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:23,632 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 22 [2018-11-23 12:18:23,632 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 32 [2018-11-23 12:18:23,633 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:23,633 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-23 12:18:23,778 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:23,779 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-23 12:18:23,779 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-23 12:18:23,779 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=375, Unknown=0, NotChecked=0, Total=462 [2018-11-23 12:18:23,780 INFO L87 Difference]: Start difference. First operand 42 states and 48 transitions. Second operand 22 states. [2018-11-23 12:18:27,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:27,609 INFO L93 Difference]: Finished difference Result 97 states and 116 transitions. [2018-11-23 12:18:27,609 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:18:27,610 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 32 [2018-11-23 12:18:27,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:27,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:18:27,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 106 transitions. [2018-11-23 12:18:27,614 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:18:27,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 106 transitions. [2018-11-23 12:18:27,618 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 106 transitions. [2018-11-23 12:18:27,824 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:27,829 INFO L225 Difference]: With dead ends: 97 [2018-11-23 12:18:27,829 INFO L226 Difference]: Without dead ends: 64 [2018-11-23 12:18:27,830 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 24 SyntacticMatches, 9 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 244 ImplicationChecksByTransitivity, 3.4s TimeCoverageRelationStatistics Valid=283, Invalid=839, Unknown=0, NotChecked=0, Total=1122 [2018-11-23 12:18:27,830 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-23 12:18:28,005 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 44. [2018-11-23 12:18:28,006 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:28,006 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand 44 states. [2018-11-23 12:18:28,006 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 44 states. [2018-11-23 12:18:28,006 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 44 states. [2018-11-23 12:18:28,010 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:28,011 INFO L93 Difference]: Finished difference Result 64 states and 74 transitions. [2018-11-23 12:18:28,011 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 74 transitions. [2018-11-23 12:18:28,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:28,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:28,012 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 64 states. [2018-11-23 12:18:28,012 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 64 states. [2018-11-23 12:18:28,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:28,015 INFO L93 Difference]: Finished difference Result 64 states and 74 transitions. [2018-11-23 12:18:28,016 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 74 transitions. [2018-11-23 12:18:28,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:28,017 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:28,017 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:28,017 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:28,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2018-11-23 12:18:28,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 49 transitions. [2018-11-23 12:18:28,019 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 49 transitions. Word has length 32 [2018-11-23 12:18:28,019 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:28,019 INFO L480 AbstractCegarLoop]: Abstraction has 44 states and 49 transitions. [2018-11-23 12:18:28,019 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-23 12:18:28,019 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 49 transitions. [2018-11-23 12:18:28,020 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2018-11-23 12:18:28,020 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:28,021 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] [2018-11-23 12:18:28,021 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:28,021 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:28,021 INFO L82 PathProgramCache]: Analyzing trace with hash -1823458169, now seen corresponding path program 1 times [2018-11-23 12:18:28,022 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:28,022 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:28,023 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:28,023 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:28,023 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:28,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:29,238 WARN L180 SmtUtils]: Spent 103.00 ms on a formula simplification. DAG size of input: 82 DAG size of output: 44 [2018-11-23 12:18:29,484 WARN L180 SmtUtils]: Spent 105.00 ms on a formula simplification. DAG size of input: 73 DAG size of output: 33 [2018-11-23 12:18:30,180 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 62 DAG size of output: 40 [2018-11-23 12:18:30,702 INFO L256 TraceCheckUtils]: 0: Hoare triple {1388#true} call ULTIMATE.init(); {1388#true} is VALID [2018-11-23 12:18:30,703 INFO L273 TraceCheckUtils]: 1: Hoare triple {1388#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {1388#true} is VALID [2018-11-23 12:18:30,703 INFO L273 TraceCheckUtils]: 2: Hoare triple {1388#true} assume true; {1388#true} is VALID [2018-11-23 12:18:30,703 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1388#true} {1388#true} #115#return; {1388#true} is VALID [2018-11-23 12:18:30,704 INFO L256 TraceCheckUtils]: 4: Hoare triple {1388#true} call #t~ret15 := main(); {1388#true} is VALID [2018-11-23 12:18:30,704 INFO L273 TraceCheckUtils]: 5: Hoare triple {1388#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {1388#true} is VALID [2018-11-23 12:18:30,705 INFO L273 TraceCheckUtils]: 6: Hoare triple {1388#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {1390#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,707 INFO L273 TraceCheckUtils]: 7: Hoare triple {1390#(and (<= 2 ~CELLCOUNT~0) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,707 INFO L273 TraceCheckUtils]: 8: Hoare triple {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,708 INFO L273 TraceCheckUtils]: 9: Hoare triple {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,708 INFO L273 TraceCheckUtils]: 10: Hoare triple {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,710 INFO L273 TraceCheckUtils]: 11: Hoare triple {1391#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1392#(and (or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (* 3 main_~i~0) 6) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:30,711 INFO L273 TraceCheckUtils]: 12: Hoare triple {1392#(and (or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (* 3 main_~i~0) 6) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1393#(and (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,712 INFO L273 TraceCheckUtils]: 13: Hoare triple {1393#(and (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} ~i~0 := 1; {1393#(and (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,714 INFO L273 TraceCheckUtils]: 14: Hoare triple {1393#(and (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1394#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (or (and (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= (* 12 main_~i~0) (* 12 (div ~CELLCOUNT~0 3)))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:18:30,716 INFO L273 TraceCheckUtils]: 15: Hoare triple {1394#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (or (and (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= (* 12 main_~i~0) (* 12 (div ~CELLCOUNT~0 3)))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {1395#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (and (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= (* 12 main_~i~0) (* 12 (div ~CELLCOUNT~0 3)))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:30,717 INFO L273 TraceCheckUtils]: 16: Hoare triple {1395#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (and (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= (* 12 main_~i~0) (* 12 (div ~CELLCOUNT~0 3)))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {1395#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (and (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= (* 12 main_~i~0) (* 12 (div ~CELLCOUNT~0 3)))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:30,719 INFO L273 TraceCheckUtils]: 17: Hoare triple {1395#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (and (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= 12 (* 12 (div ~CELLCOUNT~0 3))) (= (* 12 main_~i~0) (* 12 (div ~CELLCOUNT~0 3)))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {1396#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 (div ~CELLCOUNT~0 3)) (- 8)))) (= 12 (* 12 (div ~CELLCOUNT~0 3))))))} is VALID [2018-11-23 12:18:30,721 INFO L273 TraceCheckUtils]: 18: Hoare triple {1396#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 (div ~CELLCOUNT~0 3)) (- 8)))) (= 12 (* 12 (div ~CELLCOUNT~0 3))))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1397#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 (div ~CELLCOUNT~0 3)) (- 8)))) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (= 12 (* 12 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:30,723 INFO L273 TraceCheckUtils]: 19: Hoare triple {1397#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 (div ~CELLCOUNT~0 3)) (- 8)))) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (= 12 (* 12 (div ~CELLCOUNT~0 3))))} ~i~0 := 1; {1398#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ (div ~CELLCOUNT~0 3) 1) main_~i~0) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} is VALID [2018-11-23 12:18:30,725 INFO L273 TraceCheckUtils]: 20: Hoare triple {1398#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ (div ~CELLCOUNT~0 3) 1) main_~i~0) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1399#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} is VALID [2018-11-23 12:18:30,727 INFO L273 TraceCheckUtils]: 21: Hoare triple {1399#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {1399#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} is VALID [2018-11-23 12:18:30,728 INFO L273 TraceCheckUtils]: 22: Hoare triple {1399#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {1399#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} is VALID [2018-11-23 12:18:30,730 INFO L273 TraceCheckUtils]: 23: Hoare triple {1399#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (and (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= (* 12 main_~i~0) 12))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1400#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8)))))))} is VALID [2018-11-23 12:18:30,735 INFO L273 TraceCheckUtils]: 24: Hoare triple {1400#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8)))))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1401#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:18:30,736 INFO L273 TraceCheckUtils]: 25: Hoare triple {1401#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))))} ~i~0 := 0; {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:30,737 INFO L273 TraceCheckUtils]: 26: Hoare triple {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:30,737 INFO L273 TraceCheckUtils]: 27: Hoare triple {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} assume #t~short14; {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:30,737 INFO L256 TraceCheckUtils]: 28: Hoare triple {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {1388#true} is VALID [2018-11-23 12:18:30,738 INFO L273 TraceCheckUtils]: 29: Hoare triple {1388#true} ~cond := #in~cond; {1388#true} is VALID [2018-11-23 12:18:30,738 INFO L273 TraceCheckUtils]: 30: Hoare triple {1388#true} assume !(0 == ~cond); {1388#true} is VALID [2018-11-23 12:18:30,738 INFO L273 TraceCheckUtils]: 31: Hoare triple {1388#true} assume true; {1388#true} is VALID [2018-11-23 12:18:30,739 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {1388#true} {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} #119#return; {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:30,739 INFO L273 TraceCheckUtils]: 33: Hoare triple {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:30,740 INFO L273 TraceCheckUtils]: 34: Hoare triple {1402#(and (<= (+ (div ~CELLCOUNT~0 3) 2) ~CELLCOUNT~0) (<= (div (+ (* (- 3) (div ~CELLCOUNT~0 3)) (+ (* 3 ~CELLCOUNT~0) 1)) 2) 3) (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 3) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {1403#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:18:30,741 INFO L273 TraceCheckUtils]: 35: Hoare triple {1403#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {1404#|main_#t~short14|} is VALID [2018-11-23 12:18:30,746 INFO L273 TraceCheckUtils]: 36: Hoare triple {1404#|main_#t~short14|} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {1389#false} is VALID [2018-11-23 12:18:30,746 INFO L256 TraceCheckUtils]: 37: Hoare triple {1389#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {1389#false} is VALID [2018-11-23 12:18:30,746 INFO L273 TraceCheckUtils]: 38: Hoare triple {1389#false} ~cond := #in~cond; {1389#false} is VALID [2018-11-23 12:18:30,747 INFO L273 TraceCheckUtils]: 39: Hoare triple {1389#false} assume 0 == ~cond; {1389#false} is VALID [2018-11-23 12:18:30,747 INFO L273 TraceCheckUtils]: 40: Hoare triple {1389#false} assume !false; {1389#false} is VALID [2018-11-23 12:18:30,755 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:18:30,755 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:30,755 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:18:30,764 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:30,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:30,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:30,817 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:30,914 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:18:30,919 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:18:30,921 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:30,924 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:30,984 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:18:30,984 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:29, output treesize:22 [2018-11-23 12:18:30,989 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:18:30,989 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_32|, main_~CCCELVOL2~0]. (and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (store |v_#memory_int_32| |main_~#volArray~0.base| (store (select |v_#memory_int_32| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0)) |#memory_int|)) [2018-11-23 12:18:30,989 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= main_~MINVAL~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:18:31,028 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:31,029 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 43 treesize of output 54 [2018-11-23 12:18:31,050 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,051 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,052 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,060 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 27 treesize of output 47 [2018-11-23 12:18:31,065 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,069 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:18:31,071 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,077 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,080 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,087 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,087 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:49, output treesize:16 [2018-11-23 12:18:31,168 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:18:31,176 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,177 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,179 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:18:31,182 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,191 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,202 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,203 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:35, output treesize:31 [2018-11-23 12:18:31,280 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:31,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 81 treesize of output 116 [2018-11-23 12:18:31,307 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,308 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,310 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,311 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,314 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,321 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,355 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:18:31,402 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,404 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,410 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 128 treesize of output 128 [2018-11-23 12:18:31,414 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,463 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,465 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,466 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,470 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:31,474 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:18:31,477 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,493 INFO L267 ElimStorePlain]: Start of recursive call 3: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,499 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:31,510 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:18:31,511 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 2 variables, input treesize:90, output treesize:31 [2018-11-23 12:18:32,030 INFO L256 TraceCheckUtils]: 0: Hoare triple {1388#true} call ULTIMATE.init(); {1388#true} is VALID [2018-11-23 12:18:32,030 INFO L273 TraceCheckUtils]: 1: Hoare triple {1388#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {1388#true} is VALID [2018-11-23 12:18:32,030 INFO L273 TraceCheckUtils]: 2: Hoare triple {1388#true} assume true; {1388#true} is VALID [2018-11-23 12:18:32,031 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1388#true} {1388#true} #115#return; {1388#true} is VALID [2018-11-23 12:18:32,031 INFO L256 TraceCheckUtils]: 4: Hoare triple {1388#true} call #t~ret15 := main(); {1388#true} is VALID [2018-11-23 12:18:32,031 INFO L273 TraceCheckUtils]: 5: Hoare triple {1388#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {1388#true} is VALID [2018-11-23 12:18:32,037 INFO L273 TraceCheckUtils]: 6: Hoare triple {1388#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,038 INFO L273 TraceCheckUtils]: 7: Hoare triple {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,038 INFO L273 TraceCheckUtils]: 8: Hoare triple {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,039 INFO L273 TraceCheckUtils]: 9: Hoare triple {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,039 INFO L273 TraceCheckUtils]: 10: Hoare triple {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,046 INFO L273 TraceCheckUtils]: 11: Hoare triple {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,047 INFO L273 TraceCheckUtils]: 12: Hoare triple {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,048 INFO L273 TraceCheckUtils]: 13: Hoare triple {1426#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {1448#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,048 INFO L273 TraceCheckUtils]: 14: Hoare triple {1448#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1448#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,049 INFO L273 TraceCheckUtils]: 15: Hoare triple {1448#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {1455#(and (<= main_~MINVAL~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,050 INFO L273 TraceCheckUtils]: 16: Hoare triple {1455#(and (<= main_~MINVAL~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {1459#(and (<= 3 (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:18:32,050 INFO L273 TraceCheckUtils]: 17: Hoare triple {1459#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {1459#(and (<= 3 (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:18:32,051 INFO L273 TraceCheckUtils]: 18: Hoare triple {1459#(and (<= 3 (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 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1459#(and (<= 3 (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:18:32,051 INFO L273 TraceCheckUtils]: 19: Hoare triple {1459#(and (<= 3 (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; {1469#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,052 INFO L273 TraceCheckUtils]: 20: Hoare triple {1469#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1469#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,053 INFO L273 TraceCheckUtils]: 21: Hoare triple {1469#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= 1 main_~i~0) (<= 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 * (3 * ~i~0 - 1), 4); {1476#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,055 INFO L273 TraceCheckUtils]: 22: Hoare triple {1476#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {1480#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,057 INFO L273 TraceCheckUtils]: 23: Hoare triple {1480#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1480#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,058 INFO L273 TraceCheckUtils]: 24: Hoare triple {1480#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {1480#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,059 INFO L273 TraceCheckUtils]: 25: Hoare triple {1480#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 1 main_~i~0))) (= |main_~#volArray~0.offset| 0))} ~i~0 := 0; {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:32,061 INFO L273 TraceCheckUtils]: 26: Hoare triple {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:32,063 INFO L273 TraceCheckUtils]: 27: Hoare triple {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} assume #t~short14; {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:32,065 INFO L256 TraceCheckUtils]: 28: Hoare triple {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} is VALID [2018-11-23 12:18:32,065 INFO L273 TraceCheckUtils]: 29: Hoare triple {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} ~cond := #in~cond; {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} is VALID [2018-11-23 12:18:32,073 INFO L273 TraceCheckUtils]: 30: Hoare triple {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} assume !(0 == ~cond); {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} is VALID [2018-11-23 12:18:32,074 INFO L273 TraceCheckUtils]: 31: Hoare triple {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} assume true; {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} is VALID [2018-11-23 12:18:32,075 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {1500#(exists ((v_prenex_4 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_1| Int)) (and (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) 4)) (<= 1 v_prenex_4) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_1|) (+ (* 12 v_prenex_4) (- 4))))))} {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} #119#return; {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:32,075 INFO L273 TraceCheckUtils]: 33: Hoare triple {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:32,077 INFO L273 TraceCheckUtils]: 34: Hoare triple {1490#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {1519#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:32,077 INFO L273 TraceCheckUtils]: 35: Hoare triple {1519#(and (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 4))) (<= main_~MINVAL~0 2) (exists ((v_prenex_4 Int)) (and (<= 1 v_prenex_4) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_4) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {1404#|main_#t~short14|} is VALID [2018-11-23 12:18:32,078 INFO L273 TraceCheckUtils]: 36: Hoare triple {1404#|main_#t~short14|} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {1389#false} is VALID [2018-11-23 12:18:32,078 INFO L256 TraceCheckUtils]: 37: Hoare triple {1389#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {1389#false} is VALID [2018-11-23 12:18:32,078 INFO L273 TraceCheckUtils]: 38: Hoare triple {1389#false} ~cond := #in~cond; {1389#false} is VALID [2018-11-23 12:18:32,079 INFO L273 TraceCheckUtils]: 39: Hoare triple {1389#false} assume 0 == ~cond; {1389#false} is VALID [2018-11-23 12:18:32,079 INFO L273 TraceCheckUtils]: 40: Hoare triple {1389#false} assume !false; {1389#false} is VALID [2018-11-23 12:18:32,087 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 12:18:32,106 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:32,106 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13] total 27 [2018-11-23 12:18:32,107 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 41 [2018-11-23 12:18:32,107 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:32,107 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-23 12:18:32,207 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:18:32,208 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-23 12:18:32,208 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-23 12:18:32,209 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=92, Invalid=610, Unknown=0, NotChecked=0, Total=702 [2018-11-23 12:18:32,209 INFO L87 Difference]: Start difference. First operand 44 states and 49 transitions. Second operand 27 states. [2018-11-23 12:18:38,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:38,782 INFO L93 Difference]: Finished difference Result 128 states and 152 transitions. [2018-11-23 12:18:38,782 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-11-23 12:18:38,782 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 41 [2018-11-23 12:18:38,783 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:38,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:18:38,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 141 transitions. [2018-11-23 12:18:38,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:18:38,791 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 141 transitions. [2018-11-23 12:18:38,791 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 141 transitions. [2018-11-23 12:18:39,023 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:39,026 INFO L225 Difference]: With dead ends: 128 [2018-11-23 12:18:39,026 INFO L226 Difference]: Without dead ends: 99 [2018-11-23 12:18:39,027 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 31 SyntacticMatches, 6 SemanticMatches, 51 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 678 ImplicationChecksByTransitivity, 4.2s TimeCoverageRelationStatistics Valid=551, Invalid=2205, Unknown=0, NotChecked=0, Total=2756 [2018-11-23 12:18:39,028 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2018-11-23 12:18:39,153 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 49. [2018-11-23 12:18:39,154 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:39,154 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand 49 states. [2018-11-23 12:18:39,154 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand 49 states. [2018-11-23 12:18:39,154 INFO L87 Difference]: Start difference. First operand 99 states. Second operand 49 states. [2018-11-23 12:18:39,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:39,158 INFO L93 Difference]: Finished difference Result 99 states and 113 transitions. [2018-11-23 12:18:39,159 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 113 transitions. [2018-11-23 12:18:39,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:39,159 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:39,160 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 99 states. [2018-11-23 12:18:39,160 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 99 states. [2018-11-23 12:18:39,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:39,164 INFO L93 Difference]: Finished difference Result 99 states and 113 transitions. [2018-11-23 12:18:39,164 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 113 transitions. [2018-11-23 12:18:39,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:39,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:39,165 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:39,165 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:39,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 49 states. [2018-11-23 12:18:39,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 54 transitions. [2018-11-23 12:18:39,167 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 54 transitions. Word has length 41 [2018-11-23 12:18:39,168 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:39,168 INFO L480 AbstractCegarLoop]: Abstraction has 49 states and 54 transitions. [2018-11-23 12:18:39,168 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-23 12:18:39,168 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 54 transitions. [2018-11-23 12:18:39,169 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 12:18:39,169 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:39,169 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] [2018-11-23 12:18:39,170 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:39,170 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:39,170 INFO L82 PathProgramCache]: Analyzing trace with hash -1119313300, now seen corresponding path program 2 times [2018-11-23 12:18:39,170 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:39,170 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:39,171 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:39,171 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:39,171 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:39,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:40,312 INFO L256 TraceCheckUtils]: 0: Hoare triple {2023#true} call ULTIMATE.init(); {2023#true} is VALID [2018-11-23 12:18:40,313 INFO L273 TraceCheckUtils]: 1: Hoare triple {2023#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2023#true} is VALID [2018-11-23 12:18:40,313 INFO L273 TraceCheckUtils]: 2: Hoare triple {2023#true} assume true; {2023#true} is VALID [2018-11-23 12:18:40,313 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2023#true} {2023#true} #115#return; {2023#true} is VALID [2018-11-23 12:18:40,313 INFO L256 TraceCheckUtils]: 4: Hoare triple {2023#true} call #t~ret15 := main(); {2023#true} is VALID [2018-11-23 12:18:40,314 INFO L273 TraceCheckUtils]: 5: Hoare triple {2023#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2023#true} is VALID [2018-11-23 12:18:40,315 INFO L273 TraceCheckUtils]: 6: Hoare triple {2023#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {2025#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:18:40,315 INFO L273 TraceCheckUtils]: 7: Hoare triple {2025#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,316 INFO L273 TraceCheckUtils]: 8: Hoare triple {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,316 INFO L273 TraceCheckUtils]: 9: Hoare triple {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,317 INFO L273 TraceCheckUtils]: 10: Hoare triple {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,319 INFO L273 TraceCheckUtils]: 11: Hoare triple {2026#(and (<= 2 ~CELLCOUNT~0) (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2027#(and (<= (div (+ (* 3 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 3) (div (+ ~CELLCOUNT~0 1) 3)) (or (<= (+ (div (+ (* 3 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 3) 1) (div (+ ~CELLCOUNT~0 1) 3)) (= (+ (* 12 (div (+ (* 3 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 3)) 12) (* 12 main_~i~0)) (<= (* 3 main_~i~0) 5)) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,321 INFO L273 TraceCheckUtils]: 12: Hoare triple {2027#(and (<= (div (+ (* 3 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 3) (div (+ ~CELLCOUNT~0 1) 3)) (or (<= (+ (div (+ (* 3 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 3) 1) (div (+ ~CELLCOUNT~0 1) 3)) (= (+ (* 12 (div (+ (* 3 main_~i~0) (+ (- ~CELLCOUNT~0) 1)) 3)) 12) (* 12 main_~i~0)) (<= (* 3 main_~i~0) 5)) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2028#(and (<= (div (+ (* 3 (div ~CELLCOUNT~0 3)) (+ (- ~CELLCOUNT~0) 4)) 3) (div (+ ~CELLCOUNT~0 1) 3)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,322 INFO L273 TraceCheckUtils]: 13: Hoare triple {2028#(and (<= (div (+ (* 3 (div ~CELLCOUNT~0 3)) (+ (- ~CELLCOUNT~0) 4)) 3) (div (+ ~CELLCOUNT~0 1) 3)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} ~i~0 := 1; {2028#(and (<= (div (+ (* 3 (div ~CELLCOUNT~0 3)) (+ (- ~CELLCOUNT~0) 4)) 3) (div (+ ~CELLCOUNT~0 1) 3)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,325 INFO L273 TraceCheckUtils]: 14: Hoare triple {2028#(and (<= (div (+ (* 3 (div ~CELLCOUNT~0 3)) (+ (- ~CELLCOUNT~0) 4)) 3) (div (+ ~CELLCOUNT~0 1) 3)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} is VALID [2018-11-23 12:18:40,326 INFO L273 TraceCheckUtils]: 15: Hoare triple {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} is VALID [2018-11-23 12:18:40,329 INFO L273 TraceCheckUtils]: 16: Hoare triple {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} is VALID [2018-11-23 12:18:40,332 INFO L273 TraceCheckUtils]: 17: Hoare triple {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} is VALID [2018-11-23 12:18:40,345 INFO L273 TraceCheckUtils]: 18: Hoare triple {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} is VALID [2018-11-23 12:18:40,347 INFO L273 TraceCheckUtils]: 19: Hoare triple {2029#(or (<= 2 (div ~CELLCOUNT~0 3)) (= 12 (* 4 ~CELLCOUNT~0)))} ~i~0 := 1; {2030#(and (or (<= ~CELLCOUNT~0 2) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:40,347 INFO L273 TraceCheckUtils]: 20: Hoare triple {2030#(and (or (<= ~CELLCOUNT~0 2) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0))) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2030#(and (or (<= ~CELLCOUNT~0 2) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:40,348 INFO L273 TraceCheckUtils]: 21: Hoare triple {2030#(and (or (<= ~CELLCOUNT~0 2) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)) (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0))) (= main_~i~0 1))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {2031#(and (= main_~i~0 1) (or (<= ~CELLCOUNT~0 2) (and (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0)) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,349 INFO L273 TraceCheckUtils]: 22: Hoare triple {2031#(and (= main_~i~0 1) (or (<= ~CELLCOUNT~0 2) (and (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0)) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {2031#(and (= main_~i~0 1) (or (<= ~CELLCOUNT~0 2) (and (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0)) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:18:40,350 INFO L273 TraceCheckUtils]: 23: Hoare triple {2031#(and (= main_~i~0 1) (or (<= ~CELLCOUNT~0 2) (and (= (* 12 main_~i~0) (* 4 ~CELLCOUNT~0)) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2032#(or (and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3)) (<= main_~i~0 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:18:40,351 INFO L273 TraceCheckUtils]: 24: Hoare triple {2032#(or (and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3)) (<= main_~i~0 (div ~CELLCOUNT~0 3)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2033#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:18:40,352 INFO L273 TraceCheckUtils]: 25: Hoare triple {2033#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3))} ~i~0 := 0; {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:40,353 INFO L273 TraceCheckUtils]: 26: Hoare triple {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:40,354 INFO L273 TraceCheckUtils]: 27: Hoare triple {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} assume #t~short14; {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:40,354 INFO L256 TraceCheckUtils]: 28: Hoare triple {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2023#true} is VALID [2018-11-23 12:18:40,355 INFO L273 TraceCheckUtils]: 29: Hoare triple {2023#true} ~cond := #in~cond; {2023#true} is VALID [2018-11-23 12:18:40,355 INFO L273 TraceCheckUtils]: 30: Hoare triple {2023#true} assume !(0 == ~cond); {2023#true} is VALID [2018-11-23 12:18:40,356 INFO L273 TraceCheckUtils]: 31: Hoare triple {2023#true} assume true; {2023#true} is VALID [2018-11-23 12:18:40,357 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2023#true} {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} #119#return; {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:40,358 INFO L273 TraceCheckUtils]: 33: Hoare triple {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:40,361 INFO L273 TraceCheckUtils]: 34: Hoare triple {2034#(and (or (<= ~CELLCOUNT~0 2) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4)))))) (<= ~CELLCOUNT~0 3) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:18:40,364 INFO L273 TraceCheckUtils]: 35: Hoare triple {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:18:40,365 INFO L273 TraceCheckUtils]: 36: Hoare triple {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} assume #t~short14; {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:18:40,365 INFO L256 TraceCheckUtils]: 37: Hoare triple {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2023#true} is VALID [2018-11-23 12:18:40,365 INFO L273 TraceCheckUtils]: 38: Hoare triple {2023#true} ~cond := #in~cond; {2023#true} is VALID [2018-11-23 12:18:40,366 INFO L273 TraceCheckUtils]: 39: Hoare triple {2023#true} assume !(0 == ~cond); {2023#true} is VALID [2018-11-23 12:18:40,366 INFO L273 TraceCheckUtils]: 40: Hoare triple {2023#true} assume true; {2023#true} is VALID [2018-11-23 12:18:40,370 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {2023#true} {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} #119#return; {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:18:40,370 INFO L273 TraceCheckUtils]: 42: Hoare triple {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:18:40,372 INFO L273 TraceCheckUtils]: 43: Hoare triple {2035#(and (or (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 4 ~CELLCOUNT~0) (- 4))))) (<= ~CELLCOUNT~0 (+ main_~i~0 1))) (<= ~CELLCOUNT~0 (+ main_~i~0 2)))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2036#(or (<= ~CELLCOUNT~0 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0)))))} is VALID [2018-11-23 12:18:40,372 INFO L273 TraceCheckUtils]: 44: Hoare triple {2036#(or (<= ~CELLCOUNT~0 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2037#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:18:40,374 INFO L273 TraceCheckUtils]: 45: Hoare triple {2037#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {2038#|main_#t~short14|} is VALID [2018-11-23 12:18:40,374 INFO L256 TraceCheckUtils]: 46: Hoare triple {2038#|main_#t~short14|} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:40,376 INFO L273 TraceCheckUtils]: 47: Hoare triple {2039#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {2040#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:18:40,376 INFO L273 TraceCheckUtils]: 48: Hoare triple {2040#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {2024#false} is VALID [2018-11-23 12:18:40,376 INFO L273 TraceCheckUtils]: 49: Hoare triple {2024#false} assume !false; {2024#false} is VALID [2018-11-23 12:18:40,383 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 4 proven. 14 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:18:40,384 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:40,384 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:18:40,394 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:18:40,422 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:18:40,422 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:40,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:40,441 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:40,666 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:18:40,672 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:18:40,675 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:40,678 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:40,688 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:40,688 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:23, output treesize:19 [2018-11-23 12:18:40,754 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:40,755 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 47 treesize of output 62 [2018-11-23 12:18:40,776 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:40,778 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:40,779 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:40,788 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 27 treesize of output 45 [2018-11-23 12:18:40,794 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:40,796 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 18 treesize of output 23 [2018-11-23 12:18:40,799 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:40,824 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:40,831 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:40,835 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:40,835 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:50, output treesize:13 [2018-11-23 12:18:41,142 INFO L256 TraceCheckUtils]: 0: Hoare triple {2023#true} call ULTIMATE.init(); {2023#true} is VALID [2018-11-23 12:18:41,142 INFO L273 TraceCheckUtils]: 1: Hoare triple {2023#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2023#true} is VALID [2018-11-23 12:18:41,143 INFO L273 TraceCheckUtils]: 2: Hoare triple {2023#true} assume true; {2023#true} is VALID [2018-11-23 12:18:41,143 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2023#true} {2023#true} #115#return; {2023#true} is VALID [2018-11-23 12:18:41,143 INFO L256 TraceCheckUtils]: 4: Hoare triple {2023#true} call #t~ret15 := main(); {2023#true} is VALID [2018-11-23 12:18:41,143 INFO L273 TraceCheckUtils]: 5: Hoare triple {2023#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2023#true} is VALID [2018-11-23 12:18:41,144 INFO L273 TraceCheckUtils]: 6: Hoare triple {2023#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,145 INFO L273 TraceCheckUtils]: 7: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,145 INFO L273 TraceCheckUtils]: 8: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,145 INFO L273 TraceCheckUtils]: 9: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,146 INFO L273 TraceCheckUtils]: 10: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,146 INFO L273 TraceCheckUtils]: 11: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,146 INFO L273 TraceCheckUtils]: 12: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,147 INFO L273 TraceCheckUtils]: 13: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} ~i~0 := 1; {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,147 INFO L273 TraceCheckUtils]: 14: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,150 INFO L273 TraceCheckUtils]: 15: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,150 INFO L273 TraceCheckUtils]: 16: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,151 INFO L273 TraceCheckUtils]: 17: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,151 INFO L273 TraceCheckUtils]: 18: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2062#(= |main_~#volArray~0.offset| 0)} is VALID [2018-11-23 12:18:41,152 INFO L273 TraceCheckUtils]: 19: Hoare triple {2062#(= |main_~#volArray~0.offset| 0)} ~i~0 := 1; {2102#(and (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,153 INFO L273 TraceCheckUtils]: 20: Hoare triple {2102#(and (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2102#(and (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,154 INFO L273 TraceCheckUtils]: 21: Hoare triple {2102#(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 * (3 * ~i~0 - 1), 4); {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,155 INFO L273 TraceCheckUtils]: 22: Hoare triple {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {2113#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:41,155 INFO L273 TraceCheckUtils]: 23: Hoare triple {2113#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2113#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:41,156 INFO L273 TraceCheckUtils]: 24: Hoare triple {2113#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2113#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:41,156 INFO L273 TraceCheckUtils]: 25: Hoare triple {2113#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} ~i~0 := 0; {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:41,157 INFO L273 TraceCheckUtils]: 26: Hoare triple {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:41,158 INFO L273 TraceCheckUtils]: 27: Hoare triple {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} assume #t~short14; {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:41,181 INFO L256 TraceCheckUtils]: 28: Hoare triple {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,195 INFO L273 TraceCheckUtils]: 29: Hoare triple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} ~cond := #in~cond; {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,199 INFO L273 TraceCheckUtils]: 30: Hoare triple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} assume !(0 == ~cond); {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,199 INFO L273 TraceCheckUtils]: 31: Hoare triple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} assume true; {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,200 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} #119#return; {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:41,201 INFO L273 TraceCheckUtils]: 33: Hoare triple {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} is VALID [2018-11-23 12:18:41,201 INFO L273 TraceCheckUtils]: 34: Hoare triple {2123#(and (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,202 INFO L273 TraceCheckUtils]: 35: Hoare triple {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,203 INFO L273 TraceCheckUtils]: 36: Hoare triple {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume #t~short14; {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,204 INFO L256 TraceCheckUtils]: 37: Hoare triple {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,204 INFO L273 TraceCheckUtils]: 38: Hoare triple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} ~cond := #in~cond; {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,204 INFO L273 TraceCheckUtils]: 39: Hoare triple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} assume !(0 == ~cond); {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,205 INFO L273 TraceCheckUtils]: 40: Hoare triple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} assume true; {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} is VALID [2018-11-23 12:18:41,205 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {2133#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_2| Int)) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_2|) 8) 0))} {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} #119#return; {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,206 INFO L273 TraceCheckUtils]: 42: Hoare triple {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:41,207 INFO L273 TraceCheckUtils]: 43: Hoare triple {2109#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2179#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:41,208 INFO L273 TraceCheckUtils]: 44: Hoare triple {2179#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2179#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:41,209 INFO L273 TraceCheckUtils]: 45: Hoare triple {2179#(and (= main_~i~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {2038#|main_#t~short14|} is VALID [2018-11-23 12:18:41,210 INFO L256 TraceCheckUtils]: 46: Hoare triple {2038#|main_#t~short14|} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2189#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:18:41,211 INFO L273 TraceCheckUtils]: 47: Hoare triple {2189#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {2193#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:18:41,211 INFO L273 TraceCheckUtils]: 48: Hoare triple {2193#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2024#false} is VALID [2018-11-23 12:18:41,212 INFO L273 TraceCheckUtils]: 49: Hoare triple {2024#false} assume !false; {2024#false} is VALID [2018-11-23 12:18:41,217 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 12:18:41,236 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:41,236 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 12] total 27 [2018-11-23 12:18:41,237 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 50 [2018-11-23 12:18:41,237 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:41,237 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-23 12:18:41,345 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:41,345 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-23 12:18:41,346 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-23 12:18:41,346 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=615, Unknown=0, NotChecked=0, Total=702 [2018-11-23 12:18:41,346 INFO L87 Difference]: Start difference. First operand 49 states and 54 transitions. Second operand 27 states. [2018-11-23 12:18:47,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:47,679 INFO L93 Difference]: Finished difference Result 105 states and 124 transitions. [2018-11-23 12:18:47,680 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2018-11-23 12:18:47,680 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 50 [2018-11-23 12:18:47,680 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:47,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:18:47,683 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 115 transitions. [2018-11-23 12:18:47,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 12:18:47,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 115 transitions. [2018-11-23 12:18:47,687 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states and 115 transitions. [2018-11-23 12:18:47,912 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:47,914 INFO L225 Difference]: With dead ends: 105 [2018-11-23 12:18:47,914 INFO L226 Difference]: Without dead ends: 80 [2018-11-23 12:18:47,915 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 40 SyntacticMatches, 5 SemanticMatches, 52 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 786 ImplicationChecksByTransitivity, 3.0s TimeCoverageRelationStatistics Valid=560, Invalid=2302, Unknown=0, NotChecked=0, Total=2862 [2018-11-23 12:18:47,915 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2018-11-23 12:18:48,159 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 63. [2018-11-23 12:18:48,159 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:48,159 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand 63 states. [2018-11-23 12:18:48,160 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand 63 states. [2018-11-23 12:18:48,160 INFO L87 Difference]: Start difference. First operand 80 states. Second operand 63 states. [2018-11-23 12:18:48,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:48,163 INFO L93 Difference]: Finished difference Result 80 states and 90 transitions. [2018-11-23 12:18:48,163 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 90 transitions. [2018-11-23 12:18:48,164 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:48,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:48,164 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 80 states. [2018-11-23 12:18:48,164 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 80 states. [2018-11-23 12:18:48,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:48,167 INFO L93 Difference]: Finished difference Result 80 states and 90 transitions. [2018-11-23 12:18:48,167 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 90 transitions. [2018-11-23 12:18:48,168 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:48,168 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:48,168 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:48,168 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:48,168 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 12:18:48,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 70 transitions. [2018-11-23 12:18:48,171 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 70 transitions. Word has length 50 [2018-11-23 12:18:48,171 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:48,171 INFO L480 AbstractCegarLoop]: Abstraction has 63 states and 70 transitions. [2018-11-23 12:18:48,171 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-23 12:18:48,171 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 70 transitions. [2018-11-23 12:18:48,172 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2018-11-23 12:18:48,172 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:48,172 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 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] [2018-11-23 12:18:48,172 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:48,173 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:48,173 INFO L82 PathProgramCache]: Analyzing trace with hash 2107161632, now seen corresponding path program 3 times [2018-11-23 12:18:48,173 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:48,173 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:48,174 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:48,174 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:48,174 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:48,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:48,628 WARN L180 SmtUtils]: Spent 100.00 ms on a formula simplification. DAG size of input: 13 DAG size of output: 8 [2018-11-23 12:18:48,826 INFO L256 TraceCheckUtils]: 0: Hoare triple {2642#true} call ULTIMATE.init(); {2642#true} is VALID [2018-11-23 12:18:48,827 INFO L273 TraceCheckUtils]: 1: Hoare triple {2642#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2642#true} is VALID [2018-11-23 12:18:48,827 INFO L273 TraceCheckUtils]: 2: Hoare triple {2642#true} assume true; {2642#true} is VALID [2018-11-23 12:18:48,827 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2642#true} {2642#true} #115#return; {2642#true} is VALID [2018-11-23 12:18:48,828 INFO L256 TraceCheckUtils]: 4: Hoare triple {2642#true} call #t~ret15 := main(); {2642#true} is VALID [2018-11-23 12:18:48,828 INFO L273 TraceCheckUtils]: 5: Hoare triple {2642#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2642#true} is VALID [2018-11-23 12:18:48,829 INFO L273 TraceCheckUtils]: 6: Hoare triple {2642#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {2644#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:18:48,830 INFO L273 TraceCheckUtils]: 7: Hoare triple {2644#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:18:48,830 INFO L273 TraceCheckUtils]: 8: Hoare triple {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:18:48,831 INFO L273 TraceCheckUtils]: 9: Hoare triple {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:18:48,831 INFO L273 TraceCheckUtils]: 10: Hoare triple {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:18:48,832 INFO L273 TraceCheckUtils]: 11: Hoare triple {2645#(and (= main_~i~0 1) (< 0 (+ ~CELLCOUNT~0 1)))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2646#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:18:48,833 INFO L273 TraceCheckUtils]: 12: Hoare triple {2646#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2647#(and (<= (div ~CELLCOUNT~0 3) 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:18:48,834 INFO L273 TraceCheckUtils]: 13: Hoare triple {2647#(and (<= (div ~CELLCOUNT~0 3) 1) (< 0 (+ ~CELLCOUNT~0 1)))} ~i~0 := 1; {2647#(and (<= (div ~CELLCOUNT~0 3) 1) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:18:48,835 INFO L273 TraceCheckUtils]: 14: Hoare triple {2647#(and (<= (div ~CELLCOUNT~0 3) 1) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:48,835 INFO L273 TraceCheckUtils]: 15: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:48,847 INFO L273 TraceCheckUtils]: 16: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:48,847 INFO L273 TraceCheckUtils]: 17: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:48,848 INFO L273 TraceCheckUtils]: 18: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:48,848 INFO L273 TraceCheckUtils]: 19: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} ~i~0 := 1; {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} is VALID [2018-11-23 12:18:48,848 INFO L273 TraceCheckUtils]: 20: Hoare triple {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} is VALID [2018-11-23 12:18:48,849 INFO L273 TraceCheckUtils]: 21: Hoare triple {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} is VALID [2018-11-23 12:18:48,850 INFO L273 TraceCheckUtils]: 22: Hoare triple {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} is VALID [2018-11-23 12:18:48,850 INFO L273 TraceCheckUtils]: 23: Hoare triple {2649#(and (<= (div ~CELLCOUNT~0 3) 1) (= main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2650#(or (and (<= (+ (div ~CELLCOUNT~0 3) 1) main_~i~0) (or (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0) (<= 0 ~CELLCOUNT~0))) (<= (+ (div ~CELLCOUNT~0 3) 2) main_~i~0))} is VALID [2018-11-23 12:18:48,851 INFO L273 TraceCheckUtils]: 24: Hoare triple {2650#(or (and (<= (+ (div ~CELLCOUNT~0 3) 1) main_~i~0) (or (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0) (<= 0 ~CELLCOUNT~0))) (<= (+ (div ~CELLCOUNT~0 3) 2) main_~i~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2643#false} is VALID [2018-11-23 12:18:48,852 INFO L273 TraceCheckUtils]: 25: Hoare triple {2643#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {2643#false} is VALID [2018-11-23 12:18:48,852 INFO L273 TraceCheckUtils]: 26: Hoare triple {2643#false} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {2643#false} is VALID [2018-11-23 12:18:48,852 INFO L273 TraceCheckUtils]: 27: Hoare triple {2643#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2643#false} is VALID [2018-11-23 12:18:48,852 INFO L273 TraceCheckUtils]: 28: Hoare triple {2643#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2643#false} is VALID [2018-11-23 12:18:48,853 INFO L273 TraceCheckUtils]: 29: Hoare triple {2643#false} ~i~0 := 0; {2643#false} is VALID [2018-11-23 12:18:48,853 INFO L273 TraceCheckUtils]: 30: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:48,853 INFO L273 TraceCheckUtils]: 31: Hoare triple {2643#false} assume #t~short14; {2643#false} is VALID [2018-11-23 12:18:48,853 INFO L256 TraceCheckUtils]: 32: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2642#true} is VALID [2018-11-23 12:18:48,854 INFO L273 TraceCheckUtils]: 33: Hoare triple {2642#true} ~cond := #in~cond; {2642#true} is VALID [2018-11-23 12:18:48,854 INFO L273 TraceCheckUtils]: 34: Hoare triple {2642#true} assume !(0 == ~cond); {2642#true} is VALID [2018-11-23 12:18:48,854 INFO L273 TraceCheckUtils]: 35: Hoare triple {2642#true} assume true; {2642#true} is VALID [2018-11-23 12:18:48,854 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2642#true} {2643#false} #119#return; {2643#false} is VALID [2018-11-23 12:18:48,855 INFO L273 TraceCheckUtils]: 37: Hoare triple {2643#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2643#false} is VALID [2018-11-23 12:18:48,855 INFO L273 TraceCheckUtils]: 38: Hoare triple {2643#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2643#false} is VALID [2018-11-23 12:18:48,855 INFO L273 TraceCheckUtils]: 39: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:48,855 INFO L273 TraceCheckUtils]: 40: Hoare triple {2643#false} assume #t~short14; {2643#false} is VALID [2018-11-23 12:18:48,855 INFO L256 TraceCheckUtils]: 41: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2642#true} is VALID [2018-11-23 12:18:48,856 INFO L273 TraceCheckUtils]: 42: Hoare triple {2642#true} ~cond := #in~cond; {2642#true} is VALID [2018-11-23 12:18:48,856 INFO L273 TraceCheckUtils]: 43: Hoare triple {2642#true} assume !(0 == ~cond); {2642#true} is VALID [2018-11-23 12:18:48,856 INFO L273 TraceCheckUtils]: 44: Hoare triple {2642#true} assume true; {2642#true} is VALID [2018-11-23 12:18:48,857 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {2642#true} {2643#false} #119#return; {2643#false} is VALID [2018-11-23 12:18:48,857 INFO L273 TraceCheckUtils]: 46: Hoare triple {2643#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2643#false} is VALID [2018-11-23 12:18:48,857 INFO L273 TraceCheckUtils]: 47: Hoare triple {2643#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2643#false} is VALID [2018-11-23 12:18:48,857 INFO L273 TraceCheckUtils]: 48: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:48,858 INFO L273 TraceCheckUtils]: 49: Hoare triple {2643#false} assume #t~short14; {2643#false} is VALID [2018-11-23 12:18:48,858 INFO L256 TraceCheckUtils]: 50: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2642#true} is VALID [2018-11-23 12:18:48,858 INFO L273 TraceCheckUtils]: 51: Hoare triple {2642#true} ~cond := #in~cond; {2642#true} is VALID [2018-11-23 12:18:48,858 INFO L273 TraceCheckUtils]: 52: Hoare triple {2642#true} assume !(0 == ~cond); {2642#true} is VALID [2018-11-23 12:18:48,858 INFO L273 TraceCheckUtils]: 53: Hoare triple {2642#true} assume true; {2642#true} is VALID [2018-11-23 12:18:48,859 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {2642#true} {2643#false} #119#return; {2643#false} is VALID [2018-11-23 12:18:48,859 INFO L273 TraceCheckUtils]: 55: Hoare triple {2643#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2643#false} is VALID [2018-11-23 12:18:48,859 INFO L273 TraceCheckUtils]: 56: Hoare triple {2643#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2643#false} is VALID [2018-11-23 12:18:48,859 INFO L273 TraceCheckUtils]: 57: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:48,859 INFO L273 TraceCheckUtils]: 58: Hoare triple {2643#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {2643#false} is VALID [2018-11-23 12:18:48,859 INFO L256 TraceCheckUtils]: 59: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2643#false} is VALID [2018-11-23 12:18:48,859 INFO L273 TraceCheckUtils]: 60: Hoare triple {2643#false} ~cond := #in~cond; {2643#false} is VALID [2018-11-23 12:18:48,859 INFO L273 TraceCheckUtils]: 61: Hoare triple {2643#false} assume 0 == ~cond; {2643#false} is VALID [2018-11-23 12:18:48,860 INFO L273 TraceCheckUtils]: 62: Hoare triple {2643#false} assume !false; {2643#false} is VALID [2018-11-23 12:18:48,863 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 11 proven. 3 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2018-11-23 12:18:48,863 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:48,863 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:18:48,876 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:18:48,908 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-11-23 12:18:48,908 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:48,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:48,943 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:49,197 INFO L256 TraceCheckUtils]: 0: Hoare triple {2642#true} call ULTIMATE.init(); {2642#true} is VALID [2018-11-23 12:18:49,197 INFO L273 TraceCheckUtils]: 1: Hoare triple {2642#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {2642#true} is VALID [2018-11-23 12:18:49,197 INFO L273 TraceCheckUtils]: 2: Hoare triple {2642#true} assume true; {2642#true} is VALID [2018-11-23 12:18:49,198 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2642#true} {2642#true} #115#return; {2642#true} is VALID [2018-11-23 12:18:49,198 INFO L256 TraceCheckUtils]: 4: Hoare triple {2642#true} call #t~ret15 := main(); {2642#true} is VALID [2018-11-23 12:18:49,198 INFO L273 TraceCheckUtils]: 5: Hoare triple {2642#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {2642#true} is VALID [2018-11-23 12:18:49,198 INFO L273 TraceCheckUtils]: 6: Hoare triple {2642#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {2642#true} is VALID [2018-11-23 12:18:49,199 INFO L273 TraceCheckUtils]: 7: Hoare triple {2642#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {2675#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:49,199 INFO L273 TraceCheckUtils]: 8: Hoare triple {2675#(<= main_~i~0 1)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2675#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:49,200 INFO L273 TraceCheckUtils]: 9: Hoare triple {2675#(<= main_~i~0 1)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {2675#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:49,200 INFO L273 TraceCheckUtils]: 10: Hoare triple {2675#(<= main_~i~0 1)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {2675#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:49,201 INFO L273 TraceCheckUtils]: 11: Hoare triple {2675#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2688#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:49,201 INFO L273 TraceCheckUtils]: 12: Hoare triple {2688#(<= main_~i~0 2)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:49,202 INFO L273 TraceCheckUtils]: 13: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} ~i~0 := 1; {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:49,203 INFO L273 TraceCheckUtils]: 14: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:49,203 INFO L273 TraceCheckUtils]: 15: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:49,204 INFO L273 TraceCheckUtils]: 16: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:49,204 INFO L273 TraceCheckUtils]: 17: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:49,205 INFO L273 TraceCheckUtils]: 18: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2648#(<= (div ~CELLCOUNT~0 3) 1)} is VALID [2018-11-23 12:18:49,205 INFO L273 TraceCheckUtils]: 19: Hoare triple {2648#(<= (div ~CELLCOUNT~0 3) 1)} ~i~0 := 1; {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} is VALID [2018-11-23 12:18:49,206 INFO L273 TraceCheckUtils]: 20: Hoare triple {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} is VALID [2018-11-23 12:18:49,207 INFO L273 TraceCheckUtils]: 21: Hoare triple {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} is VALID [2018-11-23 12:18:49,208 INFO L273 TraceCheckUtils]: 22: Hoare triple {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} is VALID [2018-11-23 12:18:49,209 INFO L273 TraceCheckUtils]: 23: Hoare triple {2713#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 1 main_~i~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2726#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 2 main_~i~0))} is VALID [2018-11-23 12:18:49,210 INFO L273 TraceCheckUtils]: 24: Hoare triple {2726#(and (<= (div ~CELLCOUNT~0 3) 1) (<= 2 main_~i~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2643#false} is VALID [2018-11-23 12:18:49,210 INFO L273 TraceCheckUtils]: 25: Hoare triple {2643#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {2643#false} is VALID [2018-11-23 12:18:49,211 INFO L273 TraceCheckUtils]: 26: Hoare triple {2643#false} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {2643#false} is VALID [2018-11-23 12:18:49,211 INFO L273 TraceCheckUtils]: 27: Hoare triple {2643#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2643#false} is VALID [2018-11-23 12:18:49,211 INFO L273 TraceCheckUtils]: 28: Hoare triple {2643#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {2643#false} is VALID [2018-11-23 12:18:49,211 INFO L273 TraceCheckUtils]: 29: Hoare triple {2643#false} ~i~0 := 0; {2643#false} is VALID [2018-11-23 12:18:49,212 INFO L273 TraceCheckUtils]: 30: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:49,212 INFO L273 TraceCheckUtils]: 31: Hoare triple {2643#false} assume #t~short14; {2643#false} is VALID [2018-11-23 12:18:49,212 INFO L256 TraceCheckUtils]: 32: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2643#false} is VALID [2018-11-23 12:18:49,212 INFO L273 TraceCheckUtils]: 33: Hoare triple {2643#false} ~cond := #in~cond; {2643#false} is VALID [2018-11-23 12:18:49,212 INFO L273 TraceCheckUtils]: 34: Hoare triple {2643#false} assume !(0 == ~cond); {2643#false} is VALID [2018-11-23 12:18:49,213 INFO L273 TraceCheckUtils]: 35: Hoare triple {2643#false} assume true; {2643#false} is VALID [2018-11-23 12:18:49,213 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2643#false} {2643#false} #119#return; {2643#false} is VALID [2018-11-23 12:18:49,213 INFO L273 TraceCheckUtils]: 37: Hoare triple {2643#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2643#false} is VALID [2018-11-23 12:18:49,213 INFO L273 TraceCheckUtils]: 38: Hoare triple {2643#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2643#false} is VALID [2018-11-23 12:18:49,213 INFO L273 TraceCheckUtils]: 39: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L273 TraceCheckUtils]: 40: Hoare triple {2643#false} assume #t~short14; {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L256 TraceCheckUtils]: 41: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L273 TraceCheckUtils]: 42: Hoare triple {2643#false} ~cond := #in~cond; {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L273 TraceCheckUtils]: 43: Hoare triple {2643#false} assume !(0 == ~cond); {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L273 TraceCheckUtils]: 44: Hoare triple {2643#false} assume true; {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {2643#false} {2643#false} #119#return; {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L273 TraceCheckUtils]: 46: Hoare triple {2643#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2643#false} is VALID [2018-11-23 12:18:49,214 INFO L273 TraceCheckUtils]: 47: Hoare triple {2643#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L273 TraceCheckUtils]: 48: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L273 TraceCheckUtils]: 49: Hoare triple {2643#false} assume #t~short14; {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L256 TraceCheckUtils]: 50: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L273 TraceCheckUtils]: 51: Hoare triple {2643#false} ~cond := #in~cond; {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L273 TraceCheckUtils]: 52: Hoare triple {2643#false} assume !(0 == ~cond); {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L273 TraceCheckUtils]: 53: Hoare triple {2643#false} assume true; {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {2643#false} {2643#false} #119#return; {2643#false} is VALID [2018-11-23 12:18:49,215 INFO L273 TraceCheckUtils]: 55: Hoare triple {2643#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {2643#false} is VALID [2018-11-23 12:18:49,216 INFO L273 TraceCheckUtils]: 56: Hoare triple {2643#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {2643#false} is VALID [2018-11-23 12:18:49,216 INFO L273 TraceCheckUtils]: 57: Hoare triple {2643#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {2643#false} is VALID [2018-11-23 12:18:49,216 INFO L273 TraceCheckUtils]: 58: Hoare triple {2643#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {2643#false} is VALID [2018-11-23 12:18:49,216 INFO L256 TraceCheckUtils]: 59: Hoare triple {2643#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {2643#false} is VALID [2018-11-23 12:18:49,216 INFO L273 TraceCheckUtils]: 60: Hoare triple {2643#false} ~cond := #in~cond; {2643#false} is VALID [2018-11-23 12:18:49,217 INFO L273 TraceCheckUtils]: 61: Hoare triple {2643#false} assume 0 == ~cond; {2643#false} is VALID [2018-11-23 12:18:49,217 INFO L273 TraceCheckUtils]: 62: Hoare triple {2643#false} assume !false; {2643#false} is VALID [2018-11-23 12:18:49,220 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 6 proven. 1 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2018-11-23 12:18:49,240 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:49,240 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 7] total 13 [2018-11-23 12:18:49,240 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 63 [2018-11-23 12:18:49,241 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:49,242 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:18:49,336 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:49,336 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:18:49,337 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:18:49,337 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:18:49,337 INFO L87 Difference]: Start difference. First operand 63 states and 70 transitions. Second operand 13 states. [2018-11-23 12:18:50,529 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:50,529 INFO L93 Difference]: Finished difference Result 141 states and 157 transitions. [2018-11-23 12:18:50,529 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:18:50,529 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 63 [2018-11-23 12:18:50,530 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:50,530 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:18:50,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 114 transitions. [2018-11-23 12:18:50,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:18:50,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 114 transitions. [2018-11-23 12:18:50,535 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 114 transitions. [2018-11-23 12:18:50,700 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:50,703 INFO L225 Difference]: With dead ends: 141 [2018-11-23 12:18:50,703 INFO L226 Difference]: Without dead ends: 80 [2018-11-23 12:18:50,704 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 59 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 54 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=100, Invalid=280, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:18:50,705 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2018-11-23 12:18:51,632 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 71. [2018-11-23 12:18:51,632 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:51,633 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand 71 states. [2018-11-23 12:18:51,633 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand 71 states. [2018-11-23 12:18:51,633 INFO L87 Difference]: Start difference. First operand 80 states. Second operand 71 states. [2018-11-23 12:18:51,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:51,637 INFO L93 Difference]: Finished difference Result 80 states and 87 transitions. [2018-11-23 12:18:51,638 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 87 transitions. [2018-11-23 12:18:51,638 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:51,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:51,638 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand 80 states. [2018-11-23 12:18:51,638 INFO L87 Difference]: Start difference. First operand 71 states. Second operand 80 states. [2018-11-23 12:18:51,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:51,642 INFO L93 Difference]: Finished difference Result 80 states and 87 transitions. [2018-11-23 12:18:51,642 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 87 transitions. [2018-11-23 12:18:51,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:51,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:51,643 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:51,643 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:51,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 71 states. [2018-11-23 12:18:51,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 78 transitions. [2018-11-23 12:18:51,646 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 78 transitions. Word has length 63 [2018-11-23 12:18:51,646 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:51,646 INFO L480 AbstractCegarLoop]: Abstraction has 71 states and 78 transitions. [2018-11-23 12:18:51,646 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:18:51,647 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 78 transitions. [2018-11-23 12:18:51,647 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2018-11-23 12:18:51,648 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:51,648 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 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] [2018-11-23 12:18:51,648 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:51,648 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:51,648 INFO L82 PathProgramCache]: Analyzing trace with hash 1164106774, now seen corresponding path program 4 times [2018-11-23 12:18:51,649 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:51,649 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:51,650 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:51,650 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:51,650 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:51,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:52,667 INFO L256 TraceCheckUtils]: 0: Hoare triple {3299#true} call ULTIMATE.init(); {3299#true} is VALID [2018-11-23 12:18:52,667 INFO L273 TraceCheckUtils]: 1: Hoare triple {3299#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {3299#true} is VALID [2018-11-23 12:18:52,668 INFO L273 TraceCheckUtils]: 2: Hoare triple {3299#true} assume true; {3299#true} is VALID [2018-11-23 12:18:52,668 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3299#true} {3299#true} #115#return; {3299#true} is VALID [2018-11-23 12:18:52,668 INFO L256 TraceCheckUtils]: 4: Hoare triple {3299#true} call #t~ret15 := main(); {3299#true} is VALID [2018-11-23 12:18:52,669 INFO L273 TraceCheckUtils]: 5: Hoare triple {3299#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {3299#true} is VALID [2018-11-23 12:18:52,684 INFO L273 TraceCheckUtils]: 6: Hoare triple {3299#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {3301#(<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0)} is VALID [2018-11-23 12:18:52,700 INFO L273 TraceCheckUtils]: 7: Hoare triple {3301#(<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,705 INFO L273 TraceCheckUtils]: 8: Hoare triple {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,706 INFO L273 TraceCheckUtils]: 9: Hoare triple {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,706 INFO L273 TraceCheckUtils]: 10: Hoare triple {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,707 INFO L273 TraceCheckUtils]: 11: Hoare triple {3302#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3303#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} is VALID [2018-11-23 12:18:52,707 INFO L273 TraceCheckUtils]: 12: Hoare triple {3303#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3303#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} is VALID [2018-11-23 12:18:52,708 INFO L273 TraceCheckUtils]: 13: Hoare triple {3303#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,709 INFO L273 TraceCheckUtils]: 14: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,710 INFO L273 TraceCheckUtils]: 15: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} is VALID [2018-11-23 12:18:52,710 INFO L273 TraceCheckUtils]: 16: Hoare triple {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} is VALID [2018-11-23 12:18:52,711 INFO L273 TraceCheckUtils]: 17: Hoare triple {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} ~i~0 := 1; {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,712 INFO L273 TraceCheckUtils]: 18: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,713 INFO L273 TraceCheckUtils]: 19: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,714 INFO L273 TraceCheckUtils]: 20: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,716 INFO L273 TraceCheckUtils]: 21: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,717 INFO L273 TraceCheckUtils]: 22: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,718 INFO L273 TraceCheckUtils]: 23: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 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 * (3 * ~i~0 - 2), 4); {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,720 INFO L273 TraceCheckUtils]: 24: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,721 INFO L273 TraceCheckUtils]: 25: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} is VALID [2018-11-23 12:18:52,722 INFO L273 TraceCheckUtils]: 26: Hoare triple {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} is VALID [2018-11-23 12:18:52,722 INFO L273 TraceCheckUtils]: 27: Hoare triple {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} ~i~0 := 1; {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,723 INFO L273 TraceCheckUtils]: 28: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,725 INFO L273 TraceCheckUtils]: 29: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,726 INFO L273 TraceCheckUtils]: 30: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} is VALID [2018-11-23 12:18:52,727 INFO L273 TraceCheckUtils]: 31: Hoare triple {3306#(and (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12))))) (= main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,728 INFO L273 TraceCheckUtils]: 32: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,730 INFO L273 TraceCheckUtils]: 33: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,731 INFO L273 TraceCheckUtils]: 34: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,732 INFO L273 TraceCheckUtils]: 35: Hoare triple {3304#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} is VALID [2018-11-23 12:18:52,733 INFO L273 TraceCheckUtils]: 36: Hoare triple {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} is VALID [2018-11-23 12:18:52,734 INFO L273 TraceCheckUtils]: 37: Hoare triple {3305#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 2) (- 12)))))} ~i~0 := 0; {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:52,735 INFO L273 TraceCheckUtils]: 38: Hoare triple {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:52,735 INFO L273 TraceCheckUtils]: 39: Hoare triple {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} assume #t~short14; {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:52,736 INFO L256 TraceCheckUtils]: 40: Hoare triple {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3299#true} is VALID [2018-11-23 12:18:52,736 INFO L273 TraceCheckUtils]: 41: Hoare triple {3299#true} ~cond := #in~cond; {3299#true} is VALID [2018-11-23 12:18:52,736 INFO L273 TraceCheckUtils]: 42: Hoare triple {3299#true} assume !(0 == ~cond); {3299#true} is VALID [2018-11-23 12:18:52,736 INFO L273 TraceCheckUtils]: 43: Hoare triple {3299#true} assume true; {3299#true} is VALID [2018-11-23 12:18:52,737 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3299#true} {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} #119#return; {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:52,738 INFO L273 TraceCheckUtils]: 45: Hoare triple {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:52,739 INFO L273 TraceCheckUtils]: 46: Hoare triple {3307#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,740 INFO L273 TraceCheckUtils]: 47: Hoare triple {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,744 INFO L273 TraceCheckUtils]: 48: Hoare triple {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} assume #t~short14; {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,744 INFO L256 TraceCheckUtils]: 49: Hoare triple {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3299#true} is VALID [2018-11-23 12:18:52,744 INFO L273 TraceCheckUtils]: 50: Hoare triple {3299#true} ~cond := #in~cond; {3299#true} is VALID [2018-11-23 12:18:52,744 INFO L273 TraceCheckUtils]: 51: Hoare triple {3299#true} assume !(0 == ~cond); {3299#true} is VALID [2018-11-23 12:18:52,744 INFO L273 TraceCheckUtils]: 52: Hoare triple {3299#true} assume true; {3299#true} is VALID [2018-11-23 12:18:52,745 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {3299#true} {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} #119#return; {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,745 INFO L273 TraceCheckUtils]: 54: Hoare triple {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,746 INFO L273 TraceCheckUtils]: 55: Hoare triple {3308#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,746 INFO L273 TraceCheckUtils]: 56: Hoare triple {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,747 INFO L273 TraceCheckUtils]: 57: Hoare triple {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} assume #t~short14; {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,747 INFO L256 TraceCheckUtils]: 58: Hoare triple {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3299#true} is VALID [2018-11-23 12:18:52,747 INFO L273 TraceCheckUtils]: 59: Hoare triple {3299#true} ~cond := #in~cond; {3299#true} is VALID [2018-11-23 12:18:52,747 INFO L273 TraceCheckUtils]: 60: Hoare triple {3299#true} assume !(0 == ~cond); {3299#true} is VALID [2018-11-23 12:18:52,747 INFO L273 TraceCheckUtils]: 61: Hoare triple {3299#true} assume true; {3299#true} is VALID [2018-11-23 12:18:52,748 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {3299#true} {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} #119#return; {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,748 INFO L273 TraceCheckUtils]: 63: Hoare triple {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:18:52,749 INFO L273 TraceCheckUtils]: 64: Hoare triple {3309#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {3310#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:18:52,750 INFO L273 TraceCheckUtils]: 65: Hoare triple {3310#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3311#|main_#t~short14|} is VALID [2018-11-23 12:18:52,750 INFO L273 TraceCheckUtils]: 66: Hoare triple {3311#|main_#t~short14|} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {3300#false} is VALID [2018-11-23 12:18:52,751 INFO L256 TraceCheckUtils]: 67: Hoare triple {3300#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3300#false} is VALID [2018-11-23 12:18:52,751 INFO L273 TraceCheckUtils]: 68: Hoare triple {3300#false} ~cond := #in~cond; {3300#false} is VALID [2018-11-23 12:18:52,751 INFO L273 TraceCheckUtils]: 69: Hoare triple {3300#false} assume 0 == ~cond; {3300#false} is VALID [2018-11-23 12:18:52,751 INFO L273 TraceCheckUtils]: 70: Hoare triple {3300#false} assume !false; {3300#false} is VALID [2018-11-23 12:18:52,767 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 39 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 12:18:52,768 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:52,768 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:18:52,779 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:18:52,807 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:18:52,807 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:52,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:52,827 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:52,929 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:18:52,932 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:18:52,933 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:52,936 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:52,943 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:52,944 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:26, output treesize:22 [2018-11-23 12:18:52,981 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:52,982 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 72 treesize of output 109 [2018-11-23 12:18:53,003 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,004 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,006 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,013 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:18:53,019 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,022 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:18:53,023 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,031 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,034 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,043 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,044 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:81, output treesize:22 [2018-11-23 12:18:53,091 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:18:53,097 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,098 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:18:53,101 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,108 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,120 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,121 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:35, output treesize:31 [2018-11-23 12:18:53,212 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:53,212 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 81 treesize of output 116 [2018-11-23 12:18:53,241 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,242 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,243 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,245 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,246 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,247 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,258 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:18:53,265 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,266 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,268 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:18:53,274 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:18:53,284 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,297 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,304 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:53,316 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:18:53,316 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:90, output treesize:31 [2018-11-23 12:18:53,724 WARN L180 SmtUtils]: Spent 376.00 ms on a formula simplification that was a NOOP. DAG size: 24 [2018-11-23 12:18:55,953 INFO L256 TraceCheckUtils]: 0: Hoare triple {3299#true} call ULTIMATE.init(); {3299#true} is VALID [2018-11-23 12:18:55,954 INFO L273 TraceCheckUtils]: 1: Hoare triple {3299#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {3299#true} is VALID [2018-11-23 12:18:55,954 INFO L273 TraceCheckUtils]: 2: Hoare triple {3299#true} assume true; {3299#true} is VALID [2018-11-23 12:18:55,954 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3299#true} {3299#true} #115#return; {3299#true} is VALID [2018-11-23 12:18:55,954 INFO L256 TraceCheckUtils]: 4: Hoare triple {3299#true} call #t~ret15 := main(); {3299#true} is VALID [2018-11-23 12:18:55,954 INFO L273 TraceCheckUtils]: 5: Hoare triple {3299#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {3299#true} is VALID [2018-11-23 12:18:55,955 INFO L273 TraceCheckUtils]: 6: Hoare triple {3299#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,955 INFO L273 TraceCheckUtils]: 7: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,956 INFO L273 TraceCheckUtils]: 8: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,956 INFO L273 TraceCheckUtils]: 9: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,957 INFO L273 TraceCheckUtils]: 10: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,957 INFO L273 TraceCheckUtils]: 11: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,958 INFO L273 TraceCheckUtils]: 12: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,958 INFO L273 TraceCheckUtils]: 13: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,963 INFO L273 TraceCheckUtils]: 14: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,963 INFO L273 TraceCheckUtils]: 15: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,964 INFO L273 TraceCheckUtils]: 16: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,964 INFO L273 TraceCheckUtils]: 17: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,965 INFO L273 TraceCheckUtils]: 18: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,965 INFO L273 TraceCheckUtils]: 19: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,966 INFO L273 TraceCheckUtils]: 20: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,966 INFO L273 TraceCheckUtils]: 21: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,967 INFO L273 TraceCheckUtils]: 22: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,967 INFO L273 TraceCheckUtils]: 23: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,969 INFO L273 TraceCheckUtils]: 24: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,969 INFO L273 TraceCheckUtils]: 25: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,970 INFO L273 TraceCheckUtils]: 26: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,971 INFO L273 TraceCheckUtils]: 27: Hoare triple {3333#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {3397#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,971 INFO L273 TraceCheckUtils]: 28: Hoare triple {3397#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3397#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,972 INFO L273 TraceCheckUtils]: 29: Hoare triple {3397#(and (<= 2 main_~MINVAL~0) (= 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 * (3 * ~i~0 - 1), 4); {3404#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,973 INFO L273 TraceCheckUtils]: 30: Hoare triple {3404#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {3404#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:18:55,974 INFO L273 TraceCheckUtils]: 31: Hoare triple {3404#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3411#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:55,977 INFO L273 TraceCheckUtils]: 32: Hoare triple {3411#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3411#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:55,978 INFO L273 TraceCheckUtils]: 33: Hoare triple {3411#(and (<= 2 main_~i~0) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {3418#(and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:55,980 INFO L273 TraceCheckUtils]: 34: Hoare triple {3418#(and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {3422#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:55,983 INFO L273 TraceCheckUtils]: 35: Hoare triple {3422#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3422#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:55,984 INFO L273 TraceCheckUtils]: 36: Hoare triple {3422#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {3422#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} is VALID [2018-11-23 12:18:55,985 INFO L273 TraceCheckUtils]: 37: Hoare triple {3422#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0))} ~i~0 := 0; {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:55,986 INFO L273 TraceCheckUtils]: 38: Hoare triple {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:55,986 INFO L273 TraceCheckUtils]: 39: Hoare triple {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} assume #t~short14; {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:55,988 INFO L256 TraceCheckUtils]: 40: Hoare triple {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:55,989 INFO L273 TraceCheckUtils]: 41: Hoare triple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} ~cond := #in~cond; {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:55,989 INFO L273 TraceCheckUtils]: 42: Hoare triple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} assume !(0 == ~cond); {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:55,990 INFO L273 TraceCheckUtils]: 43: Hoare triple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} assume true; {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:55,991 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} #119#return; {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:55,994 INFO L273 TraceCheckUtils]: 45: Hoare triple {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:55,995 INFO L273 TraceCheckUtils]: 46: Hoare triple {3432#(and (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (= main_~i~0 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:55,996 INFO L273 TraceCheckUtils]: 47: Hoare triple {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:56,000 INFO L273 TraceCheckUtils]: 48: Hoare triple {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} assume #t~short14; {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:56,001 INFO L256 TraceCheckUtils]: 49: Hoare triple {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:56,002 INFO L273 TraceCheckUtils]: 50: Hoare triple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} ~cond := #in~cond; {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:56,002 INFO L273 TraceCheckUtils]: 51: Hoare triple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} assume !(0 == ~cond); {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:56,002 INFO L273 TraceCheckUtils]: 52: Hoare triple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} assume true; {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} is VALID [2018-11-23 12:18:56,003 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {3442#(exists ((v_prenex_6 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_4| Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) (+ (* 12 v_prenex_6) (- 4))) 0) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_4|) 8) 0)))} {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} #119#return; {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:56,003 INFO L273 TraceCheckUtils]: 54: Hoare triple {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:56,005 INFO L273 TraceCheckUtils]: 55: Hoare triple {3461#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {3489#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} is VALID [2018-11-23 12:18:56,008 INFO L273 TraceCheckUtils]: 56: Hoare triple {3489#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (exists ((v_prenex_6 Int)) (and (<= 2 v_prenex_6) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_6) (- 4))) 0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3493#(not |main_#t~short14|)} is VALID [2018-11-23 12:18:56,008 INFO L273 TraceCheckUtils]: 57: Hoare triple {3493#(not |main_#t~short14|)} assume #t~short14; {3300#false} is VALID [2018-11-23 12:18:56,009 INFO L256 TraceCheckUtils]: 58: Hoare triple {3300#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3300#false} is VALID [2018-11-23 12:18:56,009 INFO L273 TraceCheckUtils]: 59: Hoare triple {3300#false} ~cond := #in~cond; {3300#false} is VALID [2018-11-23 12:18:56,009 INFO L273 TraceCheckUtils]: 60: Hoare triple {3300#false} assume !(0 == ~cond); {3300#false} is VALID [2018-11-23 12:18:56,009 INFO L273 TraceCheckUtils]: 61: Hoare triple {3300#false} assume true; {3300#false} is VALID [2018-11-23 12:18:56,010 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {3300#false} {3300#false} #119#return; {3300#false} is VALID [2018-11-23 12:18:56,010 INFO L273 TraceCheckUtils]: 63: Hoare triple {3300#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {3300#false} is VALID [2018-11-23 12:18:56,010 INFO L273 TraceCheckUtils]: 64: Hoare triple {3300#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {3300#false} is VALID [2018-11-23 12:18:56,011 INFO L273 TraceCheckUtils]: 65: Hoare triple {3300#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {3300#false} is VALID [2018-11-23 12:18:56,011 INFO L273 TraceCheckUtils]: 66: Hoare triple {3300#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {3300#false} is VALID [2018-11-23 12:18:56,011 INFO L256 TraceCheckUtils]: 67: Hoare triple {3300#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {3300#false} is VALID [2018-11-23 12:18:56,011 INFO L273 TraceCheckUtils]: 68: Hoare triple {3300#false} ~cond := #in~cond; {3300#false} is VALID [2018-11-23 12:18:56,012 INFO L273 TraceCheckUtils]: 69: Hoare triple {3300#false} assume 0 == ~cond; {3300#false} is VALID [2018-11-23 12:18:56,012 INFO L273 TraceCheckUtils]: 70: Hoare triple {3300#false} assume !false; {3300#false} is VALID [2018-11-23 12:18:56,027 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 26 proven. 15 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-23 12:18:56,047 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:56,047 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2018-11-23 12:18:56,048 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 71 [2018-11-23 12:18:56,048 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:56,048 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states. [2018-11-23 12:18:56,241 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:56,241 INFO L459 AbstractCegarLoop]: Interpolant automaton has 24 states [2018-11-23 12:18:56,241 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2018-11-23 12:18:56,242 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=74, Invalid=477, Unknown=1, NotChecked=0, Total=552 [2018-11-23 12:18:56,242 INFO L87 Difference]: Start difference. First operand 71 states and 78 transitions. Second operand 24 states. [2018-11-23 12:19:07,352 WARN L180 SmtUtils]: Spent 232.00 ms on a formula simplification. DAG size of input: 47 DAG size of output: 37 [2018-11-23 12:19:08,080 WARN L180 SmtUtils]: Spent 355.00 ms on a formula simplification that was a NOOP. DAG size: 38 [2018-11-23 12:19:08,714 WARN L180 SmtUtils]: Spent 317.00 ms on a formula simplification that was a NOOP. DAG size: 39 [2018-11-23 12:19:09,143 WARN L180 SmtUtils]: Spent 315.00 ms on a formula simplification that was a NOOP. DAG size: 34 [2018-11-23 12:19:10,585 WARN L180 SmtUtils]: Spent 368.00 ms on a formula simplification that was a NOOP. DAG size: 42 [2018-11-23 12:19:11,546 WARN L180 SmtUtils]: Spent 285.00 ms on a formula simplification. DAG size of input: 44 DAG size of output: 42 [2018-11-23 12:19:12,308 WARN L180 SmtUtils]: Spent 664.00 ms on a formula simplification. DAG size of input: 46 DAG size of output: 44 [2018-11-23 12:19:13,144 WARN L180 SmtUtils]: Spent 747.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 43 [2018-11-23 12:19:14,268 WARN L180 SmtUtils]: Spent 321.00 ms on a formula simplification that was a NOOP. DAG size: 35 [2018-11-23 12:19:14,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:14,629 INFO L93 Difference]: Finished difference Result 117 states and 130 transitions. [2018-11-23 12:19:14,629 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2018-11-23 12:19:14,629 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 71 [2018-11-23 12:19:14,629 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:14,629 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:19:14,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 119 transitions. [2018-11-23 12:19:14,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:19:14,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 119 transitions. [2018-11-23 12:19:14,635 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 119 transitions. [2018-11-23 12:19:14,852 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:19:14,854 INFO L225 Difference]: With dead ends: 117 [2018-11-23 12:19:14,854 INFO L226 Difference]: Without dead ends: 101 [2018-11-23 12:19:14,856 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 58 SyntacticMatches, 17 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 490 ImplicationChecksByTransitivity, 9.4s TimeCoverageRelationStatistics Valid=376, Invalid=1781, Unknown=5, NotChecked=0, Total=2162 [2018-11-23 12:19:14,856 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2018-11-23 12:19:15,191 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 75. [2018-11-23 12:19:15,192 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:15,192 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand 75 states. [2018-11-23 12:19:15,192 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 75 states. [2018-11-23 12:19:15,192 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 75 states. [2018-11-23 12:19:15,197 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:15,198 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2018-11-23 12:19:15,198 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2018-11-23 12:19:15,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:15,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:15,198 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand 101 states. [2018-11-23 12:19:15,199 INFO L87 Difference]: Start difference. First operand 75 states. Second operand 101 states. [2018-11-23 12:19:15,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:15,202 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2018-11-23 12:19:15,202 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2018-11-23 12:19:15,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:15,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:15,203 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:15,203 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:15,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 75 states. [2018-11-23 12:19:15,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 81 transitions. [2018-11-23 12:19:15,205 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 81 transitions. Word has length 71 [2018-11-23 12:19:15,205 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:15,205 INFO L480 AbstractCegarLoop]: Abstraction has 75 states and 81 transitions. [2018-11-23 12:19:15,205 INFO L481 AbstractCegarLoop]: Interpolant automaton has 24 states. [2018-11-23 12:19:15,206 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 81 transitions. [2018-11-23 12:19:15,206 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2018-11-23 12:19:15,207 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:15,207 INFO L402 BasicCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 4, 3, 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] [2018-11-23 12:19:15,207 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:15,207 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:15,207 INFO L82 PathProgramCache]: Analyzing trace with hash -433961409, now seen corresponding path program 5 times [2018-11-23 12:19:15,207 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:15,208 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:15,208 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:15,208 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:19:15,208 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:15,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:16,036 WARN L180 SmtUtils]: Spent 104.00 ms on a formula simplification that was a NOOP. DAG size: 10 [2018-11-23 12:19:17,163 INFO L256 TraceCheckUtils]: 0: Hoare triple {4036#true} call ULTIMATE.init(); {4036#true} is VALID [2018-11-23 12:19:17,164 INFO L273 TraceCheckUtils]: 1: Hoare triple {4036#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {4036#true} is VALID [2018-11-23 12:19:17,164 INFO L273 TraceCheckUtils]: 2: Hoare triple {4036#true} assume true; {4036#true} is VALID [2018-11-23 12:19:17,164 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4036#true} {4036#true} #115#return; {4036#true} is VALID [2018-11-23 12:19:17,164 INFO L256 TraceCheckUtils]: 4: Hoare triple {4036#true} call #t~ret15 := main(); {4036#true} is VALID [2018-11-23 12:19:17,165 INFO L273 TraceCheckUtils]: 5: Hoare triple {4036#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {4036#true} is VALID [2018-11-23 12:19:17,166 INFO L273 TraceCheckUtils]: 6: Hoare triple {4036#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {4038#(<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)} is VALID [2018-11-23 12:19:17,167 INFO L273 TraceCheckUtils]: 7: Hoare triple {4038#(<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,167 INFO L273 TraceCheckUtils]: 8: Hoare triple {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,168 INFO L273 TraceCheckUtils]: 9: Hoare triple {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,168 INFO L273 TraceCheckUtils]: 10: Hoare triple {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,169 INFO L273 TraceCheckUtils]: 11: Hoare triple {4039#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4040#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,170 INFO L273 TraceCheckUtils]: 12: Hoare triple {4040#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4041#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,171 INFO L273 TraceCheckUtils]: 13: Hoare triple {4041#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4041#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,172 INFO L273 TraceCheckUtils]: 14: Hoare triple {4041#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4041#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} is VALID [2018-11-23 12:19:17,173 INFO L273 TraceCheckUtils]: 15: Hoare triple {4041#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4042#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:19:17,174 INFO L273 TraceCheckUtils]: 16: Hoare triple {4042#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4042#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:19:17,175 INFO L273 TraceCheckUtils]: 17: Hoare triple {4042#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)))} ~i~0 := 1; {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} is VALID [2018-11-23 12:19:17,176 INFO L273 TraceCheckUtils]: 18: Hoare triple {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} is VALID [2018-11-23 12:19:17,177 INFO L273 TraceCheckUtils]: 19: Hoare triple {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} is VALID [2018-11-23 12:19:17,178 INFO L273 TraceCheckUtils]: 20: Hoare triple {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} is VALID [2018-11-23 12:19:17,179 INFO L273 TraceCheckUtils]: 21: Hoare triple {4043#(and (or (<= 3 (div ~CELLCOUNT~0 3)) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (<= 2 (div ~CELLCOUNT~0 3)) (= main_~i~0 1))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4044#(or (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:19:17,179 INFO L273 TraceCheckUtils]: 22: Hoare triple {4044#(or (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4044#(or (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:19:17,181 INFO L273 TraceCheckUtils]: 23: Hoare triple {4044#(or (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) main_~CCCELVOL2~0)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4045#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:19:17,183 INFO L273 TraceCheckUtils]: 24: Hoare triple {4045#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4045#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:19:17,185 INFO L273 TraceCheckUtils]: 25: Hoare triple {4045#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8))))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4046#(or (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (+ (div ~CELLCOUNT~0 3) 1)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))))} is VALID [2018-11-23 12:19:17,186 INFO L273 TraceCheckUtils]: 26: Hoare triple {4046#(or (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (+ (div ~CELLCOUNT~0 3) 1)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4047#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,187 INFO L273 TraceCheckUtils]: 27: Hoare triple {4047#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8)))))} ~i~0 := 1; {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:19:17,188 INFO L273 TraceCheckUtils]: 28: Hoare triple {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:19:17,190 INFO L273 TraceCheckUtils]: 29: Hoare triple {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:19:17,191 INFO L273 TraceCheckUtils]: 30: Hoare triple {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} is VALID [2018-11-23 12:19:17,192 INFO L273 TraceCheckUtils]: 31: Hoare triple {4048#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8))))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:19:17,193 INFO L273 TraceCheckUtils]: 32: Hoare triple {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:19:17,194 INFO L273 TraceCheckUtils]: 33: Hoare triple {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:19:17,195 INFO L273 TraceCheckUtils]: 34: Hoare triple {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} is VALID [2018-11-23 12:19:17,196 INFO L273 TraceCheckUtils]: 35: Hoare triple {4049#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 1) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4047#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,197 INFO L273 TraceCheckUtils]: 36: Hoare triple {4047#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4047#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,198 INFO L273 TraceCheckUtils]: 37: Hoare triple {4047#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 2) (+ |main_~#volArray~0.offset| (- 8)))))} ~i~0 := 0; {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:17,199 INFO L273 TraceCheckUtils]: 38: Hoare triple {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:17,200 INFO L273 TraceCheckUtils]: 39: Hoare triple {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} assume #t~short14; {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:17,200 INFO L256 TraceCheckUtils]: 40: Hoare triple {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4036#true} is VALID [2018-11-23 12:19:17,200 INFO L273 TraceCheckUtils]: 41: Hoare triple {4036#true} ~cond := #in~cond; {4036#true} is VALID [2018-11-23 12:19:17,200 INFO L273 TraceCheckUtils]: 42: Hoare triple {4036#true} assume !(0 == ~cond); {4036#true} is VALID [2018-11-23 12:19:17,200 INFO L273 TraceCheckUtils]: 43: Hoare triple {4036#true} assume true; {4036#true} is VALID [2018-11-23 12:19:17,201 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {4036#true} {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} #119#return; {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:17,202 INFO L273 TraceCheckUtils]: 45: Hoare triple {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:17,203 INFO L273 TraceCheckUtils]: 46: Hoare triple {4050#(and (<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 8))))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,204 INFO L273 TraceCheckUtils]: 47: Hoare triple {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,205 INFO L273 TraceCheckUtils]: 48: Hoare triple {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} assume #t~short14; {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,205 INFO L256 TraceCheckUtils]: 49: Hoare triple {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4036#true} is VALID [2018-11-23 12:19:17,205 INFO L273 TraceCheckUtils]: 50: Hoare triple {4036#true} ~cond := #in~cond; {4036#true} is VALID [2018-11-23 12:19:17,205 INFO L273 TraceCheckUtils]: 51: Hoare triple {4036#true} assume !(0 == ~cond); {4036#true} is VALID [2018-11-23 12:19:17,206 INFO L273 TraceCheckUtils]: 52: Hoare triple {4036#true} assume true; {4036#true} is VALID [2018-11-23 12:19:17,207 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {4036#true} {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} #119#return; {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,227 INFO L273 TraceCheckUtils]: 54: Hoare triple {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,229 INFO L273 TraceCheckUtils]: 55: Hoare triple {4051#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 8)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,229 INFO L273 TraceCheckUtils]: 56: Hoare triple {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,230 INFO L273 TraceCheckUtils]: 57: Hoare triple {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,230 INFO L256 TraceCheckUtils]: 58: Hoare triple {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4036#true} is VALID [2018-11-23 12:19:17,230 INFO L273 TraceCheckUtils]: 59: Hoare triple {4036#true} ~cond := #in~cond; {4036#true} is VALID [2018-11-23 12:19:17,230 INFO L273 TraceCheckUtils]: 60: Hoare triple {4036#true} assume !(0 == ~cond); {4036#true} is VALID [2018-11-23 12:19:17,230 INFO L273 TraceCheckUtils]: 61: Hoare triple {4036#true} assume true; {4036#true} is VALID [2018-11-23 12:19:17,231 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {4036#true} {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} #119#return; {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,231 INFO L273 TraceCheckUtils]: 63: Hoare triple {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,232 INFO L273 TraceCheckUtils]: 64: Hoare triple {4052#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 8)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,233 INFO L273 TraceCheckUtils]: 65: Hoare triple {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,233 INFO L273 TraceCheckUtils]: 66: Hoare triple {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} assume #t~short14; {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,233 INFO L256 TraceCheckUtils]: 67: Hoare triple {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4036#true} is VALID [2018-11-23 12:19:17,233 INFO L273 TraceCheckUtils]: 68: Hoare triple {4036#true} ~cond := #in~cond; {4036#true} is VALID [2018-11-23 12:19:17,233 INFO L273 TraceCheckUtils]: 69: Hoare triple {4036#true} assume !(0 == ~cond); {4036#true} is VALID [2018-11-23 12:19:17,234 INFO L273 TraceCheckUtils]: 70: Hoare triple {4036#true} assume true; {4036#true} is VALID [2018-11-23 12:19:17,235 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {4036#true} {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} #119#return; {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,235 INFO L273 TraceCheckUtils]: 72: Hoare triple {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} is VALID [2018-11-23 12:19:17,236 INFO L273 TraceCheckUtils]: 73: Hoare triple {4053#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 8)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4054#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:19:17,237 INFO L273 TraceCheckUtils]: 74: Hoare triple {4054#(<= (+ main_~MINVAL~0 1) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4055#|main_#t~short14|} is VALID [2018-11-23 12:19:17,237 INFO L273 TraceCheckUtils]: 75: Hoare triple {4055#|main_#t~short14|} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4037#false} is VALID [2018-11-23 12:19:17,237 INFO L256 TraceCheckUtils]: 76: Hoare triple {4037#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4037#false} is VALID [2018-11-23 12:19:17,237 INFO L273 TraceCheckUtils]: 77: Hoare triple {4037#false} ~cond := #in~cond; {4037#false} is VALID [2018-11-23 12:19:17,238 INFO L273 TraceCheckUtils]: 78: Hoare triple {4037#false} assume 0 == ~cond; {4037#false} is VALID [2018-11-23 12:19:17,238 INFO L273 TraceCheckUtils]: 79: Hoare triple {4037#false} assume !false; {4037#false} is VALID [2018-11-23 12:19:17,257 INFO L134 CoverageAnalysis]: Checked inductivity of 92 backedges. 12 proven. 56 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:19:17,257 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:17,257 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:19:17,268 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:19:17,344 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2018-11-23 12:19:17,344 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:19:17,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:17,368 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:17,535 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:17,546 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:17,547 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,551 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,565 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:17,565 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:29, output treesize:22 [2018-11-23 12:19:17,569 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:17,570 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_42|, main_~CCCELVOL2~0]. (and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0) (= (store |v_#memory_int_42| |main_~#volArray~0.base| (store (select |v_#memory_int_42| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) main_~CCCELVOL2~0)) |#memory_int|)) [2018-11-23 12:19:17,570 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= |main_~#volArray~0.offset| 0)) [2018-11-23 12:19:17,611 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:17,613 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 51 treesize of output 70 [2018-11-23 12:19:17,635 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,636 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,637 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,656 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:17,663 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,667 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:17,670 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,676 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,679 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,687 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,687 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:57, output treesize:16 [2018-11-23 12:19:17,807 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:17,812 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,814 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,816 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:17,819 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,826 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,860 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:17,860 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:35, output treesize:31 [2018-11-23 12:19:17,920 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:17,921 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 81 treesize of output 116 [2018-11-23 12:19:17,950 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,952 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,953 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,953 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,954 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,955 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,961 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,968 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:17,978 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,979 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:17,987 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:17,991 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,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:18,012 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,028 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,028 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:90, output treesize:31 [2018-11-23 12:19:18,098 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 35 treesize of output 28 [2018-11-23 12:19:18,105 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,106 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,108 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,109 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,111 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 77 [2018-11-23 12:19:18,115 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,128 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,151 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,152 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:44, output treesize:40 [2018-11-23 12:19:18,220 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:18,222 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 90 treesize of output 123 [2018-11-23 12:19:18,257 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,258 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,260 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,261 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,262 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,263 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,267 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,268 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,270 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,278 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,297 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 10 disjoint index pairs (out of 10 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 60 treesize of output 174 [2018-11-23 12:19:18,310 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,311 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,311 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,312 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:18,322 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 60 treesize of output 128 [2018-11-23 12:19:18,327 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,353 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,362 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:18,377 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:18,378 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:99, output treesize:40 [2018-11-23 12:19:18,633 WARN L180 SmtUtils]: Spent 210.00 ms on a formula simplification that was a NOOP. DAG size: 29 [2018-11-23 12:19:19,135 WARN L180 SmtUtils]: Spent 399.00 ms on a formula simplification that was a NOOP. DAG size: 31 [2018-11-23 12:19:19,640 WARN L180 SmtUtils]: Spent 165.00 ms on a formula simplification that was a NOOP. DAG size: 32 [2018-11-23 12:19:21,082 WARN L180 SmtUtils]: Spent 198.00 ms on a formula simplification that was a NOOP. DAG size: 31 [2018-11-23 12:19:21,783 INFO L256 TraceCheckUtils]: 0: Hoare triple {4036#true} call ULTIMATE.init(); {4036#true} is VALID [2018-11-23 12:19:21,783 INFO L273 TraceCheckUtils]: 1: Hoare triple {4036#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {4036#true} is VALID [2018-11-23 12:19:21,783 INFO L273 TraceCheckUtils]: 2: Hoare triple {4036#true} assume true; {4036#true} is VALID [2018-11-23 12:19:21,783 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4036#true} {4036#true} #115#return; {4036#true} is VALID [2018-11-23 12:19:21,783 INFO L256 TraceCheckUtils]: 4: Hoare triple {4036#true} call #t~ret15 := main(); {4036#true} is VALID [2018-11-23 12:19:21,783 INFO L273 TraceCheckUtils]: 5: Hoare triple {4036#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {4036#true} is VALID [2018-11-23 12:19:21,784 INFO L273 TraceCheckUtils]: 6: Hoare triple {4036#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,785 INFO L273 TraceCheckUtils]: 7: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,785 INFO L273 TraceCheckUtils]: 8: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,786 INFO L273 TraceCheckUtils]: 9: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,786 INFO L273 TraceCheckUtils]: 10: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,787 INFO L273 TraceCheckUtils]: 11: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,788 INFO L273 TraceCheckUtils]: 12: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,789 INFO L273 TraceCheckUtils]: 13: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,790 INFO L273 TraceCheckUtils]: 14: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,790 INFO L273 TraceCheckUtils]: 15: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,791 INFO L273 TraceCheckUtils]: 16: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,792 INFO L273 TraceCheckUtils]: 17: Hoare triple {4077#(and (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} ~i~0 := 1; {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,793 INFO L273 TraceCheckUtils]: 18: Hoare triple {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,794 INFO L273 TraceCheckUtils]: 19: Hoare triple {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,797 INFO L273 TraceCheckUtils]: 20: Hoare triple {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,798 INFO L273 TraceCheckUtils]: 21: Hoare triple {4111#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4124#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,799 INFO L273 TraceCheckUtils]: 22: Hoare triple {4124#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4124#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,799 INFO L273 TraceCheckUtils]: 23: Hoare triple {4124#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 main_~CCCELVOL2~0) (= |main_~#volArray~0.offset| 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4131#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= |main_~#volArray~0.offset| 0))} is VALID [2018-11-23 12:19:21,800 INFO L273 TraceCheckUtils]: 24: Hoare triple {4131#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (= |main_~#volArray~0.offset| 0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4135#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,800 INFO L273 TraceCheckUtils]: 25: Hoare triple {4135#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4135#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,801 INFO L273 TraceCheckUtils]: 26: Hoare triple {4135#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4135#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,801 INFO L273 TraceCheckUtils]: 27: Hoare triple {4135#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} ~i~0 := 1; {4145#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,802 INFO L273 TraceCheckUtils]: 28: Hoare triple {4145#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4145#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,803 INFO L273 TraceCheckUtils]: 29: Hoare triple {4145#(and (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4152#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,805 INFO L273 TraceCheckUtils]: 30: Hoare triple {4152#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4152#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,806 INFO L273 TraceCheckUtils]: 31: Hoare triple {4152#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= main_~MINVAL~0 2) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4159#(and (<= 2 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,807 INFO L273 TraceCheckUtils]: 32: Hoare triple {4159#(and (<= 2 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4159#(and (<= 2 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,809 INFO L273 TraceCheckUtils]: 33: Hoare triple {4159#(and (<= 2 main_~i~0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4166#(and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,810 INFO L273 TraceCheckUtils]: 34: Hoare triple {4166#(and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4170#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,812 INFO L273 TraceCheckUtils]: 35: Hoare triple {4170#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4170#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,814 INFO L273 TraceCheckUtils]: 36: Hoare triple {4170#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4170#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,815 INFO L273 TraceCheckUtils]: 37: Hoare triple {4170#(and (<= main_~MINVAL~0 2) (= |main_~#volArray~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0))) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} ~i~0 := 0; {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:21,817 INFO L273 TraceCheckUtils]: 38: Hoare triple {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:21,818 INFO L273 TraceCheckUtils]: 39: Hoare triple {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} assume #t~short14; {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:21,821 INFO L256 TraceCheckUtils]: 40: Hoare triple {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,822 INFO L273 TraceCheckUtils]: 41: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} ~cond := #in~cond; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,822 INFO L273 TraceCheckUtils]: 42: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume !(0 == ~cond); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,822 INFO L273 TraceCheckUtils]: 43: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume true; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,823 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} #119#return; {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:21,824 INFO L273 TraceCheckUtils]: 45: Hoare triple {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:21,825 INFO L273 TraceCheckUtils]: 46: Hoare triple {4180#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,827 INFO L273 TraceCheckUtils]: 47: Hoare triple {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,828 INFO L273 TraceCheckUtils]: 48: Hoare triple {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume #t~short14; {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,831 INFO L256 TraceCheckUtils]: 49: Hoare triple {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,831 INFO L273 TraceCheckUtils]: 50: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} ~cond := #in~cond; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,832 INFO L273 TraceCheckUtils]: 51: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume !(0 == ~cond); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,832 INFO L273 TraceCheckUtils]: 52: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume true; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,833 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #119#return; {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,834 INFO L273 TraceCheckUtils]: 54: Hoare triple {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,835 INFO L273 TraceCheckUtils]: 55: Hoare triple {4209#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= main_~i~0 1) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,837 INFO L273 TraceCheckUtils]: 56: Hoare triple {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,839 INFO L273 TraceCheckUtils]: 57: Hoare triple {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,841 INFO L256 TraceCheckUtils]: 58: Hoare triple {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,842 INFO L273 TraceCheckUtils]: 59: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} ~cond := #in~cond; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,842 INFO L273 TraceCheckUtils]: 60: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume !(0 == ~cond); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,843 INFO L273 TraceCheckUtils]: 61: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume true; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,844 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #119#return; {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,846 INFO L273 TraceCheckUtils]: 63: Hoare triple {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,847 INFO L273 TraceCheckUtils]: 64: Hoare triple {4237#(and (= main_~i~0 2) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,848 INFO L273 TraceCheckUtils]: 65: Hoare triple {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,849 INFO L273 TraceCheckUtils]: 66: Hoare triple {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} assume #t~short14; {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,851 INFO L256 TraceCheckUtils]: 67: Hoare triple {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,852 INFO L273 TraceCheckUtils]: 68: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} ~cond := #in~cond; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,853 INFO L273 TraceCheckUtils]: 69: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume !(0 == ~cond); {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,853 INFO L273 TraceCheckUtils]: 70: Hoare triple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} assume true; {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} is VALID [2018-11-23 12:19:21,854 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {4190#(exists ((|v_main_~#volArray~0.base_BEFORE_CALL_6| Int) (v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 8) 0) (<= 3 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) 16)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_6|) (+ (* 12 v_prenex_9) (- 4))))))} {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #119#return; {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,855 INFO L273 TraceCheckUtils]: 72: Hoare triple {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} is VALID [2018-11-23 12:19:21,857 INFO L273 TraceCheckUtils]: 73: Hoare triple {4265#(and (= main_~i~0 3) (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4293#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 4))} is VALID [2018-11-23 12:19:21,858 INFO L273 TraceCheckUtils]: 74: Hoare triple {4293#(and (<= main_~MINVAL~0 2) (exists ((v_prenex_9 Int)) (and (<= 2 v_prenex_9) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_9) (- 4))) 0))) (= |main_~#volArray~0.offset| 0) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 8)) 0) (<= 3 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (= main_~i~0 4))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4055#|main_#t~short14|} is VALID [2018-11-23 12:19:21,859 INFO L273 TraceCheckUtils]: 75: Hoare triple {4055#|main_#t~short14|} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4037#false} is VALID [2018-11-23 12:19:21,859 INFO L256 TraceCheckUtils]: 76: Hoare triple {4037#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4037#false} is VALID [2018-11-23 12:19:21,859 INFO L273 TraceCheckUtils]: 77: Hoare triple {4037#false} ~cond := #in~cond; {4037#false} is VALID [2018-11-23 12:19:21,860 INFO L273 TraceCheckUtils]: 78: Hoare triple {4037#false} assume 0 == ~cond; {4037#false} is VALID [2018-11-23 12:19:21,860 INFO L273 TraceCheckUtils]: 79: Hoare triple {4037#false} assume !false; {4037#false} is VALID [2018-11-23 12:19:21,890 INFO L134 CoverageAnalysis]: Checked inductivity of 92 backedges. 12 proven. 50 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2018-11-23 12:19:21,909 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:19:21,909 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 19] total 36 [2018-11-23 12:19:21,910 INFO L78 Accepts]: Start accepts. Automaton has 36 states. Word has length 80 [2018-11-23 12:19:21,911 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:21,911 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 36 states. [2018-11-23 12:19:22,104 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:22,104 INFO L459 AbstractCegarLoop]: Interpolant automaton has 36 states [2018-11-23 12:19:22,105 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2018-11-23 12:19:22,106 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=1089, Unknown=0, NotChecked=0, Total=1260 [2018-11-23 12:19:22,106 INFO L87 Difference]: Start difference. First operand 75 states and 81 transitions. Second operand 36 states. [2018-11-23 12:19:26,895 WARN L180 SmtUtils]: Spent 486.00 ms on a formula simplification. DAG size of input: 33 DAG size of output: 29 [2018-11-23 12:19:33,135 WARN L180 SmtUtils]: Spent 419.00 ms on a formula simplification. DAG size of input: 41 DAG size of output: 36 [2018-11-23 12:19:34,110 WARN L180 SmtUtils]: Spent 696.00 ms on a formula simplification. DAG size of input: 67 DAG size of output: 36 [2018-11-23 12:19:35,166 WARN L180 SmtUtils]: Spent 711.00 ms on a formula simplification. DAG size of input: 68 DAG size of output: 37 [2018-11-23 12:19:35,429 WARN L180 SmtUtils]: Spent 135.00 ms on a formula simplification. DAG size of input: 42 DAG size of output: 37 [2018-11-23 12:19:36,651 WARN L180 SmtUtils]: Spent 651.00 ms on a formula simplification. DAG size of input: 39 DAG size of output: 34 [2018-11-23 12:19:37,853 WARN L180 SmtUtils]: Spent 524.00 ms on a formula simplification. DAG size of input: 42 DAG size of output: 38 [2018-11-23 12:19:39,082 WARN L180 SmtUtils]: Spent 715.00 ms on a formula simplification. DAG size of input: 41 DAG size of output: 36 [2018-11-23 12:19:40,023 WARN L180 SmtUtils]: Spent 790.00 ms on a formula simplification. DAG size of input: 42 DAG size of output: 37 [2018-11-23 12:19:41,033 WARN L180 SmtUtils]: Spent 588.00 ms on a formula simplification. DAG size of input: 42 DAG size of output: 37 [2018-11-23 12:19:41,922 WARN L180 SmtUtils]: Spent 537.00 ms on a formula simplification. DAG size of input: 43 DAG size of output: 38 [2018-11-23 12:19:43,005 WARN L180 SmtUtils]: Spent 624.00 ms on a formula simplification. DAG size of input: 40 DAG size of output: 35 [2018-11-23 12:19:43,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:43,392 INFO L93 Difference]: Finished difference Result 129 states and 143 transitions. [2018-11-23 12:19:43,392 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2018-11-23 12:19:43,392 INFO L78 Accepts]: Start accepts. Automaton has 36 states. Word has length 80 [2018-11-23 12:19:43,393 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:43,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 36 states. [2018-11-23 12:19:43,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 132 transitions. [2018-11-23 12:19:43,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 36 states. [2018-11-23 12:19:43,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 132 transitions. [2018-11-23 12:19:43,398 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 35 states and 132 transitions. [2018-11-23 12:19:44,206 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:44,208 INFO L225 Difference]: With dead ends: 129 [2018-11-23 12:19:44,209 INFO L226 Difference]: Without dead ends: 113 [2018-11-23 12:19:44,211 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 58 SyntacticMatches, 13 SemanticMatches, 63 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1316 ImplicationChecksByTransitivity, 16.1s TimeCoverageRelationStatistics Valid=697, Invalid=3458, Unknown=5, NotChecked=0, Total=4160 [2018-11-23 12:19:44,211 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2018-11-23 12:19:44,771 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 80. [2018-11-23 12:19:44,772 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:44,772 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand 80 states. [2018-11-23 12:19:44,772 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 80 states. [2018-11-23 12:19:44,772 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 80 states. [2018-11-23 12:19:44,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:44,777 INFO L93 Difference]: Finished difference Result 113 states and 125 transitions. [2018-11-23 12:19:44,777 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 125 transitions. [2018-11-23 12:19:44,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:44,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:44,778 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand 113 states. [2018-11-23 12:19:44,778 INFO L87 Difference]: Start difference. First operand 80 states. Second operand 113 states. [2018-11-23 12:19:44,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:44,781 INFO L93 Difference]: Finished difference Result 113 states and 125 transitions. [2018-11-23 12:19:44,782 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 125 transitions. [2018-11-23 12:19:44,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:44,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:44,782 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:44,782 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:44,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 80 states. [2018-11-23 12:19:44,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 87 transitions. [2018-11-23 12:19:44,785 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 87 transitions. Word has length 80 [2018-11-23 12:19:44,785 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:44,785 INFO L480 AbstractCegarLoop]: Abstraction has 80 states and 87 transitions. [2018-11-23 12:19:44,785 INFO L481 AbstractCegarLoop]: Interpolant automaton has 36 states. [2018-11-23 12:19:44,785 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 87 transitions. [2018-11-23 12:19:44,786 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2018-11-23 12:19:44,786 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:44,787 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 5, 5, 5, 5, 4, 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] [2018-11-23 12:19:44,787 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:44,787 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:44,787 INFO L82 PathProgramCache]: Analyzing trace with hash -1602615372, now seen corresponding path program 6 times [2018-11-23 12:19:44,787 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:44,787 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:44,788 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:44,788 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:19:44,788 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:44,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:45,305 INFO L256 TraceCheckUtils]: 0: Hoare triple {4870#true} call ULTIMATE.init(); {4870#true} is VALID [2018-11-23 12:19:45,305 INFO L273 TraceCheckUtils]: 1: Hoare triple {4870#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {4870#true} is VALID [2018-11-23 12:19:45,306 INFO L273 TraceCheckUtils]: 2: Hoare triple {4870#true} assume true; {4870#true} is VALID [2018-11-23 12:19:45,306 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4870#true} {4870#true} #115#return; {4870#true} is VALID [2018-11-23 12:19:45,306 INFO L256 TraceCheckUtils]: 4: Hoare triple {4870#true} call #t~ret15 := main(); {4870#true} is VALID [2018-11-23 12:19:45,306 INFO L273 TraceCheckUtils]: 5: Hoare triple {4870#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {4870#true} is VALID [2018-11-23 12:19:45,306 INFO L273 TraceCheckUtils]: 6: Hoare triple {4870#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {4870#true} is VALID [2018-11-23 12:19:45,306 INFO L273 TraceCheckUtils]: 7: Hoare triple {4870#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,307 INFO L273 TraceCheckUtils]: 8: Hoare triple {4872#(= main_~i~0 1)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,307 INFO L273 TraceCheckUtils]: 9: Hoare triple {4872#(= main_~i~0 1)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,307 INFO L273 TraceCheckUtils]: 10: Hoare triple {4872#(= main_~i~0 1)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,308 INFO L273 TraceCheckUtils]: 11: Hoare triple {4872#(= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:45,331 INFO L273 TraceCheckUtils]: 12: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:45,348 INFO L273 TraceCheckUtils]: 13: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:45,363 INFO L273 TraceCheckUtils]: 14: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:45,363 INFO L273 TraceCheckUtils]: 15: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4870#true} is VALID [2018-11-23 12:19:45,363 INFO L273 TraceCheckUtils]: 16: Hoare triple {4870#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:19:45,363 INFO L273 TraceCheckUtils]: 17: Hoare triple {4870#true} ~i~0 := 1; {4870#true} is VALID [2018-11-23 12:19:45,364 INFO L273 TraceCheckUtils]: 18: Hoare triple {4870#true} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:19:45,364 INFO L273 TraceCheckUtils]: 19: Hoare triple {4870#true} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4870#true} is VALID [2018-11-23 12:19:45,364 INFO L273 TraceCheckUtils]: 20: Hoare triple {4870#true} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4870#true} is VALID [2018-11-23 12:19:45,364 INFO L273 TraceCheckUtils]: 21: Hoare triple {4870#true} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4870#true} is VALID [2018-11-23 12:19:45,364 INFO L273 TraceCheckUtils]: 22: Hoare triple {4870#true} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:19:45,364 INFO L273 TraceCheckUtils]: 23: Hoare triple {4870#true} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4870#true} is VALID [2018-11-23 12:19:45,365 INFO L273 TraceCheckUtils]: 24: Hoare triple {4870#true} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4870#true} is VALID [2018-11-23 12:19:45,365 INFO L273 TraceCheckUtils]: 25: Hoare triple {4870#true} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4870#true} is VALID [2018-11-23 12:19:45,365 INFO L273 TraceCheckUtils]: 26: Hoare triple {4870#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:19:45,378 INFO L273 TraceCheckUtils]: 27: Hoare triple {4870#true} ~i~0 := 1; {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,387 INFO L273 TraceCheckUtils]: 28: Hoare triple {4872#(= main_~i~0 1)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,400 INFO L273 TraceCheckUtils]: 29: Hoare triple {4872#(= main_~i~0 1)} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,408 INFO L273 TraceCheckUtils]: 30: Hoare triple {4872#(= main_~i~0 1)} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:19:45,415 INFO L273 TraceCheckUtils]: 31: Hoare triple {4872#(= main_~i~0 1)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:45,415 INFO L273 TraceCheckUtils]: 32: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:45,420 INFO L273 TraceCheckUtils]: 33: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:19:45,420 INFO L273 TraceCheckUtils]: 34: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:19:45,421 INFO L273 TraceCheckUtils]: 35: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,421 INFO L273 TraceCheckUtils]: 36: Hoare triple {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,422 INFO L273 TraceCheckUtils]: 37: Hoare triple {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} ~i~0 := 0; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:45,422 INFO L273 TraceCheckUtils]: 38: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:45,423 INFO L273 TraceCheckUtils]: 39: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} assume #t~short14; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:45,423 INFO L256 TraceCheckUtils]: 40: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4870#true} is VALID [2018-11-23 12:19:45,423 INFO L273 TraceCheckUtils]: 41: Hoare triple {4870#true} ~cond := #in~cond; {4870#true} is VALID [2018-11-23 12:19:45,423 INFO L273 TraceCheckUtils]: 42: Hoare triple {4870#true} assume !(0 == ~cond); {4870#true} is VALID [2018-11-23 12:19:45,423 INFO L273 TraceCheckUtils]: 43: Hoare triple {4870#true} assume true; {4870#true} is VALID [2018-11-23 12:19:45,424 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {4870#true} {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} #119#return; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:45,425 INFO L273 TraceCheckUtils]: 45: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:45,426 INFO L273 TraceCheckUtils]: 46: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,427 INFO L273 TraceCheckUtils]: 47: Hoare triple {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,427 INFO L273 TraceCheckUtils]: 48: Hoare triple {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} assume #t~short14; {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,427 INFO L256 TraceCheckUtils]: 49: Hoare triple {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4870#true} is VALID [2018-11-23 12:19:45,428 INFO L273 TraceCheckUtils]: 50: Hoare triple {4870#true} ~cond := #in~cond; {4870#true} is VALID [2018-11-23 12:19:45,428 INFO L273 TraceCheckUtils]: 51: Hoare triple {4870#true} assume !(0 == ~cond); {4870#true} is VALID [2018-11-23 12:19:45,428 INFO L273 TraceCheckUtils]: 52: Hoare triple {4870#true} assume true; {4870#true} is VALID [2018-11-23 12:19:45,429 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {4870#true} {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} #119#return; {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,429 INFO L273 TraceCheckUtils]: 54: Hoare triple {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,430 INFO L273 TraceCheckUtils]: 55: Hoare triple {4877#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 4)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,431 INFO L273 TraceCheckUtils]: 56: Hoare triple {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,432 INFO L273 TraceCheckUtils]: 57: Hoare triple {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,432 INFO L256 TraceCheckUtils]: 58: Hoare triple {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4870#true} is VALID [2018-11-23 12:19:45,432 INFO L273 TraceCheckUtils]: 59: Hoare triple {4870#true} ~cond := #in~cond; {4870#true} is VALID [2018-11-23 12:19:45,432 INFO L273 TraceCheckUtils]: 60: Hoare triple {4870#true} assume !(0 == ~cond); {4870#true} is VALID [2018-11-23 12:19:45,432 INFO L273 TraceCheckUtils]: 61: Hoare triple {4870#true} assume true; {4870#true} is VALID [2018-11-23 12:19:45,433 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {4870#true} {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} #119#return; {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,434 INFO L273 TraceCheckUtils]: 63: Hoare triple {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,435 INFO L273 TraceCheckUtils]: 64: Hoare triple {4878#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 4)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,435 INFO L273 TraceCheckUtils]: 65: Hoare triple {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,436 INFO L273 TraceCheckUtils]: 66: Hoare triple {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} assume #t~short14; {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,436 INFO L256 TraceCheckUtils]: 67: Hoare triple {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4870#true} is VALID [2018-11-23 12:19:45,436 INFO L273 TraceCheckUtils]: 68: Hoare triple {4870#true} ~cond := #in~cond; {4870#true} is VALID [2018-11-23 12:19:45,436 INFO L273 TraceCheckUtils]: 69: Hoare triple {4870#true} assume !(0 == ~cond); {4870#true} is VALID [2018-11-23 12:19:45,437 INFO L273 TraceCheckUtils]: 70: Hoare triple {4870#true} assume true; {4870#true} is VALID [2018-11-23 12:19:45,438 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {4870#true} {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} #119#return; {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,438 INFO L273 TraceCheckUtils]: 72: Hoare triple {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,439 INFO L273 TraceCheckUtils]: 73: Hoare triple {4879#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 3)) (+ |main_~#volArray~0.offset| (- 4)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,440 INFO L273 TraceCheckUtils]: 74: Hoare triple {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,440 INFO L273 TraceCheckUtils]: 75: Hoare triple {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} assume #t~short14; {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,440 INFO L256 TraceCheckUtils]: 76: Hoare triple {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4870#true} is VALID [2018-11-23 12:19:45,441 INFO L273 TraceCheckUtils]: 77: Hoare triple {4870#true} ~cond := #in~cond; {4870#true} is VALID [2018-11-23 12:19:45,441 INFO L273 TraceCheckUtils]: 78: Hoare triple {4870#true} assume !(0 == ~cond); {4870#true} is VALID [2018-11-23 12:19:45,441 INFO L273 TraceCheckUtils]: 79: Hoare triple {4870#true} assume true; {4870#true} is VALID [2018-11-23 12:19:45,442 INFO L268 TraceCheckUtils]: 80: Hoare quadruple {4870#true} {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} #119#return; {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,442 INFO L273 TraceCheckUtils]: 81: Hoare triple {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:19:45,443 INFO L273 TraceCheckUtils]: 82: Hoare triple {4880#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 2)) (+ |main_~#volArray~0.offset| (- 4)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4881#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:19:45,444 INFO L273 TraceCheckUtils]: 83: Hoare triple {4881#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4881#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:19:45,445 INFO L273 TraceCheckUtils]: 84: Hoare triple {4881#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4882#|main_#t~short14|} is VALID [2018-11-23 12:19:45,445 INFO L256 TraceCheckUtils]: 85: Hoare triple {4882#|main_#t~short14|} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {4883#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:19:45,446 INFO L273 TraceCheckUtils]: 86: Hoare triple {4883#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {4884#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:19:45,447 INFO L273 TraceCheckUtils]: 87: Hoare triple {4884#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {4871#false} is VALID [2018-11-23 12:19:45,447 INFO L273 TraceCheckUtils]: 88: Hoare triple {4871#false} assume !false; {4871#false} is VALID [2018-11-23 12:19:45,463 INFO L134 CoverageAnalysis]: Checked inductivity of 133 backedges. 10 proven. 77 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2018-11-23 12:19:45,463 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:45,463 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:19:45,477 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:19:45,528 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2018-11-23 12:19:45,528 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:19:45,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:45,552 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:45,611 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:45,617 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:45,618 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:45,622 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:45,629 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:45,629 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:23, output treesize:19 [2018-11-23 12:19:45,647 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:45,648 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 62 treesize of output 79 [2018-11-23 12:19:45,707 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:45,707 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:45,708 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:45,715 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:45,722 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:45,725 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:45,733 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:45,739 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:45,741 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:45,744 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:45,744 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:62, output treesize:9 [2018-11-23 12:20:22,556 INFO L256 TraceCheckUtils]: 0: Hoare triple {4870#true} call ULTIMATE.init(); {4870#true} is VALID [2018-11-23 12:20:22,557 INFO L273 TraceCheckUtils]: 1: Hoare triple {4870#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {4870#true} is VALID [2018-11-23 12:20:22,557 INFO L273 TraceCheckUtils]: 2: Hoare triple {4870#true} assume true; {4870#true} is VALID [2018-11-23 12:20:22,557 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4870#true} {4870#true} #115#return; {4870#true} is VALID [2018-11-23 12:20:22,557 INFO L256 TraceCheckUtils]: 4: Hoare triple {4870#true} call #t~ret15 := main(); {4870#true} is VALID [2018-11-23 12:20:22,557 INFO L273 TraceCheckUtils]: 5: Hoare triple {4870#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 6: Hoare triple {4870#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 7: Hoare triple {4870#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 8: Hoare triple {4870#true} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 9: Hoare triple {4870#true} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 10: Hoare triple {4870#true} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 11: Hoare triple {4870#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 12: Hoare triple {4870#true} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:20:22,558 INFO L273 TraceCheckUtils]: 13: Hoare triple {4870#true} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 14: Hoare triple {4870#true} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 15: Hoare triple {4870#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 16: Hoare triple {4870#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 17: Hoare triple {4870#true} ~i~0 := 1; {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 18: Hoare triple {4870#true} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 19: Hoare triple {4870#true} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 20: Hoare triple {4870#true} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 21: Hoare triple {4870#true} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4870#true} is VALID [2018-11-23 12:20:22,559 INFO L273 TraceCheckUtils]: 22: Hoare triple {4870#true} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:20:22,560 INFO L273 TraceCheckUtils]: 23: Hoare triple {4870#true} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {4870#true} is VALID [2018-11-23 12:20:22,560 INFO L273 TraceCheckUtils]: 24: Hoare triple {4870#true} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {4870#true} is VALID [2018-11-23 12:20:22,560 INFO L273 TraceCheckUtils]: 25: Hoare triple {4870#true} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {4870#true} is VALID [2018-11-23 12:20:22,560 INFO L273 TraceCheckUtils]: 26: Hoare triple {4870#true} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4870#true} is VALID [2018-11-23 12:20:22,560 INFO L273 TraceCheckUtils]: 27: Hoare triple {4870#true} ~i~0 := 1; {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:20:22,561 INFO L273 TraceCheckUtils]: 28: Hoare triple {4872#(= main_~i~0 1)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:20:22,561 INFO L273 TraceCheckUtils]: 29: Hoare triple {4872#(= main_~i~0 1)} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:20:22,561 INFO L273 TraceCheckUtils]: 30: Hoare triple {4872#(= main_~i~0 1)} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4872#(= main_~i~0 1)} is VALID [2018-11-23 12:20:22,562 INFO L273 TraceCheckUtils]: 31: Hoare triple {4872#(= main_~i~0 1)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:22,562 INFO L273 TraceCheckUtils]: 32: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:22,563 INFO L273 TraceCheckUtils]: 33: Hoare triple {4873#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:20:22,563 INFO L273 TraceCheckUtils]: 34: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:20:22,564 INFO L273 TraceCheckUtils]: 35: Hoare triple {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:20:22,564 INFO L273 TraceCheckUtils]: 36: Hoare triple {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} is VALID [2018-11-23 12:20:22,565 INFO L273 TraceCheckUtils]: 37: Hoare triple {4875#(= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4)))))} ~i~0 := 0; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,565 INFO L273 TraceCheckUtils]: 38: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,566 INFO L273 TraceCheckUtils]: 39: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} assume #t~short14; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,567 INFO L256 TraceCheckUtils]: 40: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,568 INFO L273 TraceCheckUtils]: 41: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} ~cond := #in~cond; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,568 INFO L273 TraceCheckUtils]: 42: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume !(0 == ~cond); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,569 INFO L273 TraceCheckUtils]: 43: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume true; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,570 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} #119#return; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,570 INFO L273 TraceCheckUtils]: 45: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,571 INFO L273 TraceCheckUtils]: 46: Hoare triple {4876#(and (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} is VALID [2018-11-23 12:20:22,572 INFO L273 TraceCheckUtils]: 47: Hoare triple {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} is VALID [2018-11-23 12:20:22,573 INFO L273 TraceCheckUtils]: 48: Hoare triple {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} assume #t~short14; {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} is VALID [2018-11-23 12:20:22,574 INFO L256 TraceCheckUtils]: 49: Hoare triple {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,575 INFO L273 TraceCheckUtils]: 50: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} ~cond := #in~cond; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,575 INFO L273 TraceCheckUtils]: 51: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume !(0 == ~cond); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,576 INFO L273 TraceCheckUtils]: 52: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume true; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,577 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} #119#return; {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} is VALID [2018-11-23 12:20:22,577 INFO L273 TraceCheckUtils]: 54: Hoare triple {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} is VALID [2018-11-23 12:20:22,578 INFO L273 TraceCheckUtils]: 55: Hoare triple {5027#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 6) (+ |main_~#volArray~0.offset| (- 4))))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:20:22,579 INFO L273 TraceCheckUtils]: 56: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:20:22,580 INFO L273 TraceCheckUtils]: 57: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:20:22,581 INFO L256 TraceCheckUtils]: 58: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,582 INFO L273 TraceCheckUtils]: 59: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} ~cond := #in~cond; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,583 INFO L273 TraceCheckUtils]: 60: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume !(0 == ~cond); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,583 INFO L273 TraceCheckUtils]: 61: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume true; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,584 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} #119#return; {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:20:22,585 INFO L273 TraceCheckUtils]: 63: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} is VALID [2018-11-23 12:20:22,586 INFO L273 TraceCheckUtils]: 64: Hoare triple {4874#(and (= (* 12 main_~i~0) 24) (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 8)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} is VALID [2018-11-23 12:20:22,587 INFO L273 TraceCheckUtils]: 65: Hoare triple {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} is VALID [2018-11-23 12:20:22,587 INFO L273 TraceCheckUtils]: 66: Hoare triple {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} assume #t~short14; {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} is VALID [2018-11-23 12:20:22,589 INFO L256 TraceCheckUtils]: 67: Hoare triple {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,589 INFO L273 TraceCheckUtils]: 68: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} ~cond := #in~cond; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,590 INFO L273 TraceCheckUtils]: 69: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume !(0 == ~cond); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,591 INFO L273 TraceCheckUtils]: 70: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume true; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,591 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} #119#return; {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} is VALID [2018-11-23 12:20:22,592 INFO L273 TraceCheckUtils]: 72: Hoare triple {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} is VALID [2018-11-23 12:20:22,593 INFO L273 TraceCheckUtils]: 73: Hoare triple {5082#(and (= 0 (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 20)))) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 16)))) (= 36 (* 12 main_~i~0)))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:22,594 INFO L273 TraceCheckUtils]: 74: Hoare triple {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:22,595 INFO L273 TraceCheckUtils]: 75: Hoare triple {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} assume #t~short14; {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:22,596 INFO L256 TraceCheckUtils]: 76: Hoare triple {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,597 INFO L273 TraceCheckUtils]: 77: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} ~cond := #in~cond; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,597 INFO L273 TraceCheckUtils]: 78: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume !(0 == ~cond); {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,598 INFO L273 TraceCheckUtils]: 79: Hoare triple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} assume true; {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} is VALID [2018-11-23 12:20:22,598 INFO L268 TraceCheckUtils]: 80: Hoare quadruple {5008#(exists ((|v_main_~#volArray~0.offset_BEFORE_CALL_10| Int) (|v_main_~#volArray~0.base_BEFORE_CALL_10| Int)) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_10|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_10| 20))))} {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} #119#return; {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:22,599 INFO L273 TraceCheckUtils]: 81: Hoare triple {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} is VALID [2018-11-23 12:20:22,600 INFO L273 TraceCheckUtils]: 82: Hoare triple {5110#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 4))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5138#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 5))} is VALID [2018-11-23 12:20:22,601 INFO L273 TraceCheckUtils]: 83: Hoare triple {5138#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 5))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5138#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 5))} is VALID [2018-11-23 12:20:22,602 INFO L273 TraceCheckUtils]: 84: Hoare triple {5138#(and (= (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 16))) (+ |main_~#volArray~0.offset| 20)) 0) (= main_~i~0 5))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {4882#|main_#t~short14|} is VALID [2018-11-23 12:20:22,603 INFO L256 TraceCheckUtils]: 85: Hoare triple {4882#|main_#t~short14|} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5148#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:20:22,603 INFO L273 TraceCheckUtils]: 86: Hoare triple {5148#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {5152#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:20:22,604 INFO L273 TraceCheckUtils]: 87: Hoare triple {5152#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4871#false} is VALID [2018-11-23 12:20:22,604 INFO L273 TraceCheckUtils]: 88: Hoare triple {4871#false} assume !false; {4871#false} is VALID [2018-11-23 12:20:22,627 INFO L134 CoverageAnalysis]: Checked inductivity of 133 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2018-11-23 12:20:22,648 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:22,648 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 22 [2018-11-23 12:20:22,649 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 89 [2018-11-23 12:20:22,650 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:22,651 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-23 12:20:22,818 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:22,818 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-23 12:20:22,818 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-23 12:20:22,818 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=63, Invalid=394, Unknown=5, NotChecked=0, Total=462 [2018-11-23 12:20:22,819 INFO L87 Difference]: Start difference. First operand 80 states and 87 transitions. Second operand 22 states. [2018-11-23 12:20:43,953 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:43,953 INFO L93 Difference]: Finished difference Result 120 states and 133 transitions. [2018-11-23 12:20:43,953 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2018-11-23 12:20:43,954 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 89 [2018-11-23 12:20:43,954 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:43,954 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:20:43,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 125 transitions. [2018-11-23 12:20:43,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:20:43,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 125 transitions. [2018-11-23 12:20:43,959 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 125 transitions. [2018-11-23 12:20:44,499 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:44,505 INFO L225 Difference]: With dead ends: 120 [2018-11-23 12:20:44,505 INFO L226 Difference]: Without dead ends: 118 [2018-11-23 12:20:44,506 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 72 SyntacticMatches, 16 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 284 ImplicationChecksByTransitivity, 39.4s TimeCoverageRelationStatistics Valid=143, Invalid=972, Unknown=7, NotChecked=0, Total=1122 [2018-11-23 12:20:44,506 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 118 states. [2018-11-23 12:20:45,003 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 118 to 90. [2018-11-23 12:20:45,003 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:45,003 INFO L82 GeneralOperation]: Start isEquivalent. First operand 118 states. Second operand 90 states. [2018-11-23 12:20:45,003 INFO L74 IsIncluded]: Start isIncluded. First operand 118 states. Second operand 90 states. [2018-11-23 12:20:45,003 INFO L87 Difference]: Start difference. First operand 118 states. Second operand 90 states. [2018-11-23 12:20:45,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:45,007 INFO L93 Difference]: Finished difference Result 118 states and 131 transitions. [2018-11-23 12:20:45,007 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 131 transitions. [2018-11-23 12:20:45,008 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:45,008 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:45,008 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand 118 states. [2018-11-23 12:20:45,008 INFO L87 Difference]: Start difference. First operand 90 states. Second operand 118 states. [2018-11-23 12:20:45,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:45,011 INFO L93 Difference]: Finished difference Result 118 states and 131 transitions. [2018-11-23 12:20:45,011 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 131 transitions. [2018-11-23 12:20:45,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:45,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:45,012 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:45,012 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:45,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-23 12:20:45,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 99 transitions. [2018-11-23 12:20:45,014 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 99 transitions. Word has length 89 [2018-11-23 12:20:45,014 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:45,015 INFO L480 AbstractCegarLoop]: Abstraction has 90 states and 99 transitions. [2018-11-23 12:20:45,015 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-23 12:20:45,015 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 99 transitions. [2018-11-23 12:20:45,016 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2018-11-23 12:20:45,016 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:45,016 INFO L402 BasicCegarLoop]: trace histogram [7, 7, 7, 6, 6, 6, 6, 6, 5, 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] [2018-11-23 12:20:45,016 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:45,017 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:45,017 INFO L82 PathProgramCache]: Analyzing trace with hash -1680074273, now seen corresponding path program 7 times [2018-11-23 12:20:45,017 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:45,017 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:45,017 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:45,018 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:45,018 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:45,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:45,372 INFO L256 TraceCheckUtils]: 0: Hoare triple {5697#true} call ULTIMATE.init(); {5697#true} is VALID [2018-11-23 12:20:45,373 INFO L273 TraceCheckUtils]: 1: Hoare triple {5697#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {5697#true} is VALID [2018-11-23 12:20:45,373 INFO L273 TraceCheckUtils]: 2: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:45,373 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5697#true} {5697#true} #115#return; {5697#true} is VALID [2018-11-23 12:20:45,373 INFO L256 TraceCheckUtils]: 4: Hoare triple {5697#true} call #t~ret15 := main(); {5697#true} is VALID [2018-11-23 12:20:45,374 INFO L273 TraceCheckUtils]: 5: Hoare triple {5697#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {5697#true} is VALID [2018-11-23 12:20:45,375 INFO L273 TraceCheckUtils]: 6: Hoare triple {5697#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {5699#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:20:45,376 INFO L273 TraceCheckUtils]: 7: Hoare triple {5699#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:45,376 INFO L273 TraceCheckUtils]: 8: Hoare triple {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:45,377 INFO L273 TraceCheckUtils]: 9: Hoare triple {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:45,377 INFO L273 TraceCheckUtils]: 10: Hoare triple {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} is VALID [2018-11-23 12:20:45,378 INFO L273 TraceCheckUtils]: 11: Hoare triple {5700#(and (= main_~i~0 1) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))) (< 0 (+ ~CELLCOUNT~0 1)))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:20:45,379 INFO L273 TraceCheckUtils]: 12: Hoare triple {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:20:45,380 INFO L273 TraceCheckUtils]: 13: Hoare triple {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:20:45,381 INFO L273 TraceCheckUtils]: 14: Hoare triple {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:20:45,382 INFO L273 TraceCheckUtils]: 15: Hoare triple {5701#(and (<= main_~i~0 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5702#(and (<= main_~i~0 3) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:20:45,383 INFO L273 TraceCheckUtils]: 16: Hoare triple {5702#(and (<= main_~i~0 3) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5703#(and (<= (div ~CELLCOUNT~0 3) 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:20:45,384 INFO L273 TraceCheckUtils]: 17: Hoare triple {5703#(and (<= (div ~CELLCOUNT~0 3) 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} ~i~0 := 1; {5703#(and (<= (div ~CELLCOUNT~0 3) 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} is VALID [2018-11-23 12:20:45,385 INFO L273 TraceCheckUtils]: 18: Hoare triple {5703#(and (<= (div ~CELLCOUNT~0 3) 2) (< 0 (+ ~CELLCOUNT~0 1)) (= ~CELLCOUNT~0 (* 3 (div ~CELLCOUNT~0 3))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,385 INFO L273 TraceCheckUtils]: 19: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,386 INFO L273 TraceCheckUtils]: 20: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,387 INFO L273 TraceCheckUtils]: 21: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,387 INFO L273 TraceCheckUtils]: 22: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,388 INFO L273 TraceCheckUtils]: 23: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,389 INFO L273 TraceCheckUtils]: 24: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,390 INFO L273 TraceCheckUtils]: 25: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,390 INFO L273 TraceCheckUtils]: 26: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,391 INFO L273 TraceCheckUtils]: 27: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} ~i~0 := 1; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,391 INFO L273 TraceCheckUtils]: 28: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,392 INFO L273 TraceCheckUtils]: 29: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,392 INFO L273 TraceCheckUtils]: 30: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,393 INFO L273 TraceCheckUtils]: 31: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,393 INFO L273 TraceCheckUtils]: 32: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,394 INFO L273 TraceCheckUtils]: 33: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,394 INFO L273 TraceCheckUtils]: 34: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,395 INFO L273 TraceCheckUtils]: 35: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,395 INFO L273 TraceCheckUtils]: 36: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5704#(<= ~CELLCOUNT~0 6)} is VALID [2018-11-23 12:20:45,396 INFO L273 TraceCheckUtils]: 37: Hoare triple {5704#(<= ~CELLCOUNT~0 6)} ~i~0 := 0; {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} is VALID [2018-11-23 12:20:45,397 INFO L273 TraceCheckUtils]: 38: Hoare triple {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} is VALID [2018-11-23 12:20:45,397 INFO L273 TraceCheckUtils]: 39: Hoare triple {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} assume #t~short14; {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} is VALID [2018-11-23 12:20:45,398 INFO L256 TraceCheckUtils]: 40: Hoare triple {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5697#true} is VALID [2018-11-23 12:20:45,398 INFO L273 TraceCheckUtils]: 41: Hoare triple {5697#true} ~cond := #in~cond; {5697#true} is VALID [2018-11-23 12:20:45,398 INFO L273 TraceCheckUtils]: 42: Hoare triple {5697#true} assume !(0 == ~cond); {5697#true} is VALID [2018-11-23 12:20:45,398 INFO L273 TraceCheckUtils]: 43: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:45,399 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {5697#true} {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} #119#return; {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} is VALID [2018-11-23 12:20:45,400 INFO L273 TraceCheckUtils]: 45: Hoare triple {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} is VALID [2018-11-23 12:20:45,400 INFO L273 TraceCheckUtils]: 46: Hoare triple {5705#(and (<= ~CELLCOUNT~0 6) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:45,401 INFO L273 TraceCheckUtils]: 47: Hoare triple {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:45,402 INFO L273 TraceCheckUtils]: 48: Hoare triple {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} assume #t~short14; {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:45,402 INFO L256 TraceCheckUtils]: 49: Hoare triple {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5697#true} is VALID [2018-11-23 12:20:45,402 INFO L273 TraceCheckUtils]: 50: Hoare triple {5697#true} ~cond := #in~cond; {5697#true} is VALID [2018-11-23 12:20:45,402 INFO L273 TraceCheckUtils]: 51: Hoare triple {5697#true} assume !(0 == ~cond); {5697#true} is VALID [2018-11-23 12:20:45,402 INFO L273 TraceCheckUtils]: 52: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:45,403 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {5697#true} {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} #119#return; {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:45,404 INFO L273 TraceCheckUtils]: 54: Hoare triple {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:45,405 INFO L273 TraceCheckUtils]: 55: Hoare triple {5706#(<= ~CELLCOUNT~0 (+ main_~i~0 5))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:45,405 INFO L273 TraceCheckUtils]: 56: Hoare triple {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:45,406 INFO L273 TraceCheckUtils]: 57: Hoare triple {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:45,406 INFO L256 TraceCheckUtils]: 58: Hoare triple {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5697#true} is VALID [2018-11-23 12:20:45,406 INFO L273 TraceCheckUtils]: 59: Hoare triple {5697#true} ~cond := #in~cond; {5697#true} is VALID [2018-11-23 12:20:45,406 INFO L273 TraceCheckUtils]: 60: Hoare triple {5697#true} assume !(0 == ~cond); {5697#true} is VALID [2018-11-23 12:20:45,406 INFO L273 TraceCheckUtils]: 61: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:45,407 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {5697#true} {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} #119#return; {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:45,408 INFO L273 TraceCheckUtils]: 63: Hoare triple {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:45,409 INFO L273 TraceCheckUtils]: 64: Hoare triple {5707#(<= ~CELLCOUNT~0 (+ main_~i~0 4))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:45,409 INFO L273 TraceCheckUtils]: 65: Hoare triple {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:45,410 INFO L273 TraceCheckUtils]: 66: Hoare triple {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} assume #t~short14; {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:45,410 INFO L256 TraceCheckUtils]: 67: Hoare triple {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5697#true} is VALID [2018-11-23 12:20:45,410 INFO L273 TraceCheckUtils]: 68: Hoare triple {5697#true} ~cond := #in~cond; {5697#true} is VALID [2018-11-23 12:20:45,410 INFO L273 TraceCheckUtils]: 69: Hoare triple {5697#true} assume !(0 == ~cond); {5697#true} is VALID [2018-11-23 12:20:45,410 INFO L273 TraceCheckUtils]: 70: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:45,411 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {5697#true} {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} #119#return; {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:45,412 INFO L273 TraceCheckUtils]: 72: Hoare triple {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:45,413 INFO L273 TraceCheckUtils]: 73: Hoare triple {5708#(<= ~CELLCOUNT~0 (+ main_~i~0 3))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:45,413 INFO L273 TraceCheckUtils]: 74: Hoare triple {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:45,414 INFO L273 TraceCheckUtils]: 75: Hoare triple {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} assume #t~short14; {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:45,414 INFO L256 TraceCheckUtils]: 76: Hoare triple {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5697#true} is VALID [2018-11-23 12:20:45,414 INFO L273 TraceCheckUtils]: 77: Hoare triple {5697#true} ~cond := #in~cond; {5697#true} is VALID [2018-11-23 12:20:45,414 INFO L273 TraceCheckUtils]: 78: Hoare triple {5697#true} assume !(0 == ~cond); {5697#true} is VALID [2018-11-23 12:20:45,415 INFO L273 TraceCheckUtils]: 79: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:45,415 INFO L268 TraceCheckUtils]: 80: Hoare quadruple {5697#true} {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} #119#return; {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:45,416 INFO L273 TraceCheckUtils]: 81: Hoare triple {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:45,417 INFO L273 TraceCheckUtils]: 82: Hoare triple {5709#(<= ~CELLCOUNT~0 (+ main_~i~0 2))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:45,417 INFO L273 TraceCheckUtils]: 83: Hoare triple {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:45,418 INFO L273 TraceCheckUtils]: 84: Hoare triple {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} assume #t~short14; {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:45,418 INFO L256 TraceCheckUtils]: 85: Hoare triple {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5697#true} is VALID [2018-11-23 12:20:45,418 INFO L273 TraceCheckUtils]: 86: Hoare triple {5697#true} ~cond := #in~cond; {5697#true} is VALID [2018-11-23 12:20:45,418 INFO L273 TraceCheckUtils]: 87: Hoare triple {5697#true} assume !(0 == ~cond); {5697#true} is VALID [2018-11-23 12:20:45,419 INFO L273 TraceCheckUtils]: 88: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:45,419 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {5697#true} {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} #119#return; {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:45,420 INFO L273 TraceCheckUtils]: 90: Hoare triple {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:45,421 INFO L273 TraceCheckUtils]: 91: Hoare triple {5710#(<= ~CELLCOUNT~0 (+ main_~i~0 1))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5711#(<= ~CELLCOUNT~0 main_~i~0)} is VALID [2018-11-23 12:20:45,421 INFO L273 TraceCheckUtils]: 92: Hoare triple {5711#(<= ~CELLCOUNT~0 main_~i~0)} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5698#false} is VALID [2018-11-23 12:20:45,422 INFO L273 TraceCheckUtils]: 93: Hoare triple {5698#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {5698#false} is VALID [2018-11-23 12:20:45,422 INFO L256 TraceCheckUtils]: 94: Hoare triple {5698#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5698#false} is VALID [2018-11-23 12:20:45,422 INFO L273 TraceCheckUtils]: 95: Hoare triple {5698#false} ~cond := #in~cond; {5698#false} is VALID [2018-11-23 12:20:45,422 INFO L273 TraceCheckUtils]: 96: Hoare triple {5698#false} assume 0 == ~cond; {5698#false} is VALID [2018-11-23 12:20:45,422 INFO L273 TraceCheckUtils]: 97: Hoare triple {5698#false} assume !false; {5698#false} is VALID [2018-11-23 12:20:45,432 INFO L134 CoverageAnalysis]: Checked inductivity of 183 backedges. 79 proven. 34 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2018-11-23 12:20:45,432 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:45,432 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:45,440 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:20:45,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:45,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:45,501 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:46,107 INFO L256 TraceCheckUtils]: 0: Hoare triple {5697#true} call ULTIMATE.init(); {5697#true} is VALID [2018-11-23 12:20:46,107 INFO L273 TraceCheckUtils]: 1: Hoare triple {5697#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {5697#true} is VALID [2018-11-23 12:20:46,107 INFO L273 TraceCheckUtils]: 2: Hoare triple {5697#true} assume true; {5697#true} is VALID [2018-11-23 12:20:46,107 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5697#true} {5697#true} #115#return; {5697#true} is VALID [2018-11-23 12:20:46,107 INFO L256 TraceCheckUtils]: 4: Hoare triple {5697#true} call #t~ret15 := main(); {5697#true} is VALID [2018-11-23 12:20:46,107 INFO L273 TraceCheckUtils]: 5: Hoare triple {5697#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {5697#true} is VALID [2018-11-23 12:20:46,108 INFO L273 TraceCheckUtils]: 6: Hoare triple {5697#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {5699#(<= 2 ~CELLCOUNT~0)} is VALID [2018-11-23 12:20:46,109 INFO L273 TraceCheckUtils]: 7: Hoare triple {5699#(<= 2 ~CELLCOUNT~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,109 INFO L273 TraceCheckUtils]: 8: Hoare triple {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,110 INFO L273 TraceCheckUtils]: 9: Hoare triple {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,110 INFO L273 TraceCheckUtils]: 10: Hoare triple {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,111 INFO L273 TraceCheckUtils]: 11: Hoare triple {5736#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 1) (= (mod ~CELLCOUNT~0 3) 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,111 INFO L273 TraceCheckUtils]: 12: Hoare triple {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,112 INFO L273 TraceCheckUtils]: 13: Hoare triple {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,113 INFO L273 TraceCheckUtils]: 14: Hoare triple {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,114 INFO L273 TraceCheckUtils]: 15: Hoare triple {5749#(and (<= 2 ~CELLCOUNT~0) (<= main_~i~0 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5762#(and (<= main_~i~0 3) (<= 2 ~CELLCOUNT~0) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,115 INFO L273 TraceCheckUtils]: 16: Hoare triple {5762#(and (<= main_~i~0 3) (<= 2 ~CELLCOUNT~0) (= (mod ~CELLCOUNT~0 3) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,116 INFO L273 TraceCheckUtils]: 17: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~i~0 := 1; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,116 INFO L273 TraceCheckUtils]: 18: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,117 INFO L273 TraceCheckUtils]: 19: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,118 INFO L273 TraceCheckUtils]: 20: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,119 INFO L273 TraceCheckUtils]: 21: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,120 INFO L273 TraceCheckUtils]: 22: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,120 INFO L273 TraceCheckUtils]: 23: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,121 INFO L273 TraceCheckUtils]: 24: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,122 INFO L273 TraceCheckUtils]: 25: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,123 INFO L273 TraceCheckUtils]: 26: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,123 INFO L273 TraceCheckUtils]: 27: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~i~0 := 1; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,124 INFO L273 TraceCheckUtils]: 28: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,125 INFO L273 TraceCheckUtils]: 29: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,126 INFO L273 TraceCheckUtils]: 30: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,126 INFO L273 TraceCheckUtils]: 31: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,127 INFO L273 TraceCheckUtils]: 32: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,128 INFO L273 TraceCheckUtils]: 33: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,129 INFO L273 TraceCheckUtils]: 34: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,129 INFO L273 TraceCheckUtils]: 35: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,130 INFO L273 TraceCheckUtils]: 36: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,131 INFO L273 TraceCheckUtils]: 37: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~i~0 := 0; {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,132 INFO L273 TraceCheckUtils]: 38: Hoare triple {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,132 INFO L273 TraceCheckUtils]: 39: Hoare triple {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume #t~short14; {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,134 INFO L256 TraceCheckUtils]: 40: Hoare triple {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,134 INFO L273 TraceCheckUtils]: 41: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~cond := #in~cond; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,135 INFO L273 TraceCheckUtils]: 42: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(0 == ~cond); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,136 INFO L273 TraceCheckUtils]: 43: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume true; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,136 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #119#return; {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,137 INFO L273 TraceCheckUtils]: 45: Hoare triple {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,138 INFO L273 TraceCheckUtils]: 46: Hoare triple {5830#(and (<= 0 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,139 INFO L273 TraceCheckUtils]: 47: Hoare triple {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,140 INFO L273 TraceCheckUtils]: 48: Hoare triple {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume #t~short14; {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,141 INFO L256 TraceCheckUtils]: 49: Hoare triple {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,141 INFO L273 TraceCheckUtils]: 50: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~cond := #in~cond; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,142 INFO L273 TraceCheckUtils]: 51: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(0 == ~cond); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,143 INFO L273 TraceCheckUtils]: 52: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume true; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,144 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #119#return; {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,144 INFO L273 TraceCheckUtils]: 54: Hoare triple {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,145 INFO L273 TraceCheckUtils]: 55: Hoare triple {5858#(and (<= 1 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,146 INFO L273 TraceCheckUtils]: 56: Hoare triple {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,147 INFO L273 TraceCheckUtils]: 57: Hoare triple {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,148 INFO L256 TraceCheckUtils]: 58: Hoare triple {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,149 INFO L273 TraceCheckUtils]: 59: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~cond := #in~cond; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,149 INFO L273 TraceCheckUtils]: 60: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(0 == ~cond); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,150 INFO L273 TraceCheckUtils]: 61: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume true; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,151 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #119#return; {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,152 INFO L273 TraceCheckUtils]: 63: Hoare triple {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,153 INFO L273 TraceCheckUtils]: 64: Hoare triple {5886#(and (<= 2 main_~i~0) (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:46,153 INFO L273 TraceCheckUtils]: 65: Hoare triple {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:46,154 INFO L273 TraceCheckUtils]: 66: Hoare triple {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} assume #t~short14; {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:46,155 INFO L256 TraceCheckUtils]: 67: Hoare triple {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,156 INFO L273 TraceCheckUtils]: 68: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~cond := #in~cond; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,157 INFO L273 TraceCheckUtils]: 69: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(0 == ~cond); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,157 INFO L273 TraceCheckUtils]: 70: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume true; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,158 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} #119#return; {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:46,159 INFO L273 TraceCheckUtils]: 72: Hoare triple {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:46,160 INFO L273 TraceCheckUtils]: 73: Hoare triple {5914#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 3 main_~i~0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,161 INFO L273 TraceCheckUtils]: 74: Hoare triple {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,161 INFO L273 TraceCheckUtils]: 75: Hoare triple {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} assume #t~short14; {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,162 INFO L256 TraceCheckUtils]: 76: Hoare triple {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,163 INFO L273 TraceCheckUtils]: 77: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~cond := #in~cond; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,164 INFO L273 TraceCheckUtils]: 78: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(0 == ~cond); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,164 INFO L273 TraceCheckUtils]: 79: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume true; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,165 INFO L268 TraceCheckUtils]: 80: Hoare quadruple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} #119#return; {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,166 INFO L273 TraceCheckUtils]: 81: Hoare triple {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,167 INFO L273 TraceCheckUtils]: 82: Hoare triple {5942#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (<= 4 main_~i~0) (= (mod ~CELLCOUNT~0 3) 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,168 INFO L273 TraceCheckUtils]: 83: Hoare triple {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,168 INFO L273 TraceCheckUtils]: 84: Hoare triple {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume #t~short14; {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,170 INFO L256 TraceCheckUtils]: 85: Hoare triple {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,170 INFO L273 TraceCheckUtils]: 86: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} ~cond := #in~cond; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,171 INFO L273 TraceCheckUtils]: 87: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume !(0 == ~cond); {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,172 INFO L273 TraceCheckUtils]: 88: Hoare triple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} assume true; {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,172 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {5766#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #119#return; {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,173 INFO L273 TraceCheckUtils]: 90: Hoare triple {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} is VALID [2018-11-23 12:20:46,174 INFO L273 TraceCheckUtils]: 91: Hoare triple {5970#(and (<= 2 ~CELLCOUNT~0) (<= 5 main_~i~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {5998#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:46,175 INFO L273 TraceCheckUtils]: 92: Hoare triple {5998#(and (<= 2 ~CELLCOUNT~0) (<= (div ~CELLCOUNT~0 3) 2) (= (mod ~CELLCOUNT~0 3) 0) (<= 6 main_~i~0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {5698#false} is VALID [2018-11-23 12:20:46,175 INFO L273 TraceCheckUtils]: 93: Hoare triple {5698#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {5698#false} is VALID [2018-11-23 12:20:46,176 INFO L256 TraceCheckUtils]: 94: Hoare triple {5698#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {5698#false} is VALID [2018-11-23 12:20:46,176 INFO L273 TraceCheckUtils]: 95: Hoare triple {5698#false} ~cond := #in~cond; {5698#false} is VALID [2018-11-23 12:20:46,176 INFO L273 TraceCheckUtils]: 96: Hoare triple {5698#false} assume 0 == ~cond; {5698#false} is VALID [2018-11-23 12:20:46,176 INFO L273 TraceCheckUtils]: 97: Hoare triple {5698#false} assume !false; {5698#false} is VALID [2018-11-23 12:20:46,198 INFO L134 CoverageAnalysis]: Checked inductivity of 183 backedges. 105 proven. 6 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2018-11-23 12:20:46,218 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:46,219 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 26 [2018-11-23 12:20:46,219 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 98 [2018-11-23 12:20:46,219 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:46,220 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-23 12:20:46,371 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:46,371 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-23 12:20:46,371 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-23 12:20:46,372 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=497, Unknown=0, NotChecked=0, Total=650 [2018-11-23 12:20:46,372 INFO L87 Difference]: Start difference. First operand 90 states and 99 transitions. Second operand 26 states. [2018-11-23 12:20:49,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:49,253 INFO L93 Difference]: Finished difference Result 229 states and 254 transitions. [2018-11-23 12:20:49,253 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:20:49,253 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 98 [2018-11-23 12:20:49,253 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:49,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:20:49,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 139 transitions. [2018-11-23 12:20:49,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:20:49,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 139 transitions. [2018-11-23 12:20:49,258 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 139 transitions. [2018-11-23 12:20:49,743 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:49,745 INFO L225 Difference]: With dead ends: 229 [2018-11-23 12:20:49,746 INFO L226 Difference]: Without dead ends: 97 [2018-11-23 12:20:49,747 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 87 SyntacticMatches, 1 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 222 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=236, Invalid=756, Unknown=0, NotChecked=0, Total=992 [2018-11-23 12:20:49,747 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2018-11-23 12:20:50,294 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 94. [2018-11-23 12:20:50,294 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:50,294 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand 94 states. [2018-11-23 12:20:50,294 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand 94 states. [2018-11-23 12:20:50,294 INFO L87 Difference]: Start difference. First operand 97 states. Second operand 94 states. [2018-11-23 12:20:50,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:50,297 INFO L93 Difference]: Finished difference Result 97 states and 106 transitions. [2018-11-23 12:20:50,297 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 106 transitions. [2018-11-23 12:20:50,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:50,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:50,298 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand 97 states. [2018-11-23 12:20:50,298 INFO L87 Difference]: Start difference. First operand 94 states. Second operand 97 states. [2018-11-23 12:20:50,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:50,300 INFO L93 Difference]: Finished difference Result 97 states and 106 transitions. [2018-11-23 12:20:50,300 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 106 transitions. [2018-11-23 12:20:50,301 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:50,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:50,301 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:50,301 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:50,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 94 states. [2018-11-23 12:20:50,303 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 103 transitions. [2018-11-23 12:20:50,304 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 103 transitions. Word has length 98 [2018-11-23 12:20:50,304 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:50,304 INFO L480 AbstractCegarLoop]: Abstraction has 94 states and 103 transitions. [2018-11-23 12:20:50,304 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-23 12:20:50,304 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 103 transitions. [2018-11-23 12:20:50,305 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2018-11-23 12:20:50,305 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:50,305 INFO L402 BasicCegarLoop]: trace histogram [7, 7, 7, 6, 6, 6, 6, 6, 5, 3, 3, 3, 3, 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] [2018-11-23 12:20:50,306 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:50,306 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:50,306 INFO L82 PathProgramCache]: Analyzing trace with hash 1133282244, now seen corresponding path program 8 times [2018-11-23 12:20:50,306 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:50,306 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:50,307 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:50,307 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:20:50,307 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:50,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:50,839 INFO L256 TraceCheckUtils]: 0: Hoare triple {6657#true} call ULTIMATE.init(); {6657#true} is VALID [2018-11-23 12:20:50,839 INFO L273 TraceCheckUtils]: 1: Hoare triple {6657#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {6657#true} is VALID [2018-11-23 12:20:50,840 INFO L273 TraceCheckUtils]: 2: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:50,840 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6657#true} {6657#true} #115#return; {6657#true} is VALID [2018-11-23 12:20:50,840 INFO L256 TraceCheckUtils]: 4: Hoare triple {6657#true} call #t~ret15 := main(); {6657#true} is VALID [2018-11-23 12:20:50,840 INFO L273 TraceCheckUtils]: 5: Hoare triple {6657#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {6657#true} is VALID [2018-11-23 12:20:50,840 INFO L273 TraceCheckUtils]: 6: Hoare triple {6657#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {6657#true} is VALID [2018-11-23 12:20:50,841 INFO L273 TraceCheckUtils]: 7: Hoare triple {6657#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {6659#(= main_~i~0 1)} is VALID [2018-11-23 12:20:50,841 INFO L273 TraceCheckUtils]: 8: Hoare triple {6659#(= main_~i~0 1)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6659#(= main_~i~0 1)} is VALID [2018-11-23 12:20:50,842 INFO L273 TraceCheckUtils]: 9: Hoare triple {6659#(= main_~i~0 1)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {6659#(= main_~i~0 1)} is VALID [2018-11-23 12:20:50,842 INFO L273 TraceCheckUtils]: 10: Hoare triple {6659#(= main_~i~0 1)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {6659#(= main_~i~0 1)} is VALID [2018-11-23 12:20:50,843 INFO L273 TraceCheckUtils]: 11: Hoare triple {6659#(= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:50,843 INFO L273 TraceCheckUtils]: 12: Hoare triple {6660#(<= 2 main_~i~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:50,844 INFO L273 TraceCheckUtils]: 13: Hoare triple {6660#(<= 2 main_~i~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:50,844 INFO L273 TraceCheckUtils]: 14: Hoare triple {6660#(<= 2 main_~i~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:50,844 INFO L273 TraceCheckUtils]: 15: Hoare triple {6660#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6661#(<= 3 main_~i~0)} is VALID [2018-11-23 12:20:50,845 INFO L273 TraceCheckUtils]: 16: Hoare triple {6661#(<= 3 main_~i~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:50,846 INFO L273 TraceCheckUtils]: 17: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:50,846 INFO L273 TraceCheckUtils]: 18: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:50,847 INFO L273 TraceCheckUtils]: 19: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:50,847 INFO L273 TraceCheckUtils]: 20: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:50,848 INFO L273 TraceCheckUtils]: 21: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} ~i~0 := 1; {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,848 INFO L273 TraceCheckUtils]: 22: Hoare triple {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,849 INFO L273 TraceCheckUtils]: 23: Hoare triple {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,850 INFO L273 TraceCheckUtils]: 24: Hoare triple {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,851 INFO L273 TraceCheckUtils]: 25: Hoare triple {6663#(and (= main_~i~0 1) (<= 3 (div ~CELLCOUNT~0 3)))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,852 INFO L273 TraceCheckUtils]: 26: Hoare triple {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,852 INFO L273 TraceCheckUtils]: 27: Hoare triple {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,853 INFO L273 TraceCheckUtils]: 28: Hoare triple {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:50,854 INFO L273 TraceCheckUtils]: 29: Hoare triple {6664#(or (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (div ~CELLCOUNT~0 3)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))) (<= (+ main_~i~0 1) (div ~CELLCOUNT~0 3)))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {6665#(or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (+ (div ~CELLCOUNT~0 3) 1)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))))} is VALID [2018-11-23 12:20:50,855 INFO L273 TraceCheckUtils]: 30: Hoare triple {6665#(or (<= main_~i~0 (div ~CELLCOUNT~0 3)) (and (< ~CELLCOUNT~0 0) (<= main_~i~0 (+ (div ~CELLCOUNT~0 3) 1)) (not (= (* 3 (div ~CELLCOUNT~0 3)) ~CELLCOUNT~0))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:50,855 INFO L273 TraceCheckUtils]: 31: Hoare triple {6658#false} ~i~0 := 1; {6658#false} is VALID [2018-11-23 12:20:50,856 INFO L273 TraceCheckUtils]: 32: Hoare triple {6658#false} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:50,856 INFO L273 TraceCheckUtils]: 33: Hoare triple {6658#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {6658#false} is VALID [2018-11-23 12:20:50,856 INFO L273 TraceCheckUtils]: 34: Hoare triple {6658#false} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {6658#false} is VALID [2018-11-23 12:20:50,856 INFO L273 TraceCheckUtils]: 35: Hoare triple {6658#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6658#false} is VALID [2018-11-23 12:20:50,856 INFO L273 TraceCheckUtils]: 36: Hoare triple {6658#false} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:50,856 INFO L273 TraceCheckUtils]: 37: Hoare triple {6658#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {6658#false} is VALID [2018-11-23 12:20:50,857 INFO L273 TraceCheckUtils]: 38: Hoare triple {6658#false} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {6658#false} is VALID [2018-11-23 12:20:50,857 INFO L273 TraceCheckUtils]: 39: Hoare triple {6658#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6658#false} is VALID [2018-11-23 12:20:50,857 INFO L273 TraceCheckUtils]: 40: Hoare triple {6658#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:50,857 INFO L273 TraceCheckUtils]: 41: Hoare triple {6658#false} ~i~0 := 0; {6658#false} is VALID [2018-11-23 12:20:50,857 INFO L273 TraceCheckUtils]: 42: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:50,858 INFO L273 TraceCheckUtils]: 43: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,858 INFO L256 TraceCheckUtils]: 44: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6657#true} is VALID [2018-11-23 12:20:50,858 INFO L273 TraceCheckUtils]: 45: Hoare triple {6657#true} ~cond := #in~cond; {6657#true} is VALID [2018-11-23 12:20:50,858 INFO L273 TraceCheckUtils]: 46: Hoare triple {6657#true} assume !(0 == ~cond); {6657#true} is VALID [2018-11-23 12:20:50,858 INFO L273 TraceCheckUtils]: 47: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:50,859 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {6657#true} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:50,859 INFO L273 TraceCheckUtils]: 49: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,859 INFO L273 TraceCheckUtils]: 50: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:50,859 INFO L273 TraceCheckUtils]: 51: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:50,859 INFO L273 TraceCheckUtils]: 52: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,859 INFO L256 TraceCheckUtils]: 53: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6657#true} is VALID [2018-11-23 12:20:50,860 INFO L273 TraceCheckUtils]: 54: Hoare triple {6657#true} ~cond := #in~cond; {6657#true} is VALID [2018-11-23 12:20:50,860 INFO L273 TraceCheckUtils]: 55: Hoare triple {6657#true} assume !(0 == ~cond); {6657#true} is VALID [2018-11-23 12:20:50,860 INFO L273 TraceCheckUtils]: 56: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:50,860 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {6657#true} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:50,860 INFO L273 TraceCheckUtils]: 58: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,860 INFO L273 TraceCheckUtils]: 59: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:50,860 INFO L273 TraceCheckUtils]: 60: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:50,860 INFO L273 TraceCheckUtils]: 61: Hoare triple {6658#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {6658#false} is VALID [2018-11-23 12:20:50,860 INFO L256 TraceCheckUtils]: 62: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6657#true} is VALID [2018-11-23 12:20:50,861 INFO L273 TraceCheckUtils]: 63: Hoare triple {6657#true} ~cond := #in~cond; {6657#true} is VALID [2018-11-23 12:20:50,861 INFO L273 TraceCheckUtils]: 64: Hoare triple {6657#true} assume !(0 == ~cond); {6657#true} is VALID [2018-11-23 12:20:50,861 INFO L273 TraceCheckUtils]: 65: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:50,861 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {6657#true} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:50,861 INFO L273 TraceCheckUtils]: 67: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,861 INFO L273 TraceCheckUtils]: 68: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:50,861 INFO L273 TraceCheckUtils]: 69: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:50,861 INFO L273 TraceCheckUtils]: 70: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,861 INFO L256 TraceCheckUtils]: 71: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6657#true} is VALID [2018-11-23 12:20:50,862 INFO L273 TraceCheckUtils]: 72: Hoare triple {6657#true} ~cond := #in~cond; {6657#true} is VALID [2018-11-23 12:20:50,862 INFO L273 TraceCheckUtils]: 73: Hoare triple {6657#true} assume !(0 == ~cond); {6657#true} is VALID [2018-11-23 12:20:50,862 INFO L273 TraceCheckUtils]: 74: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:50,862 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6657#true} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:50,862 INFO L273 TraceCheckUtils]: 76: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,862 INFO L273 TraceCheckUtils]: 77: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:50,862 INFO L273 TraceCheckUtils]: 78: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:50,862 INFO L273 TraceCheckUtils]: 79: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,863 INFO L256 TraceCheckUtils]: 80: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6657#true} is VALID [2018-11-23 12:20:50,863 INFO L273 TraceCheckUtils]: 81: Hoare triple {6657#true} ~cond := #in~cond; {6657#true} is VALID [2018-11-23 12:20:50,863 INFO L273 TraceCheckUtils]: 82: Hoare triple {6657#true} assume !(0 == ~cond); {6657#true} is VALID [2018-11-23 12:20:50,863 INFO L273 TraceCheckUtils]: 83: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:50,863 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {6657#true} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:50,863 INFO L273 TraceCheckUtils]: 85: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,863 INFO L273 TraceCheckUtils]: 86: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:50,863 INFO L273 TraceCheckUtils]: 87: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:50,863 INFO L273 TraceCheckUtils]: 88: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,864 INFO L256 TraceCheckUtils]: 89: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6657#true} is VALID [2018-11-23 12:20:50,864 INFO L273 TraceCheckUtils]: 90: Hoare triple {6657#true} ~cond := #in~cond; {6657#true} is VALID [2018-11-23 12:20:50,864 INFO L273 TraceCheckUtils]: 91: Hoare triple {6657#true} assume !(0 == ~cond); {6657#true} is VALID [2018-11-23 12:20:50,864 INFO L273 TraceCheckUtils]: 92: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:50,864 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {6657#true} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:50,864 INFO L273 TraceCheckUtils]: 94: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:50,864 INFO L273 TraceCheckUtils]: 95: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:50,864 INFO L273 TraceCheckUtils]: 96: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:50,865 INFO L273 TraceCheckUtils]: 97: Hoare triple {6658#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {6658#false} is VALID [2018-11-23 12:20:50,865 INFO L256 TraceCheckUtils]: 98: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:50,865 INFO L273 TraceCheckUtils]: 99: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:50,865 INFO L273 TraceCheckUtils]: 100: Hoare triple {6658#false} assume 0 == ~cond; {6658#false} is VALID [2018-11-23 12:20:50,865 INFO L273 TraceCheckUtils]: 101: Hoare triple {6658#false} assume !false; {6658#false} is VALID [2018-11-23 12:20:50,872 INFO L134 CoverageAnalysis]: Checked inductivity of 192 backedges. 13 proven. 20 refuted. 0 times theorem prover too weak. 159 trivial. 0 not checked. [2018-11-23 12:20:50,872 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:50,872 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:50,882 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:20:50,918 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:20:50,918 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:50,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:50,939 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:51,124 INFO L256 TraceCheckUtils]: 0: Hoare triple {6657#true} call ULTIMATE.init(); {6657#true} is VALID [2018-11-23 12:20:51,125 INFO L273 TraceCheckUtils]: 1: Hoare triple {6657#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {6657#true} is VALID [2018-11-23 12:20:51,125 INFO L273 TraceCheckUtils]: 2: Hoare triple {6657#true} assume true; {6657#true} is VALID [2018-11-23 12:20:51,125 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6657#true} {6657#true} #115#return; {6657#true} is VALID [2018-11-23 12:20:51,125 INFO L256 TraceCheckUtils]: 4: Hoare triple {6657#true} call #t~ret15 := main(); {6657#true} is VALID [2018-11-23 12:20:51,125 INFO L273 TraceCheckUtils]: 5: Hoare triple {6657#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {6657#true} is VALID [2018-11-23 12:20:51,126 INFO L273 TraceCheckUtils]: 6: Hoare triple {6657#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {6657#true} is VALID [2018-11-23 12:20:51,126 INFO L273 TraceCheckUtils]: 7: Hoare triple {6657#true} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {6690#(<= 1 main_~i~0)} is VALID [2018-11-23 12:20:51,126 INFO L273 TraceCheckUtils]: 8: Hoare triple {6690#(<= 1 main_~i~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6690#(<= 1 main_~i~0)} is VALID [2018-11-23 12:20:51,127 INFO L273 TraceCheckUtils]: 9: Hoare triple {6690#(<= 1 main_~i~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {6690#(<= 1 main_~i~0)} is VALID [2018-11-23 12:20:51,127 INFO L273 TraceCheckUtils]: 10: Hoare triple {6690#(<= 1 main_~i~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {6690#(<= 1 main_~i~0)} is VALID [2018-11-23 12:20:51,128 INFO L273 TraceCheckUtils]: 11: Hoare triple {6690#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:51,128 INFO L273 TraceCheckUtils]: 12: Hoare triple {6660#(<= 2 main_~i~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:51,128 INFO L273 TraceCheckUtils]: 13: Hoare triple {6660#(<= 2 main_~i~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:51,128 INFO L273 TraceCheckUtils]: 14: Hoare triple {6660#(<= 2 main_~i~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {6660#(<= 2 main_~i~0)} is VALID [2018-11-23 12:20:51,129 INFO L273 TraceCheckUtils]: 15: Hoare triple {6660#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6661#(<= 3 main_~i~0)} is VALID [2018-11-23 12:20:51,130 INFO L273 TraceCheckUtils]: 16: Hoare triple {6661#(<= 3 main_~i~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:51,130 INFO L273 TraceCheckUtils]: 17: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:51,131 INFO L273 TraceCheckUtils]: 18: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:51,131 INFO L273 TraceCheckUtils]: 19: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:51,132 INFO L273 TraceCheckUtils]: 20: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6662#(<= 3 (div ~CELLCOUNT~0 3))} is VALID [2018-11-23 12:20:51,132 INFO L273 TraceCheckUtils]: 21: Hoare triple {6662#(<= 3 (div ~CELLCOUNT~0 3))} ~i~0 := 1; {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:51,133 INFO L273 TraceCheckUtils]: 22: Hoare triple {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:51,134 INFO L273 TraceCheckUtils]: 23: Hoare triple {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:51,134 INFO L273 TraceCheckUtils]: 24: Hoare triple {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:51,135 INFO L273 TraceCheckUtils]: 25: Hoare triple {6733#(and (<= 3 (div ~CELLCOUNT~0 3)) (<= main_~i~0 1))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:51,136 INFO L273 TraceCheckUtils]: 26: Hoare triple {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:51,137 INFO L273 TraceCheckUtils]: 27: Hoare triple {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:51,138 INFO L273 TraceCheckUtils]: 28: Hoare triple {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:51,138 INFO L273 TraceCheckUtils]: 29: Hoare triple {6746#(and (<= main_~i~0 2) (<= 3 (div ~CELLCOUNT~0 3)))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {6759#(and (<= main_~i~0 3) (<= 3 (div ~CELLCOUNT~0 3)))} is VALID [2018-11-23 12:20:51,139 INFO L273 TraceCheckUtils]: 30: Hoare triple {6759#(and (<= main_~i~0 3) (<= 3 (div ~CELLCOUNT~0 3)))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:51,140 INFO L273 TraceCheckUtils]: 31: Hoare triple {6658#false} ~i~0 := 1; {6658#false} is VALID [2018-11-23 12:20:51,140 INFO L273 TraceCheckUtils]: 32: Hoare triple {6658#false} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:51,140 INFO L273 TraceCheckUtils]: 33: Hoare triple {6658#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {6658#false} is VALID [2018-11-23 12:20:51,140 INFO L273 TraceCheckUtils]: 34: Hoare triple {6658#false} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {6658#false} is VALID [2018-11-23 12:20:51,140 INFO L273 TraceCheckUtils]: 35: Hoare triple {6658#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6658#false} is VALID [2018-11-23 12:20:51,141 INFO L273 TraceCheckUtils]: 36: Hoare triple {6658#false} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:51,141 INFO L273 TraceCheckUtils]: 37: Hoare triple {6658#false} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {6658#false} is VALID [2018-11-23 12:20:51,141 INFO L273 TraceCheckUtils]: 38: Hoare triple {6658#false} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {6658#false} is VALID [2018-11-23 12:20:51,141 INFO L273 TraceCheckUtils]: 39: Hoare triple {6658#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6658#false} is VALID [2018-11-23 12:20:51,142 INFO L273 TraceCheckUtils]: 40: Hoare triple {6658#false} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {6658#false} is VALID [2018-11-23 12:20:51,142 INFO L273 TraceCheckUtils]: 41: Hoare triple {6658#false} ~i~0 := 0; {6658#false} is VALID [2018-11-23 12:20:51,142 INFO L273 TraceCheckUtils]: 42: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:51,142 INFO L273 TraceCheckUtils]: 43: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,142 INFO L256 TraceCheckUtils]: 44: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:51,143 INFO L273 TraceCheckUtils]: 45: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:51,143 INFO L273 TraceCheckUtils]: 46: Hoare triple {6658#false} assume !(0 == ~cond); {6658#false} is VALID [2018-11-23 12:20:51,143 INFO L273 TraceCheckUtils]: 47: Hoare triple {6658#false} assume true; {6658#false} is VALID [2018-11-23 12:20:51,143 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {6658#false} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:51,143 INFO L273 TraceCheckUtils]: 49: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,143 INFO L273 TraceCheckUtils]: 50: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:51,144 INFO L273 TraceCheckUtils]: 51: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:51,144 INFO L273 TraceCheckUtils]: 52: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,144 INFO L256 TraceCheckUtils]: 53: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:51,144 INFO L273 TraceCheckUtils]: 54: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:51,144 INFO L273 TraceCheckUtils]: 55: Hoare triple {6658#false} assume !(0 == ~cond); {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L273 TraceCheckUtils]: 56: Hoare triple {6658#false} assume true; {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {6658#false} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L273 TraceCheckUtils]: 58: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L273 TraceCheckUtils]: 59: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L273 TraceCheckUtils]: 60: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L273 TraceCheckUtils]: 61: Hoare triple {6658#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L256 TraceCheckUtils]: 62: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:51,145 INFO L273 TraceCheckUtils]: 63: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L273 TraceCheckUtils]: 64: Hoare triple {6658#false} assume !(0 == ~cond); {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L273 TraceCheckUtils]: 65: Hoare triple {6658#false} assume true; {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {6658#false} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L273 TraceCheckUtils]: 67: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L273 TraceCheckUtils]: 68: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L273 TraceCheckUtils]: 69: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L273 TraceCheckUtils]: 70: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L256 TraceCheckUtils]: 71: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:51,146 INFO L273 TraceCheckUtils]: 72: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L273 TraceCheckUtils]: 73: Hoare triple {6658#false} assume !(0 == ~cond); {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L273 TraceCheckUtils]: 74: Hoare triple {6658#false} assume true; {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6658#false} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L273 TraceCheckUtils]: 76: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L273 TraceCheckUtils]: 77: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L273 TraceCheckUtils]: 78: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L273 TraceCheckUtils]: 79: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,147 INFO L256 TraceCheckUtils]: 80: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L273 TraceCheckUtils]: 81: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L273 TraceCheckUtils]: 82: Hoare triple {6658#false} assume !(0 == ~cond); {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L273 TraceCheckUtils]: 83: Hoare triple {6658#false} assume true; {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {6658#false} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L273 TraceCheckUtils]: 85: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L273 TraceCheckUtils]: 86: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L273 TraceCheckUtils]: 87: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L273 TraceCheckUtils]: 88: Hoare triple {6658#false} assume #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,148 INFO L256 TraceCheckUtils]: 89: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L273 TraceCheckUtils]: 90: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L273 TraceCheckUtils]: 91: Hoare triple {6658#false} assume !(0 == ~cond); {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L273 TraceCheckUtils]: 92: Hoare triple {6658#false} assume true; {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {6658#false} {6658#false} #119#return; {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L273 TraceCheckUtils]: 94: Hoare triple {6658#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L273 TraceCheckUtils]: 95: Hoare triple {6658#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L273 TraceCheckUtils]: 96: Hoare triple {6658#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L273 TraceCheckUtils]: 97: Hoare triple {6658#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {6658#false} is VALID [2018-11-23 12:20:51,149 INFO L256 TraceCheckUtils]: 98: Hoare triple {6658#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {6658#false} is VALID [2018-11-23 12:20:51,150 INFO L273 TraceCheckUtils]: 99: Hoare triple {6658#false} ~cond := #in~cond; {6658#false} is VALID [2018-11-23 12:20:51,150 INFO L273 TraceCheckUtils]: 100: Hoare triple {6658#false} assume 0 == ~cond; {6658#false} is VALID [2018-11-23 12:20:51,150 INFO L273 TraceCheckUtils]: 101: Hoare triple {6658#false} assume !false; {6658#false} is VALID [2018-11-23 12:20:51,157 INFO L134 CoverageAnalysis]: Checked inductivity of 192 backedges. 6 proven. 15 refuted. 0 times theorem prover too weak. 171 trivial. 0 not checked. [2018-11-23 12:20:51,182 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:51,182 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:20:51,182 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 102 [2018-11-23 12:20:51,189 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:51,190 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:20:51,282 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:51,282 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:20:51,283 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:20:51,283 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=109, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:20:51,283 INFO L87 Difference]: Start difference. First operand 94 states and 103 transitions. Second operand 13 states. [2018-11-23 12:20:52,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:52,897 INFO L93 Difference]: Finished difference Result 171 states and 189 transitions. [2018-11-23 12:20:52,897 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:20:52,897 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 102 [2018-11-23 12:20:52,898 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:52,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:20:52,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 110 transitions. [2018-11-23 12:20:52,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:20:52,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 110 transitions. [2018-11-23 12:20:52,904 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 110 transitions. [2018-11-23 12:20:53,298 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:53,301 INFO L225 Difference]: With dead ends: 171 [2018-11-23 12:20:53,302 INFO L226 Difference]: Without dead ends: 108 [2018-11-23 12:20:53,302 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 98 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=94, Invalid=248, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:20:53,303 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2018-11-23 12:20:54,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 102. [2018-11-23 12:20:54,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:54,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand 102 states. [2018-11-23 12:20:54,340 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand 102 states. [2018-11-23 12:20:54,340 INFO L87 Difference]: Start difference. First operand 108 states. Second operand 102 states. [2018-11-23 12:20:54,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:54,343 INFO L93 Difference]: Finished difference Result 108 states and 117 transitions. [2018-11-23 12:20:54,343 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 117 transitions. [2018-11-23 12:20:54,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:54,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:54,344 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand 108 states. [2018-11-23 12:20:54,344 INFO L87 Difference]: Start difference. First operand 102 states. Second operand 108 states. [2018-11-23 12:20:54,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:54,347 INFO L93 Difference]: Finished difference Result 108 states and 117 transitions. [2018-11-23 12:20:54,347 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 117 transitions. [2018-11-23 12:20:54,347 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:54,347 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:54,348 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:54,348 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:54,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 102 states. [2018-11-23 12:20:54,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 111 transitions. [2018-11-23 12:20:54,350 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 111 transitions. Word has length 102 [2018-11-23 12:20:54,351 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:54,351 INFO L480 AbstractCegarLoop]: Abstraction has 102 states and 111 transitions. [2018-11-23 12:20:54,351 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:20:54,351 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 111 transitions. [2018-11-23 12:20:54,352 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2018-11-23 12:20:54,352 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:54,352 INFO L402 BasicCegarLoop]: trace histogram [7, 7, 7, 6, 6, 6, 6, 6, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:20:54,353 INFO L423 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:54,353 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:54,353 INFO L82 PathProgramCache]: Analyzing trace with hash 1092595472, now seen corresponding path program 9 times [2018-11-23 12:20:54,353 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:54,353 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:54,354 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:54,354 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:54,354 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:54,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:55,731 INFO L256 TraceCheckUtils]: 0: Hoare triple {7568#true} call ULTIMATE.init(); {7568#true} is VALID [2018-11-23 12:20:55,732 INFO L273 TraceCheckUtils]: 1: Hoare triple {7568#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {7568#true} is VALID [2018-11-23 12:20:55,732 INFO L273 TraceCheckUtils]: 2: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:20:55,732 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7568#true} {7568#true} #115#return; {7568#true} is VALID [2018-11-23 12:20:55,732 INFO L256 TraceCheckUtils]: 4: Hoare triple {7568#true} call #t~ret15 := main(); {7568#true} is VALID [2018-11-23 12:20:55,733 INFO L273 TraceCheckUtils]: 5: Hoare triple {7568#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {7568#true} is VALID [2018-11-23 12:20:55,734 INFO L273 TraceCheckUtils]: 6: Hoare triple {7568#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {7570#(<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0)} is VALID [2018-11-23 12:20:55,734 INFO L273 TraceCheckUtils]: 7: Hoare triple {7570#(<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,735 INFO L273 TraceCheckUtils]: 8: Hoare triple {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,736 INFO L273 TraceCheckUtils]: 9: Hoare triple {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,737 INFO L273 TraceCheckUtils]: 10: Hoare triple {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} is VALID [2018-11-23 12:20:55,738 INFO L273 TraceCheckUtils]: 11: Hoare triple {7571#(and (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} is VALID [2018-11-23 12:20:55,739 INFO L273 TraceCheckUtils]: 12: Hoare triple {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} is VALID [2018-11-23 12:20:55,740 INFO L273 TraceCheckUtils]: 13: Hoare triple {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} is VALID [2018-11-23 12:20:55,740 INFO L273 TraceCheckUtils]: 14: Hoare triple {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} is VALID [2018-11-23 12:20:55,741 INFO L273 TraceCheckUtils]: 15: Hoare triple {7572#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7573#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,742 INFO L273 TraceCheckUtils]: 16: Hoare triple {7573#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (<= 3 main_~i~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7573#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,743 INFO L273 TraceCheckUtils]: 17: Hoare triple {7573#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) main_~CCCELVOL3~0) (<= 3 main_~i~0))} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,745 INFO L273 TraceCheckUtils]: 18: Hoare triple {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,746 INFO L273 TraceCheckUtils]: 19: Hoare triple {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,746 INFO L273 TraceCheckUtils]: 20: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,747 INFO L273 TraceCheckUtils]: 21: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} ~i~0 := 1; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,747 INFO L273 TraceCheckUtils]: 22: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,749 INFO L273 TraceCheckUtils]: 23: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,750 INFO L273 TraceCheckUtils]: 24: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,750 INFO L273 TraceCheckUtils]: 25: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,751 INFO L273 TraceCheckUtils]: 26: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,752 INFO L273 TraceCheckUtils]: 27: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,753 INFO L273 TraceCheckUtils]: 28: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,753 INFO L273 TraceCheckUtils]: 29: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,754 INFO L273 TraceCheckUtils]: 30: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,755 INFO L273 TraceCheckUtils]: 31: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,756 INFO L273 TraceCheckUtils]: 32: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,757 INFO L273 TraceCheckUtils]: 33: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,757 INFO L273 TraceCheckUtils]: 34: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,758 INFO L273 TraceCheckUtils]: 35: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} ~i~0 := 1; {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} is VALID [2018-11-23 12:20:55,759 INFO L273 TraceCheckUtils]: 36: Hoare triple {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} is VALID [2018-11-23 12:20:55,760 INFO L273 TraceCheckUtils]: 37: Hoare triple {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} is VALID [2018-11-23 12:20:55,761 INFO L273 TraceCheckUtils]: 38: Hoare triple {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} is VALID [2018-11-23 12:20:55,763 INFO L273 TraceCheckUtils]: 39: Hoare triple {7576#(and (= main_~i~0 1) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12))))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} is VALID [2018-11-23 12:20:55,764 INFO L273 TraceCheckUtils]: 40: Hoare triple {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} is VALID [2018-11-23 12:20:55,765 INFO L273 TraceCheckUtils]: 41: Hoare triple {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} is VALID [2018-11-23 12:20:55,766 INFO L273 TraceCheckUtils]: 42: Hoare triple {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} is VALID [2018-11-23 12:20:55,767 INFO L273 TraceCheckUtils]: 43: Hoare triple {7577#(and (= (* 12 main_~i~0) 24) (<= (+ main_~MINVAL~0 5) (select (store (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4)) 0) (+ |main_~#volArray~0.offset| (+ (* 12 (+ main_~i~0 1)) (- 12))))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,769 INFO L273 TraceCheckUtils]: 44: Hoare triple {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,770 INFO L273 TraceCheckUtils]: 45: Hoare triple {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,771 INFO L273 TraceCheckUtils]: 46: Hoare triple {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:55,772 INFO L273 TraceCheckUtils]: 47: Hoare triple {7574#(and (<= main_~i~0 3) (<= (+ main_~MINVAL~0 5) (select (store (store (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 8)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 4)))) (+ (* 12 main_~i~0) |main_~#volArray~0.offset| (- 12)))) (<= 3 main_~i~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,773 INFO L273 TraceCheckUtils]: 48: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} is VALID [2018-11-23 12:20:55,774 INFO L273 TraceCheckUtils]: 49: Hoare triple {7575#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (+ (* 12 3) (- 12)))))} ~i~0 := 0; {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,775 INFO L273 TraceCheckUtils]: 50: Hoare triple {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,775 INFO L273 TraceCheckUtils]: 51: Hoare triple {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} assume #t~short14; {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,776 INFO L256 TraceCheckUtils]: 52: Hoare triple {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7568#true} is VALID [2018-11-23 12:20:55,776 INFO L273 TraceCheckUtils]: 53: Hoare triple {7568#true} ~cond := #in~cond; {7568#true} is VALID [2018-11-23 12:20:55,776 INFO L273 TraceCheckUtils]: 54: Hoare triple {7568#true} assume !(0 == ~cond); {7568#true} is VALID [2018-11-23 12:20:55,776 INFO L273 TraceCheckUtils]: 55: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:20:55,777 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {7568#true} {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} #119#return; {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,778 INFO L273 TraceCheckUtils]: 57: Hoare triple {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:55,779 INFO L273 TraceCheckUtils]: 58: Hoare triple {7578#(and (<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 9) (+ |main_~#volArray~0.offset| (- 12))))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,779 INFO L273 TraceCheckUtils]: 59: Hoare triple {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,780 INFO L273 TraceCheckUtils]: 60: Hoare triple {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} assume #t~short14; {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,780 INFO L256 TraceCheckUtils]: 61: Hoare triple {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7568#true} is VALID [2018-11-23 12:20:55,780 INFO L273 TraceCheckUtils]: 62: Hoare triple {7568#true} ~cond := #in~cond; {7568#true} is VALID [2018-11-23 12:20:55,780 INFO L273 TraceCheckUtils]: 63: Hoare triple {7568#true} assume !(0 == ~cond); {7568#true} is VALID [2018-11-23 12:20:55,781 INFO L273 TraceCheckUtils]: 64: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:20:55,781 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7568#true} {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} #119#return; {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,782 INFO L273 TraceCheckUtils]: 66: Hoare triple {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,783 INFO L273 TraceCheckUtils]: 67: Hoare triple {7579#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 8)) (+ |main_~#volArray~0.offset| (- 12)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,784 INFO L273 TraceCheckUtils]: 68: Hoare triple {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,784 INFO L273 TraceCheckUtils]: 69: Hoare triple {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,784 INFO L256 TraceCheckUtils]: 70: Hoare triple {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7568#true} is VALID [2018-11-23 12:20:55,784 INFO L273 TraceCheckUtils]: 71: Hoare triple {7568#true} ~cond := #in~cond; {7568#true} is VALID [2018-11-23 12:20:55,784 INFO L273 TraceCheckUtils]: 72: Hoare triple {7568#true} assume !(0 == ~cond); {7568#true} is VALID [2018-11-23 12:20:55,784 INFO L273 TraceCheckUtils]: 73: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:20:55,785 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {7568#true} {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} #119#return; {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,785 INFO L273 TraceCheckUtils]: 75: Hoare triple {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,786 INFO L273 TraceCheckUtils]: 76: Hoare triple {7580#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 7)) (+ |main_~#volArray~0.offset| (- 12)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,787 INFO L273 TraceCheckUtils]: 77: Hoare triple {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,787 INFO L273 TraceCheckUtils]: 78: Hoare triple {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} assume #t~short14; {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,787 INFO L256 TraceCheckUtils]: 79: Hoare triple {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7568#true} is VALID [2018-11-23 12:20:55,788 INFO L273 TraceCheckUtils]: 80: Hoare triple {7568#true} ~cond := #in~cond; {7568#true} is VALID [2018-11-23 12:20:55,788 INFO L273 TraceCheckUtils]: 81: Hoare triple {7568#true} assume !(0 == ~cond); {7568#true} is VALID [2018-11-23 12:20:55,788 INFO L273 TraceCheckUtils]: 82: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:20:55,789 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {7568#true} {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} #119#return; {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,789 INFO L273 TraceCheckUtils]: 84: Hoare triple {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,790 INFO L273 TraceCheckUtils]: 85: Hoare triple {7581#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 6)) (+ |main_~#volArray~0.offset| (- 12)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,790 INFO L273 TraceCheckUtils]: 86: Hoare triple {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,791 INFO L273 TraceCheckUtils]: 87: Hoare triple {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} assume #t~short14; {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,791 INFO L256 TraceCheckUtils]: 88: Hoare triple {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7568#true} is VALID [2018-11-23 12:20:55,791 INFO L273 TraceCheckUtils]: 89: Hoare triple {7568#true} ~cond := #in~cond; {7568#true} is VALID [2018-11-23 12:20:55,791 INFO L273 TraceCheckUtils]: 90: Hoare triple {7568#true} assume !(0 == ~cond); {7568#true} is VALID [2018-11-23 12:20:55,791 INFO L273 TraceCheckUtils]: 91: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:20:55,792 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {7568#true} {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} #119#return; {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,792 INFO L273 TraceCheckUtils]: 93: Hoare triple {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,793 INFO L273 TraceCheckUtils]: 94: Hoare triple {7582#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 5)) (+ |main_~#volArray~0.offset| (- 12)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,793 INFO L273 TraceCheckUtils]: 95: Hoare triple {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,794 INFO L273 TraceCheckUtils]: 96: Hoare triple {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} assume #t~short14; {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,794 INFO L256 TraceCheckUtils]: 97: Hoare triple {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7568#true} is VALID [2018-11-23 12:20:55,794 INFO L273 TraceCheckUtils]: 98: Hoare triple {7568#true} ~cond := #in~cond; {7568#true} is VALID [2018-11-23 12:20:55,795 INFO L273 TraceCheckUtils]: 99: Hoare triple {7568#true} assume !(0 == ~cond); {7568#true} is VALID [2018-11-23 12:20:55,795 INFO L273 TraceCheckUtils]: 100: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:20:55,796 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {7568#true} {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} #119#return; {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,796 INFO L273 TraceCheckUtils]: 102: Hoare triple {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} is VALID [2018-11-23 12:20:55,797 INFO L273 TraceCheckUtils]: 103: Hoare triple {7583#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ (* 4 (+ main_~i~0 4)) (+ |main_~#volArray~0.offset| (- 12)))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7584#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:20:55,797 INFO L273 TraceCheckUtils]: 104: Hoare triple {7584#(<= (+ main_~MINVAL~0 5) (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7585#|main_#t~short14|} is VALID [2018-11-23 12:20:55,798 INFO L273 TraceCheckUtils]: 105: Hoare triple {7585#|main_#t~short14|} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {7569#false} is VALID [2018-11-23 12:20:55,798 INFO L256 TraceCheckUtils]: 106: Hoare triple {7569#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7569#false} is VALID [2018-11-23 12:20:55,798 INFO L273 TraceCheckUtils]: 107: Hoare triple {7569#false} ~cond := #in~cond; {7569#false} is VALID [2018-11-23 12:20:55,798 INFO L273 TraceCheckUtils]: 108: Hoare triple {7569#false} assume 0 == ~cond; {7569#false} is VALID [2018-11-23 12:20:55,798 INFO L273 TraceCheckUtils]: 109: Hoare triple {7569#false} assume !false; {7569#false} is VALID [2018-11-23 12:20:55,831 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 18 proven. 117 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2018-11-23 12:20:55,831 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:55,831 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:55,841 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:20:55,954 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-23 12:20:55,954 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:55,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:55,978 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:56,129 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:56,133 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:56,135 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,138 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,145 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,146 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:23, output treesize:19 [2018-11-23 12:20:56,187 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:56,188 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 72 treesize of output 109 [2018-11-23 12:20:56,210 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,211 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,212 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,221 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:56,226 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,230 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:56,233 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,240 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,243 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,250 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,250 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:78, output treesize:19 [2018-11-23 12:20:56,298 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:56,306 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,307 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:56,312 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,359 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,369 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,369 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:32, output treesize:28 [2018-11-23 12:20:56,421 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:56,422 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 81 treesize of output 116 [2018-11-23 12:20:56,458 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,461 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,462 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,463 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,464 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,465 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,477 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:56,560 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,582 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,606 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:20:56,699 INFO L303 Elim1Store]: Index analysis took 174 ms [2018-11-23 12:20:56,700 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:56,723 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,842 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,848 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:56,858 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:56,859 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:87, output treesize:28 [2018-11-23 12:21:08,185 INFO L256 TraceCheckUtils]: 0: Hoare triple {7568#true} call ULTIMATE.init(); {7568#true} is VALID [2018-11-23 12:21:08,186 INFO L273 TraceCheckUtils]: 1: Hoare triple {7568#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~CELLCOUNT~0 := 0; {7568#true} is VALID [2018-11-23 12:21:08,186 INFO L273 TraceCheckUtils]: 2: Hoare triple {7568#true} assume true; {7568#true} is VALID [2018-11-23 12:21:08,186 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7568#true} {7568#true} #115#return; {7568#true} is VALID [2018-11-23 12:21:08,186 INFO L256 TraceCheckUtils]: 4: Hoare triple {7568#true} call #t~ret15 := main(); {7568#true} is VALID [2018-11-23 12:21:08,186 INFO L273 TraceCheckUtils]: 5: Hoare triple {7568#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~CELLCOUNT~0 := #t~nondet1;havoc #t~nondet1; {7568#true} is VALID [2018-11-23 12:21:08,187 INFO L273 TraceCheckUtils]: 6: Hoare triple {7568#true} assume ~CELLCOUNT~0 > 1;~MINVAL~0 := 2;havoc ~i~0;call ~#volArray~0.base, ~#volArray~0.offset := #Ultimate.alloc(4 * ~CELLCOUNT~0);~CCCELVOL3~0 := 7;~CCCELVOL2~0 := 3;~CCCELVOL1~0 := 1; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,188 INFO L273 TraceCheckUtils]: 7: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !(0 != (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3));assume 0 != (if 0 == (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then ~CELLCOUNT~0 % 3 - 3 else ~CELLCOUNT~0 % 3) then 1 else 0);~i~0 := 1; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,188 INFO L273 TraceCheckUtils]: 8: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,189 INFO L273 TraceCheckUtils]: 9: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,189 INFO L273 TraceCheckUtils]: 10: Hoare triple {7607#(<= 2 main_~MINVAL~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,190 INFO L273 TraceCheckUtils]: 11: Hoare triple {7607#(<= 2 main_~MINVAL~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,190 INFO L273 TraceCheckUtils]: 12: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,191 INFO L273 TraceCheckUtils]: 13: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,192 INFO L273 TraceCheckUtils]: 14: Hoare triple {7607#(<= 2 main_~MINVAL~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,192 INFO L273 TraceCheckUtils]: 15: Hoare triple {7607#(<= 2 main_~MINVAL~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,193 INFO L273 TraceCheckUtils]: 16: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,193 INFO L273 TraceCheckUtils]: 17: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL3~0 >= ~MINVAL~0;call write~int(~CCCELVOL3~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,193 INFO L273 TraceCheckUtils]: 18: Hoare triple {7607#(<= 2 main_~MINVAL~0)} call #t~mem3 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem3, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem3;call #t~mem4 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem4, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem4; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,194 INFO L273 TraceCheckUtils]: 19: Hoare triple {7607#(<= 2 main_~MINVAL~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,194 INFO L273 TraceCheckUtils]: 20: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,195 INFO L273 TraceCheckUtils]: 21: Hoare triple {7607#(<= 2 main_~MINVAL~0)} ~i~0 := 1; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,195 INFO L273 TraceCheckUtils]: 22: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,196 INFO L273 TraceCheckUtils]: 23: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,196 INFO L273 TraceCheckUtils]: 24: Hoare triple {7607#(<= 2 main_~MINVAL~0)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,197 INFO L273 TraceCheckUtils]: 25: Hoare triple {7607#(<= 2 main_~MINVAL~0)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,197 INFO L273 TraceCheckUtils]: 26: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,198 INFO L273 TraceCheckUtils]: 27: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,198 INFO L273 TraceCheckUtils]: 28: Hoare triple {7607#(<= 2 main_~MINVAL~0)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,199 INFO L273 TraceCheckUtils]: 29: Hoare triple {7607#(<= 2 main_~MINVAL~0)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,199 INFO L273 TraceCheckUtils]: 30: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,200 INFO L273 TraceCheckUtils]: 31: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume ~CCCELVOL2~0 >= ~MINVAL~0;call write~int(~CCCELVOL2~0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,200 INFO L273 TraceCheckUtils]: 32: Hoare triple {7607#(<= 2 main_~MINVAL~0)} call #t~mem6 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem6, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem6;call #t~mem7 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);call write~int(#t~mem7, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4);havoc #t~mem7; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,201 INFO L273 TraceCheckUtils]: 33: Hoare triple {7607#(<= 2 main_~MINVAL~0)} #t~post5 := ~i~0;~i~0 := 1 + #t~post5;havoc #t~post5; {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,201 INFO L273 TraceCheckUtils]: 34: Hoare triple {7607#(<= 2 main_~MINVAL~0)} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7607#(<= 2 main_~MINVAL~0)} is VALID [2018-11-23 12:21:08,202 INFO L273 TraceCheckUtils]: 35: Hoare triple {7607#(<= 2 main_~MINVAL~0)} ~i~0 := 1; {7695#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} is VALID [2018-11-23 12:21:08,203 INFO L273 TraceCheckUtils]: 36: Hoare triple {7695#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7695#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} is VALID [2018-11-23 12:21:08,204 INFO L273 TraceCheckUtils]: 37: Hoare triple {7695#(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 * (3 * ~i~0 - 1), 4); {7695#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} is VALID [2018-11-23 12:21:08,204 INFO L273 TraceCheckUtils]: 38: Hoare triple {7695#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {7695#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} is VALID [2018-11-23 12:21:08,205 INFO L273 TraceCheckUtils]: 39: Hoare triple {7695#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7708#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:21:08,206 INFO L273 TraceCheckUtils]: 40: Hoare triple {7708#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7708#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:21:08,206 INFO L273 TraceCheckUtils]: 41: Hoare triple {7708#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {7715#(and (= main_~i~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:21:08,207 INFO L273 TraceCheckUtils]: 42: Hoare triple {7715#(and (= main_~i~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {7715#(and (= main_~i~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0))} is VALID [2018-11-23 12:21:08,208 INFO L273 TraceCheckUtils]: 43: Hoare triple {7715#(and (= main_~i~0 2) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7722#(and (<= 2 main_~MINVAL~0) (<= 3 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,209 INFO L273 TraceCheckUtils]: 44: Hoare triple {7722#(and (<= 2 main_~MINVAL~0) (<= 3 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume !!(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7722#(and (<= 2 main_~MINVAL~0) (<= 3 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,210 INFO L273 TraceCheckUtils]: 45: Hoare triple {7722#(and (<= 2 main_~MINVAL~0) (<= 3 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume !(~CCCELVOL1~0 >= ~MINVAL~0);call write~int(0, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 1), 4); {7729#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (<= 3 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,213 INFO L273 TraceCheckUtils]: 46: Hoare triple {7729#(and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 2 main_~MINVAL~0) (<= 3 main_~i~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} call #t~mem9 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);call write~int(#t~mem9, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 2), 4);havoc #t~mem9;call #t~mem10 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);call write~int(#t~mem10, ~#volArray~0.base, ~#volArray~0.offset + 4 * (3 * ~i~0 - 3), 4);havoc #t~mem10; {7733#(and (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 3 main_~i~0))) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,214 INFO L273 TraceCheckUtils]: 47: Hoare triple {7733#(and (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 3 main_~i~0))) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7733#(and (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 3 main_~i~0))) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,215 INFO L273 TraceCheckUtils]: 48: Hoare triple {7733#(and (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 3 main_~i~0))) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume !(~i~0 <= (if ~CELLCOUNT~0 < 0 && 0 != ~CELLCOUNT~0 % 3 then 1 + ~CELLCOUNT~0 / 3 else ~CELLCOUNT~0 / 3)); {7733#(and (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 3 main_~i~0))) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,216 INFO L273 TraceCheckUtils]: 49: Hoare triple {7733#(and (exists ((main_~i~0 Int)) (and (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 main_~i~0) (- 4))) 0) (<= 3 main_~i~0))) (<= 2 main_~MINVAL~0) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} ~i~0 := 0; {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} is VALID [2018-11-23 12:21:08,216 INFO L273 TraceCheckUtils]: 50: Hoare triple {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} is VALID [2018-11-23 12:21:08,217 INFO L273 TraceCheckUtils]: 51: Hoare triple {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} assume #t~short14; {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} is VALID [2018-11-23 12:21:08,219 INFO L256 TraceCheckUtils]: 52: Hoare triple {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,220 INFO L273 TraceCheckUtils]: 53: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} ~cond := #in~cond; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,221 INFO L273 TraceCheckUtils]: 54: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume !(0 == ~cond); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,221 INFO L273 TraceCheckUtils]: 55: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume true; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,222 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} #119#return; {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} is VALID [2018-11-23 12:21:08,223 INFO L273 TraceCheckUtils]: 57: Hoare triple {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} is VALID [2018-11-23 12:21:08,224 INFO L273 TraceCheckUtils]: 58: Hoare triple {7743#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 0))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,225 INFO L273 TraceCheckUtils]: 59: Hoare triple {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,226 INFO L273 TraceCheckUtils]: 60: Hoare triple {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume #t~short14; {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,228 INFO L256 TraceCheckUtils]: 61: Hoare triple {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,229 INFO L273 TraceCheckUtils]: 62: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} ~cond := #in~cond; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,230 INFO L273 TraceCheckUtils]: 63: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume !(0 == ~cond); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,230 INFO L273 TraceCheckUtils]: 64: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume true; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,231 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} #119#return; {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,232 INFO L273 TraceCheckUtils]: 66: Hoare triple {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,233 INFO L273 TraceCheckUtils]: 67: Hoare triple {7772#(and (<= 2 main_~MINVAL~0) (= main_~i~0 1) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,234 INFO L273 TraceCheckUtils]: 68: Hoare triple {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,235 INFO L273 TraceCheckUtils]: 69: Hoare triple {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,237 INFO L256 TraceCheckUtils]: 70: Hoare triple {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,238 INFO L273 TraceCheckUtils]: 71: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} ~cond := #in~cond; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,239 INFO L273 TraceCheckUtils]: 72: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume !(0 == ~cond); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,239 INFO L273 TraceCheckUtils]: 73: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume true; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,240 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} #119#return; {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,240 INFO L273 TraceCheckUtils]: 75: Hoare triple {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,241 INFO L273 TraceCheckUtils]: 76: Hoare triple {7800#(and (= main_~i~0 2) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,242 INFO L273 TraceCheckUtils]: 77: Hoare triple {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,243 INFO L273 TraceCheckUtils]: 78: Hoare triple {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} assume #t~short14; {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,245 INFO L256 TraceCheckUtils]: 79: Hoare triple {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,246 INFO L273 TraceCheckUtils]: 80: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} ~cond := #in~cond; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,246 INFO L273 TraceCheckUtils]: 81: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume !(0 == ~cond); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,247 INFO L273 TraceCheckUtils]: 82: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume true; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,248 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} #119#return; {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,249 INFO L273 TraceCheckUtils]: 84: Hoare triple {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} is VALID [2018-11-23 12:21:08,250 INFO L273 TraceCheckUtils]: 85: Hoare triple {7828#(and (= main_~i~0 3) (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} is VALID [2018-11-23 12:21:08,251 INFO L273 TraceCheckUtils]: 86: Hoare triple {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} is VALID [2018-11-23 12:21:08,252 INFO L273 TraceCheckUtils]: 87: Hoare triple {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} assume #t~short14; {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} is VALID [2018-11-23 12:21:08,254 INFO L256 TraceCheckUtils]: 88: Hoare triple {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,255 INFO L273 TraceCheckUtils]: 89: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} ~cond := #in~cond; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,255 INFO L273 TraceCheckUtils]: 90: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume !(0 == ~cond); {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,256 INFO L273 TraceCheckUtils]: 91: Hoare triple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} assume true; {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} is VALID [2018-11-23 12:21:08,257 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {7753#(exists ((v_prenex_14 Int) (|v_main_~#volArray~0.base_BEFORE_CALL_15| Int) (|v_main_~#volArray~0.offset_BEFORE_CALL_15| Int)) (and (= (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ (* 12 v_prenex_14) |v_main_~#volArray~0.offset_BEFORE_CALL_15| (- 4))) 0) (<= 3 v_prenex_14) (= 0 (select (select |#memory_int| |v_main_~#volArray~0.base_BEFORE_CALL_15|) (+ |v_main_~#volArray~0.offset_BEFORE_CALL_15| 20)))))} {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} #119#return; {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} is VALID [2018-11-23 12:21:08,258 INFO L273 TraceCheckUtils]: 93: Hoare triple {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} is VALID [2018-11-23 12:21:08,259 INFO L273 TraceCheckUtils]: 94: Hoare triple {7856#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 4))} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7884#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 5))} is VALID [2018-11-23 12:21:08,260 INFO L273 TraceCheckUtils]: 95: Hoare triple {7884#(and (<= 2 main_~MINVAL~0) (exists ((v_prenex_14 Int)) (and (<= 3 v_prenex_14) (= (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| (* 12 v_prenex_14) (- 4))) 0))) (= 0 (select (select |#memory_int| |main_~#volArray~0.base|) (+ |main_~#volArray~0.offset| 20))) (= main_~i~0 5))} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7888#(not |main_#t~short14|)} is VALID [2018-11-23 12:21:08,261 INFO L273 TraceCheckUtils]: 96: Hoare triple {7888#(not |main_#t~short14|)} assume #t~short14; {7569#false} is VALID [2018-11-23 12:21:08,261 INFO L256 TraceCheckUtils]: 97: Hoare triple {7569#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7569#false} is VALID [2018-11-23 12:21:08,261 INFO L273 TraceCheckUtils]: 98: Hoare triple {7569#false} ~cond := #in~cond; {7569#false} is VALID [2018-11-23 12:21:08,261 INFO L273 TraceCheckUtils]: 99: Hoare triple {7569#false} assume !(0 == ~cond); {7569#false} is VALID [2018-11-23 12:21:08,261 INFO L273 TraceCheckUtils]: 100: Hoare triple {7569#false} assume true; {7569#false} is VALID [2018-11-23 12:21:08,262 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {7569#false} {7569#false} #119#return; {7569#false} is VALID [2018-11-23 12:21:08,262 INFO L273 TraceCheckUtils]: 102: Hoare triple {7569#false} havoc #t~mem12;havoc #t~mem13;havoc #t~short14; {7569#false} is VALID [2018-11-23 12:21:08,262 INFO L273 TraceCheckUtils]: 103: Hoare triple {7569#false} #t~post11 := ~i~0;~i~0 := 1 + #t~post11;havoc #t~post11; {7569#false} is VALID [2018-11-23 12:21:08,262 INFO L273 TraceCheckUtils]: 104: Hoare triple {7569#false} assume !!(~i~0 < ~CELLCOUNT~0);call #t~mem12 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := #t~mem12 >= ~MINVAL~0; {7569#false} is VALID [2018-11-23 12:21:08,262 INFO L273 TraceCheckUtils]: 105: Hoare triple {7569#false} assume !#t~short14;call #t~mem13 := read~int(~#volArray~0.base, ~#volArray~0.offset + 4 * ~i~0, 4);#t~short14 := 0 == #t~mem13; {7569#false} is VALID [2018-11-23 12:21:08,263 INFO L256 TraceCheckUtils]: 106: Hoare triple {7569#false} call __VERIFIER_assert((if #t~short14 then 1 else 0)); {7569#false} is VALID [2018-11-23 12:21:08,263 INFO L273 TraceCheckUtils]: 107: Hoare triple {7569#false} ~cond := #in~cond; {7569#false} is VALID [2018-11-23 12:21:08,263 INFO L273 TraceCheckUtils]: 108: Hoare triple {7569#false} assume 0 == ~cond; {7569#false} is VALID [2018-11-23 12:21:08,263 INFO L273 TraceCheckUtils]: 109: Hoare triple {7569#false} assume !false; {7569#false} is VALID [2018-11-23 12:21:08,303 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 62 proven. 75 refuted. 0 times theorem prover too weak. 73 trivial. 0 not checked. [2018-11-23 12:21:08,322 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:21:08,322 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 17] total 33 [2018-11-23 12:21:08,323 INFO L78 Accepts]: Start accepts. Automaton has 33 states. Word has length 110 [2018-11-23 12:21:08,323 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:21:08,323 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 33 states. [2018-11-23 12:21:08,568 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:21:08,568 INFO L459 AbstractCegarLoop]: Interpolant automaton has 33 states [2018-11-23 12:21:08,569 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2018-11-23 12:21:08,569 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=108, Invalid=947, Unknown=1, NotChecked=0, Total=1056 [2018-11-23 12:21:08,570 INFO L87 Difference]: Start difference. First operand 102 states and 111 transitions. Second operand 33 states. [2018-11-23 12:21:22,365 WARN L180 SmtUtils]: Spent 181.00 ms on a formula simplification that was a NOOP. DAG size: 40 [2018-11-23 12:21:24,503 WARN L180 SmtUtils]: Spent 760.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 44 [2018-11-23 12:21:27,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:21:27,942 INFO L93 Difference]: Finished difference Result 161 states and 179 transitions. [2018-11-23 12:21:27,942 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 39 states. [2018-11-23 12:21:27,942 INFO L78 Accepts]: Start accepts. Automaton has 33 states. Word has length 110 [2018-11-23 12:21:27,943 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:21:27,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-23 12:21:27,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 165 transitions. [2018-11-23 12:21:27,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-23 12:21:27,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 165 transitions. [2018-11-23 12:21:27,948 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 39 states and 165 transitions. [2018-11-23 12:21:32,727 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 163 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2018-11-23 12:21:32,731 INFO L225 Difference]: With dead ends: 161 [2018-11-23 12:21:32,731 INFO L226 Difference]: Without dead ends: 145 [2018-11-23 12:21:32,733 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 183 GetRequests, 89 SyntacticMatches, 27 SemanticMatches, 67 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1315 ImplicationChecksByTransitivity, 14.8s TimeCoverageRelationStatistics Valid=580, Invalid=4111, Unknown=1, NotChecked=0, Total=4692 [2018-11-23 12:21:32,733 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 145 states. [2018-11-23 12:21:33,333 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 145 to 106. [2018-11-23 12:21:33,333 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:21:33,334 INFO L82 GeneralOperation]: Start isEquivalent. First operand 145 states. Second operand 106 states. [2018-11-23 12:21:33,334 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand 106 states. [2018-11-23 12:21:33,334 INFO L87 Difference]: Start difference. First operand 145 states. Second operand 106 states. [2018-11-23 12:21:33,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:21:33,339 INFO L93 Difference]: Finished difference Result 145 states and 160 transitions. [2018-11-23 12:21:33,339 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 160 transitions. [2018-11-23 12:21:33,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:21:33,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:21:33,340 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand 145 states. [2018-11-23 12:21:33,340 INFO L87 Difference]: Start difference. First operand 106 states. Second operand 145 states. [2018-11-23 12:21:33,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:21:33,343 INFO L93 Difference]: Finished difference Result 145 states and 160 transitions. [2018-11-23 12:21:33,343 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 160 transitions. [2018-11-23 12:21:33,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:21:33,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:21:33,344 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:21:33,344 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:21:33,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 106 states. [2018-11-23 12:21:33,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 114 transitions. [2018-11-23 12:21:33,347 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 114 transitions. Word has length 110 [2018-11-23 12:21:33,347 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:21:33,347 INFO L480 AbstractCegarLoop]: Abstraction has 106 states and 114 transitions. [2018-11-23 12:21:33,347 INFO L481 AbstractCegarLoop]: Interpolant automaton has 33 states. [2018-11-23 12:21:33,347 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 114 transitions. [2018-11-23 12:21:33,348 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 120 [2018-11-23 12:21:33,348 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:21:33,349 INFO L402 BasicCegarLoop]: trace histogram [8, 8, 8, 7, 7, 7, 7, 7, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:21:33,349 INFO L423 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:21:33,349 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:21:33,349 INFO L82 PathProgramCache]: Analyzing trace with hash 745155717, now seen corresponding path program 10 times [2018-11-23 12:21:33,349 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:21:33,350 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:21:33,350 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:21:33,350 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:21:33,350 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:21:33,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat