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/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default-Const.epf -i ../../../trunk/examples/svcomp/array-crafted/mapavg3_true-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-370d6ab [2018-11-14 18:55:49,647 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-14 18:55:49,651 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-14 18:55:49,666 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-14 18:55:49,667 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-14 18:55:49,668 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-14 18:55:49,669 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-14 18:55:49,671 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-14 18:55:49,672 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-14 18:55:49,673 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-14 18:55:49,674 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-14 18:55:49,674 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-14 18:55:49,675 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-14 18:55:49,676 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-14 18:55:49,677 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-14 18:55:49,678 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-14 18:55:49,679 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-14 18:55:49,681 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-14 18:55:49,685 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-14 18:55:49,687 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-14 18:55:49,688 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-14 18:55:49,693 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-14 18:55:49,697 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-14 18:55:49,697 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-14 18:55:49,697 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-14 18:55:49,698 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-14 18:55:49,701 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-14 18:55:49,702 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-14 18:55:49,704 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-14 18:55:49,705 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-14 18:55:49,705 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-14 18:55:49,706 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-14 18:55:49,706 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-14 18:55:49,707 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-14 18:55:49,707 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-14 18:55:49,708 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-14 18:55:49,708 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default-Const.epf [2018-11-14 18:55:49,726 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-14 18:55:49,727 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-14 18:55:49,727 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-14 18:55:49,727 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-11-14 18:55:49,728 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-14 18:55:49,728 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-14 18:55:49,728 INFO L133 SettingsManager]: * Use SBE=true [2018-11-14 18:55:49,730 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-14 18:55:49,730 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-14 18:55:49,730 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-14 18:55:49,730 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-14 18:55:49,731 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-14 18:55:49,731 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-14 18:55:49,731 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-14 18:55:49,731 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-14 18:55:49,731 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-14 18:55:49,732 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-14 18:55:49,732 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-14 18:55:49,732 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-14 18:55:49,732 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-14 18:55:49,732 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-14 18:55:49,733 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-14 18:55:49,734 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-14 18:55:49,734 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-14 18:55:49,734 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-14 18:55:49,735 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-14 18:55:49,735 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-14 18:55:49,735 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-14 18:55:49,735 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-14 18:55:49,735 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-14 18:55:49,736 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-14 18:55:49,804 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-14 18:55:49,820 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-14 18:55:49,825 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-14 18:55:49,826 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-14 18:55:49,827 INFO L276 PluginConnector]: CDTParser initialized [2018-11-14 18:55:49,828 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-crafted/mapavg3_true-unreach-call.i [2018-11-14 18:55:49,898 INFO L218 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bd839eeae/cb9a09d2f15347298937003d8cdae159/FLAG5c8d2d3f0 [2018-11-14 18:55:50,328 INFO L298 CDTParser]: Found 1 translation units. [2018-11-14 18:55:50,328 INFO L158 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-crafted/mapavg3_true-unreach-call.i [2018-11-14 18:55:50,336 INFO L346 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bd839eeae/cb9a09d2f15347298937003d8cdae159/FLAG5c8d2d3f0 [2018-11-14 18:55:50,352 INFO L354 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bd839eeae/cb9a09d2f15347298937003d8cdae159 [2018-11-14 18:55:50,363 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-14 18:55:50,365 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2018-11-14 18:55:50,366 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-14 18:55:50,366 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-14 18:55:50,370 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-14 18:55:50,371 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,375 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@337159d2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50, skipping insertion in model container [2018-11-14 18:55:50,375 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,386 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-14 18:55:50,409 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-14 18:55:50,671 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 18:55:50,687 INFO L191 MainTranslator]: Completed pre-run [2018-11-14 18:55:50,715 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 18:55:50,737 INFO L195 MainTranslator]: Completed translation [2018-11-14 18:55:50,737 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50 WrapperNode [2018-11-14 18:55:50,737 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-14 18:55:50,738 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-14 18:55:50,738 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-14 18:55:50,739 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-14 18:55:50,752 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,753 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,761 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,761 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,775 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,781 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,783 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (1/1) ... [2018-11-14 18:55:50,786 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-14 18:55:50,790 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-14 18:55:50,790 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-14 18:55:50,790 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-14 18:55:50,791 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (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-14 18:55:50,935 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-14 18:55:50,935 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-14 18:55:50,935 INFO L138 BoogieDeclarations]: Found implementation of procedure mapavg [2018-11-14 18:55:50,936 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-14 18:55:50,936 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2018-11-14 18:55:50,936 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-11-14 18:55:50,936 INFO L130 BoogieDeclarations]: Found specification of procedure mapavg [2018-11-14 18:55:50,936 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-14 18:55:50,936 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-14 18:55:50,937 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-14 18:55:50,937 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-14 18:55:50,937 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-14 18:55:50,937 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-14 18:55:50,937 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-14 18:55:50,937 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-11-14 18:55:51,663 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-14 18:55:51,663 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 06:55:51 BoogieIcfgContainer [2018-11-14 18:55:51,664 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-14 18:55:51,665 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-14 18:55:51,665 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-14 18:55:51,668 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-14 18:55:51,669 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.11 06:55:50" (1/3) ... [2018-11-14 18:55:51,670 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42fde076 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 06:55:51, skipping insertion in model container [2018-11-14 18:55:51,670 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 06:55:50" (2/3) ... [2018-11-14 18:55:51,671 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42fde076 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 06:55:51, skipping insertion in model container [2018-11-14 18:55:51,671 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 06:55:51" (3/3) ... [2018-11-14 18:55:51,673 INFO L112 eAbstractionObserver]: Analyzing ICFG mapavg3_true-unreach-call.i [2018-11-14 18:55:51,683 INFO L136 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-14 18:55:51,691 INFO L148 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-14 18:55:51,706 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-14 18:55:51,739 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-14 18:55:51,740 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-14 18:55:51,740 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-14 18:55:51,740 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-14 18:55:51,740 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-14 18:55:51,741 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-14 18:55:51,741 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-14 18:55:51,741 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-14 18:55:51,741 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-14 18:55:51,762 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states. [2018-11-14 18:55:51,769 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-14 18:55:51,770 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:51,771 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:55:51,773 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:51,778 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:51,779 INFO L82 PathProgramCache]: Analyzing trace with hash 1954566752, now seen corresponding path program 1 times [2018-11-14 18:55:51,781 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:51,781 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:51,831 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:51,831 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:51,831 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:51,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:51,977 INFO L256 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {37#true} is VALID [2018-11-14 18:55:51,981 INFO L273 TraceCheckUtils]: 1: Hoare triple {37#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {37#true} is VALID [2018-11-14 18:55:51,982 INFO L273 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:55:51,982 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #69#return; {37#true} is VALID [2018-11-14 18:55:51,982 INFO L256 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret12 := main(); {37#true} is VALID [2018-11-14 18:55:51,983 INFO L273 TraceCheckUtils]: 5: Hoare triple {37#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {37#true} is VALID [2018-11-14 18:55:51,984 INFO L273 TraceCheckUtils]: 6: Hoare triple {37#true} assume !true; {38#false} is VALID [2018-11-14 18:55:51,984 INFO L256 TraceCheckUtils]: 7: Hoare triple {38#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {37#true} is VALID [2018-11-14 18:55:51,984 INFO L273 TraceCheckUtils]: 8: Hoare triple {37#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37#true} is VALID [2018-11-14 18:55:51,985 INFO L273 TraceCheckUtils]: 9: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 18:55:51,985 INFO L273 TraceCheckUtils]: 10: Hoare triple {37#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {37#true} is VALID [2018-11-14 18:55:51,986 INFO L273 TraceCheckUtils]: 11: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:55:51,986 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {37#true} {38#false} #73#return; {38#false} is VALID [2018-11-14 18:55:51,986 INFO L273 TraceCheckUtils]: 13: Hoare triple {38#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {38#false} is VALID [2018-11-14 18:55:51,986 INFO L256 TraceCheckUtils]: 14: Hoare triple {38#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {37#true} is VALID [2018-11-14 18:55:51,987 INFO L273 TraceCheckUtils]: 15: Hoare triple {37#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37#true} is VALID [2018-11-14 18:55:51,987 INFO L273 TraceCheckUtils]: 16: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 18:55:51,987 INFO L273 TraceCheckUtils]: 17: Hoare triple {37#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {37#true} is VALID [2018-11-14 18:55:51,988 INFO L273 TraceCheckUtils]: 18: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:55:51,988 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {37#true} {38#false} #75#return; {38#false} is VALID [2018-11-14 18:55:51,988 INFO L273 TraceCheckUtils]: 20: Hoare triple {38#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {38#false} is VALID [2018-11-14 18:55:51,989 INFO L273 TraceCheckUtils]: 21: Hoare triple {38#false} assume !true; {38#false} is VALID [2018-11-14 18:55:51,989 INFO L273 TraceCheckUtils]: 22: Hoare triple {38#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {38#false} is VALID [2018-11-14 18:55:51,990 INFO L256 TraceCheckUtils]: 23: Hoare triple {38#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {37#true} is VALID [2018-11-14 18:55:51,990 INFO L273 TraceCheckUtils]: 24: Hoare triple {37#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37#true} is VALID [2018-11-14 18:55:51,990 INFO L273 TraceCheckUtils]: 25: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 18:55:51,991 INFO L273 TraceCheckUtils]: 26: Hoare triple {37#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {37#true} is VALID [2018-11-14 18:55:51,991 INFO L273 TraceCheckUtils]: 27: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 18:55:51,992 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {37#true} {38#false} #77#return; {38#false} is VALID [2018-11-14 18:55:51,992 INFO L273 TraceCheckUtils]: 29: Hoare triple {38#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {38#false} is VALID [2018-11-14 18:55:51,992 INFO L273 TraceCheckUtils]: 30: Hoare triple {38#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {38#false} is VALID [2018-11-14 18:55:51,993 INFO L273 TraceCheckUtils]: 31: Hoare triple {38#false} assume !false; {38#false} is VALID [2018-11-14 18:55:51,999 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-14 18:55:52,002 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 18:55:52,003 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-14 18:55:52,008 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 18:55:52,012 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:55:52,015 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-14 18:55:52,201 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:52,201 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-14 18:55:52,210 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-14 18:55:52,210 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 18:55:52,213 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 2 states. [2018-11-14 18:55:52,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:52,474 INFO L93 Difference]: Finished difference Result 59 states and 76 transitions. [2018-11-14 18:55:52,474 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-14 18:55:52,475 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 18:55:52,475 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:55:52,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 18:55:52,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 18:55:52,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 18:55:52,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 18:55:52,495 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 76 transitions. [2018-11-14 18:55:52,924 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:52,937 INFO L225 Difference]: With dead ends: 59 [2018-11-14 18:55:52,937 INFO L226 Difference]: Without dead ends: 29 [2018-11-14 18:55:52,941 INFO L604 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-14 18:55:52,958 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2018-11-14 18:55:52,989 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2018-11-14 18:55:52,990 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:55:52,990 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 29 states. [2018-11-14 18:55:52,991 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 18:55:52,991 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 18:55:52,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:52,997 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 18:55:52,997 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 18:55:52,998 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:52,998 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:52,999 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 18:55:52,999 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 18:55:53,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:53,004 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 18:55:53,004 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 18:55:53,005 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:53,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:53,006 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:55:53,006 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:55:53,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 18:55:53,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 33 transitions. [2018-11-14 18:55:53,012 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 33 transitions. Word has length 32 [2018-11-14 18:55:53,012 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:55:53,012 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 33 transitions. [2018-11-14 18:55:53,013 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-14 18:55:53,013 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 18:55:53,014 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-14 18:55:53,015 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:53,015 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:55:53,015 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:53,016 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:53,016 INFO L82 PathProgramCache]: Analyzing trace with hash -846201805, now seen corresponding path program 1 times [2018-11-14 18:55:53,016 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:53,016 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:53,018 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:53,018 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:53,018 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:53,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:53,139 INFO L256 TraceCheckUtils]: 0: Hoare triple {215#true} call ULTIMATE.init(); {215#true} is VALID [2018-11-14 18:55:53,140 INFO L273 TraceCheckUtils]: 1: Hoare triple {215#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {215#true} is VALID [2018-11-14 18:55:53,140 INFO L273 TraceCheckUtils]: 2: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:55:53,141 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {215#true} {215#true} #69#return; {215#true} is VALID [2018-11-14 18:55:53,141 INFO L256 TraceCheckUtils]: 4: Hoare triple {215#true} call #t~ret12 := main(); {215#true} is VALID [2018-11-14 18:55:53,143 INFO L273 TraceCheckUtils]: 5: Hoare triple {215#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {217#(= main_~i~1 0)} is VALID [2018-11-14 18:55:53,144 INFO L273 TraceCheckUtils]: 6: Hoare triple {217#(= main_~i~1 0)} assume true; {217#(= main_~i~1 0)} is VALID [2018-11-14 18:55:53,146 INFO L273 TraceCheckUtils]: 7: Hoare triple {217#(= main_~i~1 0)} assume !(~i~1 < 10000); {216#false} is VALID [2018-11-14 18:55:53,146 INFO L256 TraceCheckUtils]: 8: Hoare triple {216#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {215#true} is VALID [2018-11-14 18:55:53,147 INFO L273 TraceCheckUtils]: 9: Hoare triple {215#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {215#true} is VALID [2018-11-14 18:55:53,147 INFO L273 TraceCheckUtils]: 10: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:55:53,147 INFO L273 TraceCheckUtils]: 11: Hoare triple {215#true} assume !(~i~0 < 10000); {215#true} is VALID [2018-11-14 18:55:53,148 INFO L273 TraceCheckUtils]: 12: Hoare triple {215#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {215#true} is VALID [2018-11-14 18:55:53,148 INFO L273 TraceCheckUtils]: 13: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:55:53,148 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {215#true} {216#false} #73#return; {216#false} is VALID [2018-11-14 18:55:53,149 INFO L273 TraceCheckUtils]: 15: Hoare triple {216#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {216#false} is VALID [2018-11-14 18:55:53,149 INFO L256 TraceCheckUtils]: 16: Hoare triple {216#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {215#true} is VALID [2018-11-14 18:55:53,149 INFO L273 TraceCheckUtils]: 17: Hoare triple {215#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {215#true} is VALID [2018-11-14 18:55:53,149 INFO L273 TraceCheckUtils]: 18: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:55:53,150 INFO L273 TraceCheckUtils]: 19: Hoare triple {215#true} assume !(~i~0 < 10000); {215#true} is VALID [2018-11-14 18:55:53,150 INFO L273 TraceCheckUtils]: 20: Hoare triple {215#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {215#true} is VALID [2018-11-14 18:55:53,151 INFO L273 TraceCheckUtils]: 21: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:55:53,151 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {215#true} {216#false} #75#return; {216#false} is VALID [2018-11-14 18:55:53,151 INFO L273 TraceCheckUtils]: 23: Hoare triple {216#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {216#false} is VALID [2018-11-14 18:55:53,152 INFO L273 TraceCheckUtils]: 24: Hoare triple {216#false} assume true; {216#false} is VALID [2018-11-14 18:55:53,152 INFO L273 TraceCheckUtils]: 25: Hoare triple {216#false} assume !(~i~2 < 9999); {216#false} is VALID [2018-11-14 18:55:53,152 INFO L273 TraceCheckUtils]: 26: Hoare triple {216#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {216#false} is VALID [2018-11-14 18:55:53,154 INFO L256 TraceCheckUtils]: 27: Hoare triple {216#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {215#true} is VALID [2018-11-14 18:55:53,155 INFO L273 TraceCheckUtils]: 28: Hoare triple {215#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {215#true} is VALID [2018-11-14 18:55:53,155 INFO L273 TraceCheckUtils]: 29: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:55:53,155 INFO L273 TraceCheckUtils]: 30: Hoare triple {215#true} assume !(~i~0 < 10000); {215#true} is VALID [2018-11-14 18:55:53,158 INFO L273 TraceCheckUtils]: 31: Hoare triple {215#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {215#true} is VALID [2018-11-14 18:55:53,158 INFO L273 TraceCheckUtils]: 32: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 18:55:53,159 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {215#true} {216#false} #77#return; {216#false} is VALID [2018-11-14 18:55:53,159 INFO L273 TraceCheckUtils]: 34: Hoare triple {216#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {216#false} is VALID [2018-11-14 18:55:53,159 INFO L273 TraceCheckUtils]: 35: Hoare triple {216#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {216#false} is VALID [2018-11-14 18:55:53,160 INFO L273 TraceCheckUtils]: 36: Hoare triple {216#false} assume !false; {216#false} is VALID [2018-11-14 18:55:53,163 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-14 18:55:53,163 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 18:55:53,163 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 18:55:53,166 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 18:55:53,167 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:55:53,167 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 18:55:53,360 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:53,360 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 18:55:53,361 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 18:55:53,361 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 18:55:53,361 INFO L87 Difference]: Start difference. First operand 29 states and 33 transitions. Second operand 3 states. [2018-11-14 18:55:53,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:53,841 INFO L93 Difference]: Finished difference Result 52 states and 60 transitions. [2018-11-14 18:55:53,845 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 18:55:53,845 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 18:55:53,845 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:55:53,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:55:53,853 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 18:55:53,853 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:55:53,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 18:55:53,861 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 60 transitions. [2018-11-14 18:55:54,008 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-14 18:55:54,011 INFO L225 Difference]: With dead ends: 52 [2018-11-14 18:55:54,011 INFO L226 Difference]: Without dead ends: 32 [2018-11-14 18:55:54,013 INFO L604 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-14 18:55:54,013 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-14 18:55:54,030 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2018-11-14 18:55:54,030 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:55:54,030 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 31 states. [2018-11-14 18:55:54,031 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 31 states. [2018-11-14 18:55:54,031 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 31 states. [2018-11-14 18:55:54,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:54,035 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 18:55:54,035 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 18:55:54,036 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:54,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:54,036 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 32 states. [2018-11-14 18:55:54,036 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 32 states. [2018-11-14 18:55:54,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:54,041 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 18:55:54,042 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 18:55:54,042 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:54,043 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:54,044 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:55:54,044 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:55:54,045 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-14 18:55:54,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2018-11-14 18:55:54,049 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 37 [2018-11-14 18:55:54,049 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:55:54,049 INFO L480 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2018-11-14 18:55:54,049 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 18:55:54,050 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2018-11-14 18:55:54,051 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2018-11-14 18:55:54,051 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:54,052 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 2, 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-14 18:55:54,052 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:54,052 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:54,052 INFO L82 PathProgramCache]: Analyzing trace with hash -169343480, now seen corresponding path program 1 times [2018-11-14 18:55:54,053 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:54,056 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:54,057 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:54,057 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:54,058 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:54,076 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:54,205 INFO L256 TraceCheckUtils]: 0: Hoare triple {397#true} call ULTIMATE.init(); {397#true} is VALID [2018-11-14 18:55:54,206 INFO L273 TraceCheckUtils]: 1: Hoare triple {397#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {397#true} is VALID [2018-11-14 18:55:54,206 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,206 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {397#true} {397#true} #69#return; {397#true} is VALID [2018-11-14 18:55:54,206 INFO L256 TraceCheckUtils]: 4: Hoare triple {397#true} call #t~ret12 := main(); {397#true} is VALID [2018-11-14 18:55:54,207 INFO L273 TraceCheckUtils]: 5: Hoare triple {397#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {397#true} is VALID [2018-11-14 18:55:54,207 INFO L273 TraceCheckUtils]: 6: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,207 INFO L273 TraceCheckUtils]: 7: Hoare triple {397#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {397#true} is VALID [2018-11-14 18:55:54,208 INFO L273 TraceCheckUtils]: 8: Hoare triple {397#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {397#true} is VALID [2018-11-14 18:55:54,208 INFO L273 TraceCheckUtils]: 9: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,209 INFO L273 TraceCheckUtils]: 10: Hoare triple {397#true} assume !(~i~1 < 10000); {397#true} is VALID [2018-11-14 18:55:54,210 INFO L256 TraceCheckUtils]: 11: Hoare triple {397#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:55:54,211 INFO L273 TraceCheckUtils]: 12: Hoare triple {397#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {399#(= mapavg_~i~0 0)} is VALID [2018-11-14 18:55:54,212 INFO L273 TraceCheckUtils]: 13: Hoare triple {399#(= mapavg_~i~0 0)} assume true; {399#(= mapavg_~i~0 0)} is VALID [2018-11-14 18:55:54,212 INFO L273 TraceCheckUtils]: 14: Hoare triple {399#(= mapavg_~i~0 0)} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 18:55:54,213 INFO L273 TraceCheckUtils]: 15: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:55:54,213 INFO L273 TraceCheckUtils]: 16: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,213 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {398#false} {397#true} #73#return; {398#false} is VALID [2018-11-14 18:55:54,213 INFO L273 TraceCheckUtils]: 18: Hoare triple {398#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {398#false} is VALID [2018-11-14 18:55:54,214 INFO L256 TraceCheckUtils]: 19: Hoare triple {398#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:55:54,214 INFO L273 TraceCheckUtils]: 20: Hoare triple {397#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {397#true} is VALID [2018-11-14 18:55:54,214 INFO L273 TraceCheckUtils]: 21: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,215 INFO L273 TraceCheckUtils]: 22: Hoare triple {397#true} assume !(~i~0 < 10000); {397#true} is VALID [2018-11-14 18:55:54,215 INFO L273 TraceCheckUtils]: 23: Hoare triple {397#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {397#true} is VALID [2018-11-14 18:55:54,215 INFO L273 TraceCheckUtils]: 24: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,216 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {397#true} {398#false} #75#return; {398#false} is VALID [2018-11-14 18:55:54,216 INFO L273 TraceCheckUtils]: 26: Hoare triple {398#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {398#false} is VALID [2018-11-14 18:55:54,216 INFO L273 TraceCheckUtils]: 27: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,217 INFO L273 TraceCheckUtils]: 28: Hoare triple {398#false} assume !(~i~2 < 9999); {398#false} is VALID [2018-11-14 18:55:54,217 INFO L273 TraceCheckUtils]: 29: Hoare triple {398#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {398#false} is VALID [2018-11-14 18:55:54,217 INFO L256 TraceCheckUtils]: 30: Hoare triple {398#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:55:54,218 INFO L273 TraceCheckUtils]: 31: Hoare triple {397#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {397#true} is VALID [2018-11-14 18:55:54,218 INFO L273 TraceCheckUtils]: 32: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,218 INFO L273 TraceCheckUtils]: 33: Hoare triple {397#true} assume !(~i~0 < 10000); {397#true} is VALID [2018-11-14 18:55:54,219 INFO L273 TraceCheckUtils]: 34: Hoare triple {397#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {397#true} is VALID [2018-11-14 18:55:54,219 INFO L273 TraceCheckUtils]: 35: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,219 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {397#true} {398#false} #77#return; {398#false} is VALID [2018-11-14 18:55:54,220 INFO L273 TraceCheckUtils]: 37: Hoare triple {398#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {398#false} is VALID [2018-11-14 18:55:54,220 INFO L273 TraceCheckUtils]: 38: Hoare triple {398#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {398#false} is VALID [2018-11-14 18:55:54,220 INFO L273 TraceCheckUtils]: 39: Hoare triple {398#false} assume !false; {398#false} is VALID [2018-11-14 18:55:54,223 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2018-11-14 18:55:54,223 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:55:54,224 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-14 18:55:54,239 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:54,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:54,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:54,320 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:55:54,454 INFO L256 TraceCheckUtils]: 0: Hoare triple {397#true} call ULTIMATE.init(); {397#true} is VALID [2018-11-14 18:55:54,454 INFO L273 TraceCheckUtils]: 1: Hoare triple {397#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {397#true} is VALID [2018-11-14 18:55:54,455 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,455 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {397#true} {397#true} #69#return; {397#true} is VALID [2018-11-14 18:55:54,456 INFO L256 TraceCheckUtils]: 4: Hoare triple {397#true} call #t~ret12 := main(); {397#true} is VALID [2018-11-14 18:55:54,456 INFO L273 TraceCheckUtils]: 5: Hoare triple {397#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {397#true} is VALID [2018-11-14 18:55:54,457 INFO L273 TraceCheckUtils]: 6: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,457 INFO L273 TraceCheckUtils]: 7: Hoare triple {397#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {397#true} is VALID [2018-11-14 18:55:54,457 INFO L273 TraceCheckUtils]: 8: Hoare triple {397#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {397#true} is VALID [2018-11-14 18:55:54,458 INFO L273 TraceCheckUtils]: 9: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 18:55:54,458 INFO L273 TraceCheckUtils]: 10: Hoare triple {397#true} assume !(~i~1 < 10000); {397#true} is VALID [2018-11-14 18:55:54,458 INFO L256 TraceCheckUtils]: 11: Hoare triple {397#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {397#true} is VALID [2018-11-14 18:55:54,472 INFO L273 TraceCheckUtils]: 12: Hoare triple {397#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {439#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:55:54,477 INFO L273 TraceCheckUtils]: 13: Hoare triple {439#(<= mapavg_~i~0 0)} assume true; {439#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:55:54,478 INFO L273 TraceCheckUtils]: 14: Hoare triple {439#(<= mapavg_~i~0 0)} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 18:55:54,478 INFO L273 TraceCheckUtils]: 15: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:55:54,478 INFO L273 TraceCheckUtils]: 16: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,478 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {398#false} {397#true} #73#return; {398#false} is VALID [2018-11-14 18:55:54,479 INFO L273 TraceCheckUtils]: 18: Hoare triple {398#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {398#false} is VALID [2018-11-14 18:55:54,479 INFO L256 TraceCheckUtils]: 19: Hoare triple {398#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {398#false} is VALID [2018-11-14 18:55:54,479 INFO L273 TraceCheckUtils]: 20: Hoare triple {398#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {398#false} is VALID [2018-11-14 18:55:54,480 INFO L273 TraceCheckUtils]: 21: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,480 INFO L273 TraceCheckUtils]: 22: Hoare triple {398#false} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 18:55:54,480 INFO L273 TraceCheckUtils]: 23: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:55:54,481 INFO L273 TraceCheckUtils]: 24: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,481 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {398#false} {398#false} #75#return; {398#false} is VALID [2018-11-14 18:55:54,481 INFO L273 TraceCheckUtils]: 26: Hoare triple {398#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {398#false} is VALID [2018-11-14 18:55:54,482 INFO L273 TraceCheckUtils]: 27: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,482 INFO L273 TraceCheckUtils]: 28: Hoare triple {398#false} assume !(~i~2 < 9999); {398#false} is VALID [2018-11-14 18:55:54,482 INFO L273 TraceCheckUtils]: 29: Hoare triple {398#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {398#false} is VALID [2018-11-14 18:55:54,482 INFO L256 TraceCheckUtils]: 30: Hoare triple {398#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {398#false} is VALID [2018-11-14 18:55:54,483 INFO L273 TraceCheckUtils]: 31: Hoare triple {398#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {398#false} is VALID [2018-11-14 18:55:54,483 INFO L273 TraceCheckUtils]: 32: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,483 INFO L273 TraceCheckUtils]: 33: Hoare triple {398#false} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 18:55:54,484 INFO L273 TraceCheckUtils]: 34: Hoare triple {398#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {398#false} is VALID [2018-11-14 18:55:54,484 INFO L273 TraceCheckUtils]: 35: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 18:55:54,484 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {398#false} {398#false} #77#return; {398#false} is VALID [2018-11-14 18:55:54,484 INFO L273 TraceCheckUtils]: 37: Hoare triple {398#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {398#false} is VALID [2018-11-14 18:55:54,485 INFO L273 TraceCheckUtils]: 38: Hoare triple {398#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {398#false} is VALID [2018-11-14 18:55:54,485 INFO L273 TraceCheckUtils]: 39: Hoare triple {398#false} assume !false; {398#false} is VALID [2018-11-14 18:55:54,488 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2018-11-14 18:55:54,514 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-14 18:55:54,514 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 4 [2018-11-14 18:55:54,515 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 18:55:54,518 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:55:54,518 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-14 18:55:54,692 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:54,692 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-14 18:55:54,692 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-14 18:55:54,692 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-14 18:55:54,693 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand 4 states. [2018-11-14 18:55:54,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:54,913 INFO L93 Difference]: Finished difference Result 53 states and 63 transitions. [2018-11-14 18:55:54,913 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 18:55:54,913 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 18:55:54,913 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:55:54,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 18:55:54,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 18:55:54,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 18:55:54,919 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 18:55:54,920 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 61 transitions. [2018-11-14 18:55:55,022 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:55,025 INFO L225 Difference]: With dead ends: 53 [2018-11-14 18:55:55,025 INFO L226 Difference]: Without dead ends: 34 [2018-11-14 18:55:55,025 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-14 18:55:55,026 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2018-11-14 18:55:55,050 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2018-11-14 18:55:55,051 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:55:55,051 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 33 states. [2018-11-14 18:55:55,051 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 33 states. [2018-11-14 18:55:55,052 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 33 states. [2018-11-14 18:55:55,055 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:55,055 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2018-11-14 18:55:55,056 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2018-11-14 18:55:55,056 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:55,057 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:55,057 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 34 states. [2018-11-14 18:55:55,057 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 34 states. [2018-11-14 18:55:55,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:55,060 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2018-11-14 18:55:55,060 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2018-11-14 18:55:55,061 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:55,061 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:55,061 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:55:55,062 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:55:55,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-14 18:55:55,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2018-11-14 18:55:55,064 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 40 [2018-11-14 18:55:55,065 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:55:55,065 INFO L480 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2018-11-14 18:55:55,065 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-14 18:55:55,065 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2018-11-14 18:55:55,067 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2018-11-14 18:55:55,067 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:55,067 INFO L375 BasicCegarLoop]: trace histogram [6, 3, 3, 3, 3, 3, 3, 2, 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-14 18:55:55,067 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:55,068 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:55,068 INFO L82 PathProgramCache]: Analyzing trace with hash -587267457, now seen corresponding path program 1 times [2018-11-14 18:55:55,068 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:55,068 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:55,069 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:55,069 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:55,070 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:55,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:55,182 INFO L256 TraceCheckUtils]: 0: Hoare triple {705#true} call ULTIMATE.init(); {705#true} is VALID [2018-11-14 18:55:55,182 INFO L273 TraceCheckUtils]: 1: Hoare triple {705#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {705#true} is VALID [2018-11-14 18:55:55,182 INFO L273 TraceCheckUtils]: 2: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,183 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {705#true} {705#true} #69#return; {705#true} is VALID [2018-11-14 18:55:55,183 INFO L256 TraceCheckUtils]: 4: Hoare triple {705#true} call #t~ret12 := main(); {705#true} is VALID [2018-11-14 18:55:55,184 INFO L273 TraceCheckUtils]: 5: Hoare triple {705#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {705#true} is VALID [2018-11-14 18:55:55,184 INFO L273 TraceCheckUtils]: 6: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,184 INFO L273 TraceCheckUtils]: 7: Hoare triple {705#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {705#true} is VALID [2018-11-14 18:55:55,184 INFO L273 TraceCheckUtils]: 8: Hoare triple {705#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {705#true} is VALID [2018-11-14 18:55:55,185 INFO L273 TraceCheckUtils]: 9: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,185 INFO L273 TraceCheckUtils]: 10: Hoare triple {705#true} assume !(~i~1 < 10000); {705#true} is VALID [2018-11-14 18:55:55,185 INFO L256 TraceCheckUtils]: 11: Hoare triple {705#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {705#true} is VALID [2018-11-14 18:55:55,186 INFO L273 TraceCheckUtils]: 12: Hoare triple {705#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {705#true} is VALID [2018-11-14 18:55:55,186 INFO L273 TraceCheckUtils]: 13: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,186 INFO L273 TraceCheckUtils]: 14: Hoare triple {705#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {705#true} is VALID [2018-11-14 18:55:55,187 INFO L273 TraceCheckUtils]: 15: Hoare triple {705#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {705#true} is VALID [2018-11-14 18:55:55,187 INFO L273 TraceCheckUtils]: 16: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,187 INFO L273 TraceCheckUtils]: 17: Hoare triple {705#true} assume !(~i~0 < 10000); {705#true} is VALID [2018-11-14 18:55:55,187 INFO L273 TraceCheckUtils]: 18: Hoare triple {705#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {705#true} is VALID [2018-11-14 18:55:55,188 INFO L273 TraceCheckUtils]: 19: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,188 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {705#true} {705#true} #73#return; {705#true} is VALID [2018-11-14 18:55:55,188 INFO L273 TraceCheckUtils]: 21: Hoare triple {705#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {705#true} is VALID [2018-11-14 18:55:55,189 INFO L256 TraceCheckUtils]: 22: Hoare triple {705#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {705#true} is VALID [2018-11-14 18:55:55,189 INFO L273 TraceCheckUtils]: 23: Hoare triple {705#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {705#true} is VALID [2018-11-14 18:55:55,189 INFO L273 TraceCheckUtils]: 24: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,189 INFO L273 TraceCheckUtils]: 25: Hoare triple {705#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {705#true} is VALID [2018-11-14 18:55:55,190 INFO L273 TraceCheckUtils]: 26: Hoare triple {705#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {705#true} is VALID [2018-11-14 18:55:55,190 INFO L273 TraceCheckUtils]: 27: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,190 INFO L273 TraceCheckUtils]: 28: Hoare triple {705#true} assume !(~i~0 < 10000); {705#true} is VALID [2018-11-14 18:55:55,191 INFO L273 TraceCheckUtils]: 29: Hoare triple {705#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {705#true} is VALID [2018-11-14 18:55:55,191 INFO L273 TraceCheckUtils]: 30: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,191 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {705#true} {705#true} #75#return; {705#true} is VALID [2018-11-14 18:55:55,193 INFO L273 TraceCheckUtils]: 32: Hoare triple {705#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {707#(= main_~i~2 0)} is VALID [2018-11-14 18:55:55,193 INFO L273 TraceCheckUtils]: 33: Hoare triple {707#(= main_~i~2 0)} assume true; {707#(= main_~i~2 0)} is VALID [2018-11-14 18:55:55,195 INFO L273 TraceCheckUtils]: 34: Hoare triple {707#(= main_~i~2 0)} assume !(~i~2 < 9999); {706#false} is VALID [2018-11-14 18:55:55,195 INFO L273 TraceCheckUtils]: 35: Hoare triple {706#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {706#false} is VALID [2018-11-14 18:55:55,195 INFO L256 TraceCheckUtils]: 36: Hoare triple {706#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {705#true} is VALID [2018-11-14 18:55:55,195 INFO L273 TraceCheckUtils]: 37: Hoare triple {705#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {705#true} is VALID [2018-11-14 18:55:55,196 INFO L273 TraceCheckUtils]: 38: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,196 INFO L273 TraceCheckUtils]: 39: Hoare triple {705#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {705#true} is VALID [2018-11-14 18:55:55,196 INFO L273 TraceCheckUtils]: 40: Hoare triple {705#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {705#true} is VALID [2018-11-14 18:55:55,197 INFO L273 TraceCheckUtils]: 41: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,197 INFO L273 TraceCheckUtils]: 42: Hoare triple {705#true} assume !(~i~0 < 10000); {705#true} is VALID [2018-11-14 18:55:55,197 INFO L273 TraceCheckUtils]: 43: Hoare triple {705#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {705#true} is VALID [2018-11-14 18:55:55,198 INFO L273 TraceCheckUtils]: 44: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 18:55:55,198 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {705#true} {706#false} #77#return; {706#false} is VALID [2018-11-14 18:55:55,198 INFO L273 TraceCheckUtils]: 46: Hoare triple {706#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {706#false} is VALID [2018-11-14 18:55:55,199 INFO L273 TraceCheckUtils]: 47: Hoare triple {706#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {706#false} is VALID [2018-11-14 18:55:55,199 INFO L273 TraceCheckUtils]: 48: Hoare triple {706#false} assume !false; {706#false} is VALID [2018-11-14 18:55:55,202 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:55:55,203 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 18:55:55,203 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 18:55:55,203 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 18:55:55,204 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:55:55,204 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 18:55:55,271 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:55,272 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 18:55:55,272 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 18:55:55,272 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 18:55:55,273 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand 3 states. [2018-11-14 18:55:55,362 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:55,362 INFO L93 Difference]: Finished difference Result 51 states and 56 transitions. [2018-11-14 18:55:55,362 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 18:55:55,362 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 18:55:55,363 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:55:55,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:55:55,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 18:55:55,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 18:55:55,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 18:55:55,368 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 50 transitions. [2018-11-14 18:55:55,520 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:55,522 INFO L225 Difference]: With dead ends: 51 [2018-11-14 18:55:55,523 INFO L226 Difference]: Without dead ends: 36 [2018-11-14 18:55:55,523 INFO L604 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-14 18:55:55,524 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2018-11-14 18:55:55,537 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2018-11-14 18:55:55,537 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:55:55,537 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 35 states. [2018-11-14 18:55:55,537 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 35 states. [2018-11-14 18:55:55,537 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 35 states. [2018-11-14 18:55:55,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:55,540 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2018-11-14 18:55:55,540 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2018-11-14 18:55:55,543 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:55,543 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:55,543 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 36 states. [2018-11-14 18:55:55,544 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 36 states. [2018-11-14 18:55:55,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:55,552 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2018-11-14 18:55:55,552 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2018-11-14 18:55:55,553 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:55,553 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:55,553 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:55:55,553 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:55:55,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-14 18:55:55,556 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 39 transitions. [2018-11-14 18:55:55,556 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 39 transitions. Word has length 49 [2018-11-14 18:55:55,556 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:55:55,556 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 39 transitions. [2018-11-14 18:55:55,559 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 18:55:55,560 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2018-11-14 18:55:55,561 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-14 18:55:55,561 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:55,561 INFO L375 BasicCegarLoop]: trace histogram [6, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:55:55,561 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:55,562 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:55,562 INFO L82 PathProgramCache]: Analyzing trace with hash -674957892, now seen corresponding path program 1 times [2018-11-14 18:55:55,562 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:55,562 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:55,563 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:55,563 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:55,564 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:55,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:55,856 INFO L256 TraceCheckUtils]: 0: Hoare triple {900#true} call ULTIMATE.init(); {900#true} is VALID [2018-11-14 18:55:55,856 INFO L273 TraceCheckUtils]: 1: Hoare triple {900#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {900#true} is VALID [2018-11-14 18:55:55,856 INFO L273 TraceCheckUtils]: 2: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,857 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {900#true} {900#true} #69#return; {900#true} is VALID [2018-11-14 18:55:55,857 INFO L256 TraceCheckUtils]: 4: Hoare triple {900#true} call #t~ret12 := main(); {900#true} is VALID [2018-11-14 18:55:55,864 INFO L273 TraceCheckUtils]: 5: Hoare triple {900#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {902#(= main_~i~1 0)} is VALID [2018-11-14 18:55:55,871 INFO L273 TraceCheckUtils]: 6: Hoare triple {902#(= main_~i~1 0)} assume true; {902#(= main_~i~1 0)} is VALID [2018-11-14 18:55:55,873 INFO L273 TraceCheckUtils]: 7: Hoare triple {902#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {902#(= main_~i~1 0)} is VALID [2018-11-14 18:55:55,873 INFO L273 TraceCheckUtils]: 8: Hoare triple {902#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:55,875 INFO L273 TraceCheckUtils]: 9: Hoare triple {903#(<= main_~i~1 1)} assume true; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:55,877 INFO L273 TraceCheckUtils]: 10: Hoare triple {903#(<= main_~i~1 1)} assume !(~i~1 < 10000); {901#false} is VALID [2018-11-14 18:55:55,877 INFO L256 TraceCheckUtils]: 11: Hoare triple {901#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {900#true} is VALID [2018-11-14 18:55:55,877 INFO L273 TraceCheckUtils]: 12: Hoare triple {900#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {900#true} is VALID [2018-11-14 18:55:55,877 INFO L273 TraceCheckUtils]: 13: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,878 INFO L273 TraceCheckUtils]: 14: Hoare triple {900#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {900#true} is VALID [2018-11-14 18:55:55,878 INFO L273 TraceCheckUtils]: 15: Hoare triple {900#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {900#true} is VALID [2018-11-14 18:55:55,878 INFO L273 TraceCheckUtils]: 16: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,878 INFO L273 TraceCheckUtils]: 17: Hoare triple {900#true} assume !(~i~0 < 10000); {900#true} is VALID [2018-11-14 18:55:55,879 INFO L273 TraceCheckUtils]: 18: Hoare triple {900#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {900#true} is VALID [2018-11-14 18:55:55,879 INFO L273 TraceCheckUtils]: 19: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,879 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {900#true} {901#false} #73#return; {901#false} is VALID [2018-11-14 18:55:55,879 INFO L273 TraceCheckUtils]: 21: Hoare triple {901#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {901#false} is VALID [2018-11-14 18:55:55,880 INFO L256 TraceCheckUtils]: 22: Hoare triple {901#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {900#true} is VALID [2018-11-14 18:55:55,880 INFO L273 TraceCheckUtils]: 23: Hoare triple {900#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {900#true} is VALID [2018-11-14 18:55:55,880 INFO L273 TraceCheckUtils]: 24: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,880 INFO L273 TraceCheckUtils]: 25: Hoare triple {900#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {900#true} is VALID [2018-11-14 18:55:55,881 INFO L273 TraceCheckUtils]: 26: Hoare triple {900#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {900#true} is VALID [2018-11-14 18:55:55,881 INFO L273 TraceCheckUtils]: 27: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,881 INFO L273 TraceCheckUtils]: 28: Hoare triple {900#true} assume !(~i~0 < 10000); {900#true} is VALID [2018-11-14 18:55:55,882 INFO L273 TraceCheckUtils]: 29: Hoare triple {900#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {900#true} is VALID [2018-11-14 18:55:55,882 INFO L273 TraceCheckUtils]: 30: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,882 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {900#true} {901#false} #75#return; {901#false} is VALID [2018-11-14 18:55:55,883 INFO L273 TraceCheckUtils]: 32: Hoare triple {901#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {901#false} is VALID [2018-11-14 18:55:55,883 INFO L273 TraceCheckUtils]: 33: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:55,883 INFO L273 TraceCheckUtils]: 34: Hoare triple {901#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {901#false} is VALID [2018-11-14 18:55:55,883 INFO L273 TraceCheckUtils]: 35: Hoare triple {901#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {901#false} is VALID [2018-11-14 18:55:55,884 INFO L273 TraceCheckUtils]: 36: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:55,884 INFO L273 TraceCheckUtils]: 37: Hoare triple {901#false} assume !(~i~2 < 9999); {901#false} is VALID [2018-11-14 18:55:55,884 INFO L273 TraceCheckUtils]: 38: Hoare triple {901#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {901#false} is VALID [2018-11-14 18:55:55,884 INFO L256 TraceCheckUtils]: 39: Hoare triple {901#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {900#true} is VALID [2018-11-14 18:55:55,885 INFO L273 TraceCheckUtils]: 40: Hoare triple {900#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {900#true} is VALID [2018-11-14 18:55:55,885 INFO L273 TraceCheckUtils]: 41: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,885 INFO L273 TraceCheckUtils]: 42: Hoare triple {900#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {900#true} is VALID [2018-11-14 18:55:55,886 INFO L273 TraceCheckUtils]: 43: Hoare triple {900#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {900#true} is VALID [2018-11-14 18:55:55,886 INFO L273 TraceCheckUtils]: 44: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,886 INFO L273 TraceCheckUtils]: 45: Hoare triple {900#true} assume !(~i~0 < 10000); {900#true} is VALID [2018-11-14 18:55:55,886 INFO L273 TraceCheckUtils]: 46: Hoare triple {900#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {900#true} is VALID [2018-11-14 18:55:55,887 INFO L273 TraceCheckUtils]: 47: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:55,887 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {900#true} {901#false} #77#return; {901#false} is VALID [2018-11-14 18:55:55,887 INFO L273 TraceCheckUtils]: 49: Hoare triple {901#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {901#false} is VALID [2018-11-14 18:55:55,887 INFO L273 TraceCheckUtils]: 50: Hoare triple {901#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {901#false} is VALID [2018-11-14 18:55:55,888 INFO L273 TraceCheckUtils]: 51: Hoare triple {901#false} assume !false; {901#false} is VALID [2018-11-14 18:55:55,891 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:55:55,891 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:55:55,891 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-14 18:55:55,902 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:55,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:55,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:55,971 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:55:56,223 INFO L256 TraceCheckUtils]: 0: Hoare triple {900#true} call ULTIMATE.init(); {900#true} is VALID [2018-11-14 18:55:56,223 INFO L273 TraceCheckUtils]: 1: Hoare triple {900#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {900#true} is VALID [2018-11-14 18:55:56,224 INFO L273 TraceCheckUtils]: 2: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 18:55:56,224 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {900#true} {900#true} #69#return; {900#true} is VALID [2018-11-14 18:55:56,225 INFO L256 TraceCheckUtils]: 4: Hoare triple {900#true} call #t~ret12 := main(); {900#true} is VALID [2018-11-14 18:55:56,230 INFO L273 TraceCheckUtils]: 5: Hoare triple {900#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {922#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:56,231 INFO L273 TraceCheckUtils]: 6: Hoare triple {922#(<= main_~i~1 0)} assume true; {922#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:56,231 INFO L273 TraceCheckUtils]: 7: Hoare triple {922#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {922#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:56,233 INFO L273 TraceCheckUtils]: 8: Hoare triple {922#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:56,233 INFO L273 TraceCheckUtils]: 9: Hoare triple {903#(<= main_~i~1 1)} assume true; {903#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:56,234 INFO L273 TraceCheckUtils]: 10: Hoare triple {903#(<= main_~i~1 1)} assume !(~i~1 < 10000); {901#false} is VALID [2018-11-14 18:55:56,235 INFO L256 TraceCheckUtils]: 11: Hoare triple {901#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {901#false} is VALID [2018-11-14 18:55:56,235 INFO L273 TraceCheckUtils]: 12: Hoare triple {901#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {901#false} is VALID [2018-11-14 18:55:56,235 INFO L273 TraceCheckUtils]: 13: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,236 INFO L273 TraceCheckUtils]: 14: Hoare triple {901#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {901#false} is VALID [2018-11-14 18:55:56,236 INFO L273 TraceCheckUtils]: 15: Hoare triple {901#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {901#false} is VALID [2018-11-14 18:55:56,237 INFO L273 TraceCheckUtils]: 16: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,237 INFO L273 TraceCheckUtils]: 17: Hoare triple {901#false} assume !(~i~0 < 10000); {901#false} is VALID [2018-11-14 18:55:56,237 INFO L273 TraceCheckUtils]: 18: Hoare triple {901#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {901#false} is VALID [2018-11-14 18:55:56,237 INFO L273 TraceCheckUtils]: 19: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,238 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {901#false} {901#false} #73#return; {901#false} is VALID [2018-11-14 18:55:56,238 INFO L273 TraceCheckUtils]: 21: Hoare triple {901#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {901#false} is VALID [2018-11-14 18:55:56,238 INFO L256 TraceCheckUtils]: 22: Hoare triple {901#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {901#false} is VALID [2018-11-14 18:55:56,239 INFO L273 TraceCheckUtils]: 23: Hoare triple {901#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {901#false} is VALID [2018-11-14 18:55:56,239 INFO L273 TraceCheckUtils]: 24: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,239 INFO L273 TraceCheckUtils]: 25: Hoare triple {901#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {901#false} is VALID [2018-11-14 18:55:56,240 INFO L273 TraceCheckUtils]: 26: Hoare triple {901#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {901#false} is VALID [2018-11-14 18:55:56,240 INFO L273 TraceCheckUtils]: 27: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,240 INFO L273 TraceCheckUtils]: 28: Hoare triple {901#false} assume !(~i~0 < 10000); {901#false} is VALID [2018-11-14 18:55:56,240 INFO L273 TraceCheckUtils]: 29: Hoare triple {901#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {901#false} is VALID [2018-11-14 18:55:56,241 INFO L273 TraceCheckUtils]: 30: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,241 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {901#false} {901#false} #75#return; {901#false} is VALID [2018-11-14 18:55:56,241 INFO L273 TraceCheckUtils]: 32: Hoare triple {901#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {901#false} is VALID [2018-11-14 18:55:56,241 INFO L273 TraceCheckUtils]: 33: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,242 INFO L273 TraceCheckUtils]: 34: Hoare triple {901#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {901#false} is VALID [2018-11-14 18:55:56,242 INFO L273 TraceCheckUtils]: 35: Hoare triple {901#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {901#false} is VALID [2018-11-14 18:55:56,242 INFO L273 TraceCheckUtils]: 36: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,242 INFO L273 TraceCheckUtils]: 37: Hoare triple {901#false} assume !(~i~2 < 9999); {901#false} is VALID [2018-11-14 18:55:56,243 INFO L273 TraceCheckUtils]: 38: Hoare triple {901#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {901#false} is VALID [2018-11-14 18:55:56,243 INFO L256 TraceCheckUtils]: 39: Hoare triple {901#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {901#false} is VALID [2018-11-14 18:55:56,243 INFO L273 TraceCheckUtils]: 40: Hoare triple {901#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {901#false} is VALID [2018-11-14 18:55:56,243 INFO L273 TraceCheckUtils]: 41: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,244 INFO L273 TraceCheckUtils]: 42: Hoare triple {901#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {901#false} is VALID [2018-11-14 18:55:56,244 INFO L273 TraceCheckUtils]: 43: Hoare triple {901#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {901#false} is VALID [2018-11-14 18:55:56,244 INFO L273 TraceCheckUtils]: 44: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,245 INFO L273 TraceCheckUtils]: 45: Hoare triple {901#false} assume !(~i~0 < 10000); {901#false} is VALID [2018-11-14 18:55:56,245 INFO L273 TraceCheckUtils]: 46: Hoare triple {901#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {901#false} is VALID [2018-11-14 18:55:56,245 INFO L273 TraceCheckUtils]: 47: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 18:55:56,245 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {901#false} {901#false} #77#return; {901#false} is VALID [2018-11-14 18:55:56,246 INFO L273 TraceCheckUtils]: 49: Hoare triple {901#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {901#false} is VALID [2018-11-14 18:55:56,246 INFO L273 TraceCheckUtils]: 50: Hoare triple {901#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {901#false} is VALID [2018-11-14 18:55:56,246 INFO L273 TraceCheckUtils]: 51: Hoare triple {901#false} assume !false; {901#false} is VALID [2018-11-14 18:55:56,250 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:55:56,279 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:55:56,280 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 5 [2018-11-14 18:55:56,280 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 52 [2018-11-14 18:55:56,281 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:55:56,282 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-14 18:55:56,365 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:56,365 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-14 18:55:56,365 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-14 18:55:56,366 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-14 18:55:56,366 INFO L87 Difference]: Start difference. First operand 35 states and 39 transitions. Second operand 5 states. [2018-11-14 18:55:56,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:56,512 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2018-11-14 18:55:56,512 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-14 18:55:56,512 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 52 [2018-11-14 18:55:56,513 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:55:56,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-14 18:55:56,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 63 transitions. [2018-11-14 18:55:56,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-14 18:55:56,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 63 transitions. [2018-11-14 18:55:56,518 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 63 transitions. [2018-11-14 18:55:56,713 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:56,714 INFO L225 Difference]: With dead ends: 63 [2018-11-14 18:55:56,715 INFO L226 Difference]: Without dead ends: 39 [2018-11-14 18:55:56,715 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 52 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-14 18:55:56,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-14 18:55:56,729 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 38. [2018-11-14 18:55:56,729 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:55:56,729 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 38 states. [2018-11-14 18:55:56,730 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 38 states. [2018-11-14 18:55:56,730 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 38 states. [2018-11-14 18:55:56,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:56,733 INFO L93 Difference]: Finished difference Result 39 states and 43 transitions. [2018-11-14 18:55:56,733 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 43 transitions. [2018-11-14 18:55:56,733 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:56,734 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:56,734 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 39 states. [2018-11-14 18:55:56,734 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 39 states. [2018-11-14 18:55:56,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:56,737 INFO L93 Difference]: Finished difference Result 39 states and 43 transitions. [2018-11-14 18:55:56,737 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 43 transitions. [2018-11-14 18:55:56,737 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:56,737 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:56,738 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:55:56,738 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:55:56,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-14 18:55:56,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 42 transitions. [2018-11-14 18:55:56,740 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 42 transitions. Word has length 52 [2018-11-14 18:55:56,740 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:55:56,741 INFO L480 AbstractCegarLoop]: Abstraction has 38 states and 42 transitions. [2018-11-14 18:55:56,741 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-14 18:55:56,741 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2018-11-14 18:55:56,742 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2018-11-14 18:55:56,742 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:56,742 INFO L375 BasicCegarLoop]: trace histogram [6, 3, 3, 3, 3, 3, 3, 3, 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] [2018-11-14 18:55:56,742 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:56,742 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:56,743 INFO L82 PathProgramCache]: Analyzing trace with hash -1013487801, now seen corresponding path program 2 times [2018-11-14 18:55:56,743 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:56,743 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:56,744 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:56,744 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:55:56,744 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:56,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:57,241 INFO L256 TraceCheckUtils]: 0: Hoare triple {1277#true} call ULTIMATE.init(); {1277#true} is VALID [2018-11-14 18:55:57,242 INFO L273 TraceCheckUtils]: 1: Hoare triple {1277#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1277#true} is VALID [2018-11-14 18:55:57,242 INFO L273 TraceCheckUtils]: 2: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,242 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1277#true} {1277#true} #69#return; {1277#true} is VALID [2018-11-14 18:55:57,242 INFO L256 TraceCheckUtils]: 4: Hoare triple {1277#true} call #t~ret12 := main(); {1277#true} is VALID [2018-11-14 18:55:57,248 INFO L273 TraceCheckUtils]: 5: Hoare triple {1277#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1279#(= main_~i~1 0)} is VALID [2018-11-14 18:55:57,249 INFO L273 TraceCheckUtils]: 6: Hoare triple {1279#(= main_~i~1 0)} assume true; {1279#(= main_~i~1 0)} is VALID [2018-11-14 18:55:57,250 INFO L273 TraceCheckUtils]: 7: Hoare triple {1279#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1279#(= main_~i~1 0)} is VALID [2018-11-14 18:55:57,251 INFO L273 TraceCheckUtils]: 8: Hoare triple {1279#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:57,251 INFO L273 TraceCheckUtils]: 9: Hoare triple {1280#(<= main_~i~1 1)} assume true; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:57,254 INFO L273 TraceCheckUtils]: 10: Hoare triple {1280#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:57,254 INFO L273 TraceCheckUtils]: 11: Hoare triple {1280#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:57,256 INFO L273 TraceCheckUtils]: 12: Hoare triple {1281#(<= main_~i~1 2)} assume true; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:57,256 INFO L273 TraceCheckUtils]: 13: Hoare triple {1281#(<= main_~i~1 2)} assume !(~i~1 < 10000); {1278#false} is VALID [2018-11-14 18:55:57,256 INFO L256 TraceCheckUtils]: 14: Hoare triple {1278#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {1277#true} is VALID [2018-11-14 18:55:57,257 INFO L273 TraceCheckUtils]: 15: Hoare triple {1277#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1277#true} is VALID [2018-11-14 18:55:57,257 INFO L273 TraceCheckUtils]: 16: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,257 INFO L273 TraceCheckUtils]: 17: Hoare triple {1277#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1277#true} is VALID [2018-11-14 18:55:57,257 INFO L273 TraceCheckUtils]: 18: Hoare triple {1277#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1277#true} is VALID [2018-11-14 18:55:57,257 INFO L273 TraceCheckUtils]: 19: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,258 INFO L273 TraceCheckUtils]: 20: Hoare triple {1277#true} assume !(~i~0 < 10000); {1277#true} is VALID [2018-11-14 18:55:57,258 INFO L273 TraceCheckUtils]: 21: Hoare triple {1277#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1277#true} is VALID [2018-11-14 18:55:57,258 INFO L273 TraceCheckUtils]: 22: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,258 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1277#true} {1278#false} #73#return; {1278#false} is VALID [2018-11-14 18:55:57,259 INFO L273 TraceCheckUtils]: 24: Hoare triple {1278#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1278#false} is VALID [2018-11-14 18:55:57,259 INFO L256 TraceCheckUtils]: 25: Hoare triple {1278#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {1277#true} is VALID [2018-11-14 18:55:57,259 INFO L273 TraceCheckUtils]: 26: Hoare triple {1277#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1277#true} is VALID [2018-11-14 18:55:57,260 INFO L273 TraceCheckUtils]: 27: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,260 INFO L273 TraceCheckUtils]: 28: Hoare triple {1277#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1277#true} is VALID [2018-11-14 18:55:57,260 INFO L273 TraceCheckUtils]: 29: Hoare triple {1277#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1277#true} is VALID [2018-11-14 18:55:57,261 INFO L273 TraceCheckUtils]: 30: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,261 INFO L273 TraceCheckUtils]: 31: Hoare triple {1277#true} assume !(~i~0 < 10000); {1277#true} is VALID [2018-11-14 18:55:57,261 INFO L273 TraceCheckUtils]: 32: Hoare triple {1277#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1277#true} is VALID [2018-11-14 18:55:57,261 INFO L273 TraceCheckUtils]: 33: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,261 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {1277#true} {1278#false} #75#return; {1278#false} is VALID [2018-11-14 18:55:57,262 INFO L273 TraceCheckUtils]: 35: Hoare triple {1278#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1278#false} is VALID [2018-11-14 18:55:57,262 INFO L273 TraceCheckUtils]: 36: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,262 INFO L273 TraceCheckUtils]: 37: Hoare triple {1278#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1278#false} is VALID [2018-11-14 18:55:57,262 INFO L273 TraceCheckUtils]: 38: Hoare triple {1278#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1278#false} is VALID [2018-11-14 18:55:57,262 INFO L273 TraceCheckUtils]: 39: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,262 INFO L273 TraceCheckUtils]: 40: Hoare triple {1278#false} assume !(~i~2 < 9999); {1278#false} is VALID [2018-11-14 18:55:57,263 INFO L273 TraceCheckUtils]: 41: Hoare triple {1278#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {1278#false} is VALID [2018-11-14 18:55:57,263 INFO L256 TraceCheckUtils]: 42: Hoare triple {1278#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {1277#true} is VALID [2018-11-14 18:55:57,263 INFO L273 TraceCheckUtils]: 43: Hoare triple {1277#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1277#true} is VALID [2018-11-14 18:55:57,263 INFO L273 TraceCheckUtils]: 44: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,263 INFO L273 TraceCheckUtils]: 45: Hoare triple {1277#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1277#true} is VALID [2018-11-14 18:55:57,264 INFO L273 TraceCheckUtils]: 46: Hoare triple {1277#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1277#true} is VALID [2018-11-14 18:55:57,264 INFO L273 TraceCheckUtils]: 47: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,264 INFO L273 TraceCheckUtils]: 48: Hoare triple {1277#true} assume !(~i~0 < 10000); {1277#true} is VALID [2018-11-14 18:55:57,264 INFO L273 TraceCheckUtils]: 49: Hoare triple {1277#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1277#true} is VALID [2018-11-14 18:55:57,264 INFO L273 TraceCheckUtils]: 50: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,264 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {1277#true} {1278#false} #77#return; {1278#false} is VALID [2018-11-14 18:55:57,265 INFO L273 TraceCheckUtils]: 52: Hoare triple {1278#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1278#false} is VALID [2018-11-14 18:55:57,265 INFO L273 TraceCheckUtils]: 53: Hoare triple {1278#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1278#false} is VALID [2018-11-14 18:55:57,265 INFO L273 TraceCheckUtils]: 54: Hoare triple {1278#false} assume !false; {1278#false} is VALID [2018-11-14 18:55:57,268 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:55:57,269 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:55:57,269 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-14 18:55:57,278 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:55:57,321 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:55:57,321 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:55:57,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:57,349 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:55:57,503 INFO L256 TraceCheckUtils]: 0: Hoare triple {1277#true} call ULTIMATE.init(); {1277#true} is VALID [2018-11-14 18:55:57,504 INFO L273 TraceCheckUtils]: 1: Hoare triple {1277#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1277#true} is VALID [2018-11-14 18:55:57,504 INFO L273 TraceCheckUtils]: 2: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 18:55:57,505 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1277#true} {1277#true} #69#return; {1277#true} is VALID [2018-11-14 18:55:57,505 INFO L256 TraceCheckUtils]: 4: Hoare triple {1277#true} call #t~ret12 := main(); {1277#true} is VALID [2018-11-14 18:55:57,512 INFO L273 TraceCheckUtils]: 5: Hoare triple {1277#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1300#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:57,512 INFO L273 TraceCheckUtils]: 6: Hoare triple {1300#(<= main_~i~1 0)} assume true; {1300#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:57,513 INFO L273 TraceCheckUtils]: 7: Hoare triple {1300#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1300#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:57,514 INFO L273 TraceCheckUtils]: 8: Hoare triple {1300#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:57,514 INFO L273 TraceCheckUtils]: 9: Hoare triple {1280#(<= main_~i~1 1)} assume true; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:57,514 INFO L273 TraceCheckUtils]: 10: Hoare triple {1280#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:57,515 INFO L273 TraceCheckUtils]: 11: Hoare triple {1280#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:57,515 INFO L273 TraceCheckUtils]: 12: Hoare triple {1281#(<= main_~i~1 2)} assume true; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:57,516 INFO L273 TraceCheckUtils]: 13: Hoare triple {1281#(<= main_~i~1 2)} assume !(~i~1 < 10000); {1278#false} is VALID [2018-11-14 18:55:57,516 INFO L256 TraceCheckUtils]: 14: Hoare triple {1278#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {1278#false} is VALID [2018-11-14 18:55:57,516 INFO L273 TraceCheckUtils]: 15: Hoare triple {1278#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1278#false} is VALID [2018-11-14 18:55:57,517 INFO L273 TraceCheckUtils]: 16: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,517 INFO L273 TraceCheckUtils]: 17: Hoare triple {1278#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1278#false} is VALID [2018-11-14 18:55:57,517 INFO L273 TraceCheckUtils]: 18: Hoare triple {1278#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1278#false} is VALID [2018-11-14 18:55:57,517 INFO L273 TraceCheckUtils]: 19: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,517 INFO L273 TraceCheckUtils]: 20: Hoare triple {1278#false} assume !(~i~0 < 10000); {1278#false} is VALID [2018-11-14 18:55:57,518 INFO L273 TraceCheckUtils]: 21: Hoare triple {1278#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1278#false} is VALID [2018-11-14 18:55:57,518 INFO L273 TraceCheckUtils]: 22: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,519 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1278#false} {1278#false} #73#return; {1278#false} is VALID [2018-11-14 18:55:57,519 INFO L273 TraceCheckUtils]: 24: Hoare triple {1278#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1278#false} is VALID [2018-11-14 18:55:57,519 INFO L256 TraceCheckUtils]: 25: Hoare triple {1278#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {1278#false} is VALID [2018-11-14 18:55:57,520 INFO L273 TraceCheckUtils]: 26: Hoare triple {1278#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1278#false} is VALID [2018-11-14 18:55:57,520 INFO L273 TraceCheckUtils]: 27: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,520 INFO L273 TraceCheckUtils]: 28: Hoare triple {1278#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1278#false} is VALID [2018-11-14 18:55:57,520 INFO L273 TraceCheckUtils]: 29: Hoare triple {1278#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1278#false} is VALID [2018-11-14 18:55:57,521 INFO L273 TraceCheckUtils]: 30: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,521 INFO L273 TraceCheckUtils]: 31: Hoare triple {1278#false} assume !(~i~0 < 10000); {1278#false} is VALID [2018-11-14 18:55:57,521 INFO L273 TraceCheckUtils]: 32: Hoare triple {1278#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1278#false} is VALID [2018-11-14 18:55:57,521 INFO L273 TraceCheckUtils]: 33: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,522 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {1278#false} {1278#false} #75#return; {1278#false} is VALID [2018-11-14 18:55:57,522 INFO L273 TraceCheckUtils]: 35: Hoare triple {1278#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1278#false} is VALID [2018-11-14 18:55:57,522 INFO L273 TraceCheckUtils]: 36: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,522 INFO L273 TraceCheckUtils]: 37: Hoare triple {1278#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1278#false} is VALID [2018-11-14 18:55:57,523 INFO L273 TraceCheckUtils]: 38: Hoare triple {1278#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1278#false} is VALID [2018-11-14 18:55:57,523 INFO L273 TraceCheckUtils]: 39: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,523 INFO L273 TraceCheckUtils]: 40: Hoare triple {1278#false} assume !(~i~2 < 9999); {1278#false} is VALID [2018-11-14 18:55:57,523 INFO L273 TraceCheckUtils]: 41: Hoare triple {1278#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {1278#false} is VALID [2018-11-14 18:55:57,524 INFO L256 TraceCheckUtils]: 42: Hoare triple {1278#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {1278#false} is VALID [2018-11-14 18:55:57,524 INFO L273 TraceCheckUtils]: 43: Hoare triple {1278#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1278#false} is VALID [2018-11-14 18:55:57,524 INFO L273 TraceCheckUtils]: 44: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,524 INFO L273 TraceCheckUtils]: 45: Hoare triple {1278#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1278#false} is VALID [2018-11-14 18:55:57,524 INFO L273 TraceCheckUtils]: 46: Hoare triple {1278#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1278#false} is VALID [2018-11-14 18:55:57,525 INFO L273 TraceCheckUtils]: 47: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,525 INFO L273 TraceCheckUtils]: 48: Hoare triple {1278#false} assume !(~i~0 < 10000); {1278#false} is VALID [2018-11-14 18:55:57,525 INFO L273 TraceCheckUtils]: 49: Hoare triple {1278#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1278#false} is VALID [2018-11-14 18:55:57,525 INFO L273 TraceCheckUtils]: 50: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 18:55:57,526 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {1278#false} {1278#false} #77#return; {1278#false} is VALID [2018-11-14 18:55:57,526 INFO L273 TraceCheckUtils]: 52: Hoare triple {1278#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1278#false} is VALID [2018-11-14 18:55:57,526 INFO L273 TraceCheckUtils]: 53: Hoare triple {1278#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1278#false} is VALID [2018-11-14 18:55:57,526 INFO L273 TraceCheckUtils]: 54: Hoare triple {1278#false} assume !false; {1278#false} is VALID [2018-11-14 18:55:57,530 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:55:57,550 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:55:57,550 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 6 [2018-11-14 18:55:57,551 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2018-11-14 18:55:57,551 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:55:57,552 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-14 18:55:57,612 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-14 18:55:57,612 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-14 18:55:57,613 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-14 18:55:57,613 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-14 18:55:57,613 INFO L87 Difference]: Start difference. First operand 38 states and 42 transitions. Second operand 6 states. [2018-11-14 18:55:57,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:57,795 INFO L93 Difference]: Finished difference Result 66 states and 74 transitions. [2018-11-14 18:55:57,796 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-14 18:55:57,796 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2018-11-14 18:55:57,796 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:55:57,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 18:55:57,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2018-11-14 18:55:57,798 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 18:55:57,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2018-11-14 18:55:57,801 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 66 transitions. [2018-11-14 18:55:57,941 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:57,943 INFO L225 Difference]: With dead ends: 66 [2018-11-14 18:55:57,943 INFO L226 Difference]: Without dead ends: 42 [2018-11-14 18:55:57,944 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 55 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-14 18:55:57,945 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2018-11-14 18:55:57,966 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2018-11-14 18:55:57,967 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:55:57,967 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand 41 states. [2018-11-14 18:55:57,967 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 41 states. [2018-11-14 18:55:57,967 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 41 states. [2018-11-14 18:55:57,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:57,970 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2018-11-14 18:55:57,971 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2018-11-14 18:55:57,971 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:57,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:57,971 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 42 states. [2018-11-14 18:55:57,971 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 42 states. [2018-11-14 18:55:57,974 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:57,974 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2018-11-14 18:55:57,974 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2018-11-14 18:55:57,974 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:57,975 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:57,975 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:55:57,975 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:55:57,975 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-14 18:55:57,977 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2018-11-14 18:55:57,977 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 55 [2018-11-14 18:55:57,978 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:55:57,978 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2018-11-14 18:55:57,978 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-14 18:55:57,978 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2018-11-14 18:55:57,979 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-14 18:55:57,979 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:57,979 INFO L375 BasicCegarLoop]: trace histogram [6, 4, 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, 1, 1, 1, 1, 1, 1] [2018-11-14 18:55:57,979 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:57,980 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:57,980 INFO L82 PathProgramCache]: Analyzing trace with hash -1574795812, now seen corresponding path program 3 times [2018-11-14 18:55:57,980 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:57,980 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:57,981 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:57,981 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:55:57,981 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:58,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:58,163 INFO L256 TraceCheckUtils]: 0: Hoare triple {1678#true} call ULTIMATE.init(); {1678#true} is VALID [2018-11-14 18:55:58,163 INFO L273 TraceCheckUtils]: 1: Hoare triple {1678#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1678#true} is VALID [2018-11-14 18:55:58,164 INFO L273 TraceCheckUtils]: 2: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,164 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1678#true} {1678#true} #69#return; {1678#true} is VALID [2018-11-14 18:55:58,164 INFO L256 TraceCheckUtils]: 4: Hoare triple {1678#true} call #t~ret12 := main(); {1678#true} is VALID [2018-11-14 18:55:58,165 INFO L273 TraceCheckUtils]: 5: Hoare triple {1678#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1680#(= main_~i~1 0)} is VALID [2018-11-14 18:55:58,165 INFO L273 TraceCheckUtils]: 6: Hoare triple {1680#(= main_~i~1 0)} assume true; {1680#(= main_~i~1 0)} is VALID [2018-11-14 18:55:58,166 INFO L273 TraceCheckUtils]: 7: Hoare triple {1680#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1680#(= main_~i~1 0)} is VALID [2018-11-14 18:55:58,167 INFO L273 TraceCheckUtils]: 8: Hoare triple {1680#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1681#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:58,168 INFO L273 TraceCheckUtils]: 9: Hoare triple {1681#(<= main_~i~1 1)} assume true; {1681#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:58,168 INFO L273 TraceCheckUtils]: 10: Hoare triple {1681#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1681#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:58,169 INFO L273 TraceCheckUtils]: 11: Hoare triple {1681#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1682#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:58,170 INFO L273 TraceCheckUtils]: 12: Hoare triple {1682#(<= main_~i~1 2)} assume true; {1682#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:58,171 INFO L273 TraceCheckUtils]: 13: Hoare triple {1682#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1682#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:58,172 INFO L273 TraceCheckUtils]: 14: Hoare triple {1682#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1683#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:58,172 INFO L273 TraceCheckUtils]: 15: Hoare triple {1683#(<= main_~i~1 3)} assume true; {1683#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:58,173 INFO L273 TraceCheckUtils]: 16: Hoare triple {1683#(<= main_~i~1 3)} assume !(~i~1 < 10000); {1679#false} is VALID [2018-11-14 18:55:58,174 INFO L256 TraceCheckUtils]: 17: Hoare triple {1679#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:55:58,174 INFO L273 TraceCheckUtils]: 18: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:55:58,174 INFO L273 TraceCheckUtils]: 19: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,174 INFO L273 TraceCheckUtils]: 20: Hoare triple {1678#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:55:58,175 INFO L273 TraceCheckUtils]: 21: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:55:58,175 INFO L273 TraceCheckUtils]: 22: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,175 INFO L273 TraceCheckUtils]: 23: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 18:55:58,176 INFO L273 TraceCheckUtils]: 24: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:55:58,176 INFO L273 TraceCheckUtils]: 25: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,176 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {1678#true} {1679#false} #73#return; {1679#false} is VALID [2018-11-14 18:55:58,177 INFO L273 TraceCheckUtils]: 27: Hoare triple {1679#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1679#false} is VALID [2018-11-14 18:55:58,177 INFO L256 TraceCheckUtils]: 28: Hoare triple {1679#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:55:58,177 INFO L273 TraceCheckUtils]: 29: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:55:58,177 INFO L273 TraceCheckUtils]: 30: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,177 INFO L273 TraceCheckUtils]: 31: Hoare triple {1678#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:55:58,177 INFO L273 TraceCheckUtils]: 32: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:55:58,178 INFO L273 TraceCheckUtils]: 33: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,178 INFO L273 TraceCheckUtils]: 34: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 18:55:58,178 INFO L273 TraceCheckUtils]: 35: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:55:58,178 INFO L273 TraceCheckUtils]: 36: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,178 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1678#true} {1679#false} #75#return; {1679#false} is VALID [2018-11-14 18:55:58,178 INFO L273 TraceCheckUtils]: 38: Hoare triple {1679#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1679#false} is VALID [2018-11-14 18:55:58,179 INFO L273 TraceCheckUtils]: 39: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 18:55:58,179 INFO L273 TraceCheckUtils]: 40: Hoare triple {1679#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1679#false} is VALID [2018-11-14 18:55:58,179 INFO L273 TraceCheckUtils]: 41: Hoare triple {1679#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1679#false} is VALID [2018-11-14 18:55:58,179 INFO L273 TraceCheckUtils]: 42: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 18:55:58,179 INFO L273 TraceCheckUtils]: 43: Hoare triple {1679#false} assume !(~i~2 < 9999); {1679#false} is VALID [2018-11-14 18:55:58,179 INFO L273 TraceCheckUtils]: 44: Hoare triple {1679#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {1679#false} is VALID [2018-11-14 18:55:58,180 INFO L256 TraceCheckUtils]: 45: Hoare triple {1679#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:55:58,180 INFO L273 TraceCheckUtils]: 46: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:55:58,180 INFO L273 TraceCheckUtils]: 47: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,180 INFO L273 TraceCheckUtils]: 48: Hoare triple {1678#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:55:58,180 INFO L273 TraceCheckUtils]: 49: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:55:58,180 INFO L273 TraceCheckUtils]: 50: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,181 INFO L273 TraceCheckUtils]: 51: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 18:55:58,181 INFO L273 TraceCheckUtils]: 52: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:55:58,181 INFO L273 TraceCheckUtils]: 53: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,181 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1678#true} {1679#false} #77#return; {1679#false} is VALID [2018-11-14 18:55:58,181 INFO L273 TraceCheckUtils]: 55: Hoare triple {1679#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1679#false} is VALID [2018-11-14 18:55:58,181 INFO L273 TraceCheckUtils]: 56: Hoare triple {1679#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1679#false} is VALID [2018-11-14 18:55:58,182 INFO L273 TraceCheckUtils]: 57: Hoare triple {1679#false} assume !false; {1679#false} is VALID [2018-11-14 18:55:58,186 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2018-11-14 18:55:58,186 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:55:58,186 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-14 18:55:58,195 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:55:58,245 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2018-11-14 18:55:58,245 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:55:58,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:58,276 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:55:58,592 INFO L256 TraceCheckUtils]: 0: Hoare triple {1678#true} call ULTIMATE.init(); {1678#true} is VALID [2018-11-14 18:55:58,593 INFO L273 TraceCheckUtils]: 1: Hoare triple {1678#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1678#true} is VALID [2018-11-14 18:55:58,593 INFO L273 TraceCheckUtils]: 2: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,593 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1678#true} {1678#true} #69#return; {1678#true} is VALID [2018-11-14 18:55:58,593 INFO L256 TraceCheckUtils]: 4: Hoare triple {1678#true} call #t~ret12 := main(); {1678#true} is VALID [2018-11-14 18:55:58,594 INFO L273 TraceCheckUtils]: 5: Hoare triple {1678#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1678#true} is VALID [2018-11-14 18:55:58,594 INFO L273 TraceCheckUtils]: 6: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,594 INFO L273 TraceCheckUtils]: 7: Hoare triple {1678#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1678#true} is VALID [2018-11-14 18:55:58,594 INFO L273 TraceCheckUtils]: 8: Hoare triple {1678#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1678#true} is VALID [2018-11-14 18:55:58,595 INFO L273 TraceCheckUtils]: 9: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,595 INFO L273 TraceCheckUtils]: 10: Hoare triple {1678#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1678#true} is VALID [2018-11-14 18:55:58,595 INFO L273 TraceCheckUtils]: 11: Hoare triple {1678#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1678#true} is VALID [2018-11-14 18:55:58,596 INFO L273 TraceCheckUtils]: 12: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,596 INFO L273 TraceCheckUtils]: 13: Hoare triple {1678#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {1678#true} is VALID [2018-11-14 18:55:58,596 INFO L273 TraceCheckUtils]: 14: Hoare triple {1678#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {1678#true} is VALID [2018-11-14 18:55:58,596 INFO L273 TraceCheckUtils]: 15: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,596 INFO L273 TraceCheckUtils]: 16: Hoare triple {1678#true} assume !(~i~1 < 10000); {1678#true} is VALID [2018-11-14 18:55:58,596 INFO L256 TraceCheckUtils]: 17: Hoare triple {1678#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:55:58,597 INFO L273 TraceCheckUtils]: 18: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:55:58,597 INFO L273 TraceCheckUtils]: 19: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,597 INFO L273 TraceCheckUtils]: 20: Hoare triple {1678#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:55:58,597 INFO L273 TraceCheckUtils]: 21: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:55:58,597 INFO L273 TraceCheckUtils]: 22: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,598 INFO L273 TraceCheckUtils]: 23: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 18:55:58,598 INFO L273 TraceCheckUtils]: 24: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:55:58,598 INFO L273 TraceCheckUtils]: 25: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,598 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {1678#true} {1678#true} #73#return; {1678#true} is VALID [2018-11-14 18:55:58,598 INFO L273 TraceCheckUtils]: 27: Hoare triple {1678#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {1678#true} is VALID [2018-11-14 18:55:58,599 INFO L256 TraceCheckUtils]: 28: Hoare triple {1678#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:55:58,599 INFO L273 TraceCheckUtils]: 29: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1678#true} is VALID [2018-11-14 18:55:58,599 INFO L273 TraceCheckUtils]: 30: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,599 INFO L273 TraceCheckUtils]: 31: Hoare triple {1678#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1678#true} is VALID [2018-11-14 18:55:58,599 INFO L273 TraceCheckUtils]: 32: Hoare triple {1678#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1678#true} is VALID [2018-11-14 18:55:58,599 INFO L273 TraceCheckUtils]: 33: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,599 INFO L273 TraceCheckUtils]: 34: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 18:55:58,600 INFO L273 TraceCheckUtils]: 35: Hoare triple {1678#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1678#true} is VALID [2018-11-14 18:55:58,600 INFO L273 TraceCheckUtils]: 36: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,600 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1678#true} {1678#true} #75#return; {1678#true} is VALID [2018-11-14 18:55:58,600 INFO L273 TraceCheckUtils]: 38: Hoare triple {1678#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {1678#true} is VALID [2018-11-14 18:55:58,600 INFO L273 TraceCheckUtils]: 39: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,601 INFO L273 TraceCheckUtils]: 40: Hoare triple {1678#true} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {1678#true} is VALID [2018-11-14 18:55:58,601 INFO L273 TraceCheckUtils]: 41: Hoare triple {1678#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {1678#true} is VALID [2018-11-14 18:55:58,601 INFO L273 TraceCheckUtils]: 42: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 18:55:58,601 INFO L273 TraceCheckUtils]: 43: Hoare triple {1678#true} assume !(~i~2 < 9999); {1678#true} is VALID [2018-11-14 18:55:58,602 INFO L273 TraceCheckUtils]: 44: Hoare triple {1678#true} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {1678#true} is VALID [2018-11-14 18:55:58,602 INFO L256 TraceCheckUtils]: 45: Hoare triple {1678#true} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {1678#true} is VALID [2018-11-14 18:55:58,618 INFO L273 TraceCheckUtils]: 46: Hoare triple {1678#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1825#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:55:58,628 INFO L273 TraceCheckUtils]: 47: Hoare triple {1825#(<= mapavg_~i~0 0)} assume true; {1825#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:55:58,644 INFO L273 TraceCheckUtils]: 48: Hoare triple {1825#(<= mapavg_~i~0 0)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {1825#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:55:58,651 INFO L273 TraceCheckUtils]: 49: Hoare triple {1825#(<= mapavg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {1835#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:55:58,652 INFO L273 TraceCheckUtils]: 50: Hoare triple {1835#(<= mapavg_~i~0 1)} assume true; {1835#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:55:58,652 INFO L273 TraceCheckUtils]: 51: Hoare triple {1835#(<= mapavg_~i~0 1)} assume !(~i~0 < 10000); {1679#false} is VALID [2018-11-14 18:55:58,652 INFO L273 TraceCheckUtils]: 52: Hoare triple {1679#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {1679#false} is VALID [2018-11-14 18:55:58,652 INFO L273 TraceCheckUtils]: 53: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 18:55:58,653 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1679#false} {1678#true} #77#return; {1679#false} is VALID [2018-11-14 18:55:58,653 INFO L273 TraceCheckUtils]: 55: Hoare triple {1679#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {1679#false} is VALID [2018-11-14 18:55:58,653 INFO L273 TraceCheckUtils]: 56: Hoare triple {1679#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1679#false} is VALID [2018-11-14 18:55:58,653 INFO L273 TraceCheckUtils]: 57: Hoare triple {1679#false} assume !false; {1679#false} is VALID [2018-11-14 18:55:58,654 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 24 proven. 2 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2018-11-14 18:55:58,676 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:55:58,676 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 4] total 8 [2018-11-14 18:55:58,677 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 58 [2018-11-14 18:55:58,678 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:55:58,678 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-14 18:55:58,802 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:58,802 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-14 18:55:58,802 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-14 18:55:58,802 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:55:58,803 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand 8 states. [2018-11-14 18:55:59,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:59,190 INFO L93 Difference]: Finished difference Result 73 states and 85 transitions. [2018-11-14 18:55:59,190 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-14 18:55:59,190 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 58 [2018-11-14 18:55:59,190 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:55:59,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:55:59,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2018-11-14 18:55:59,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:55:59,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2018-11-14 18:55:59,195 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 79 transitions. [2018-11-14 18:55:59,310 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:55:59,313 INFO L225 Difference]: With dead ends: 73 [2018-11-14 18:55:59,313 INFO L226 Difference]: Without dead ends: 49 [2018-11-14 18:55:59,314 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:55:59,314 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2018-11-14 18:55:59,332 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 47. [2018-11-14 18:55:59,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:55:59,332 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand 47 states. [2018-11-14 18:55:59,333 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 47 states. [2018-11-14 18:55:59,333 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 47 states. [2018-11-14 18:55:59,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:59,336 INFO L93 Difference]: Finished difference Result 49 states and 53 transitions. [2018-11-14 18:55:59,336 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 53 transitions. [2018-11-14 18:55:59,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:59,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:59,337 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 49 states. [2018-11-14 18:55:59,337 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 49 states. [2018-11-14 18:55:59,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:55:59,339 INFO L93 Difference]: Finished difference Result 49 states and 53 transitions. [2018-11-14 18:55:59,339 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 53 transitions. [2018-11-14 18:55:59,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:55:59,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:55:59,340 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:55:59,340 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:55:59,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-14 18:55:59,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2018-11-14 18:55:59,343 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 51 transitions. Word has length 58 [2018-11-14 18:55:59,343 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:55:59,343 INFO L480 AbstractCegarLoop]: Abstraction has 47 states and 51 transitions. [2018-11-14 18:55:59,343 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-14 18:55:59,343 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2018-11-14 18:55:59,344 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2018-11-14 18:55:59,344 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:55:59,345 INFO L375 BasicCegarLoop]: trace histogram [9, 6, 6, 5, 4, 4, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:55:59,345 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:55:59,345 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:55:59,345 INFO L82 PathProgramCache]: Analyzing trace with hash -370044124, now seen corresponding path program 4 times [2018-11-14 18:55:59,345 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:55:59,346 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:55:59,346 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:59,347 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:55:59,347 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:55:59,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:59,717 INFO L256 TraceCheckUtils]: 0: Hoare triple {2121#true} call ULTIMATE.init(); {2121#true} is VALID [2018-11-14 18:55:59,717 INFO L273 TraceCheckUtils]: 1: Hoare triple {2121#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2121#true} is VALID [2018-11-14 18:55:59,718 INFO L273 TraceCheckUtils]: 2: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,718 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2121#true} {2121#true} #69#return; {2121#true} is VALID [2018-11-14 18:55:59,718 INFO L256 TraceCheckUtils]: 4: Hoare triple {2121#true} call #t~ret12 := main(); {2121#true} is VALID [2018-11-14 18:55:59,719 INFO L273 TraceCheckUtils]: 5: Hoare triple {2121#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2123#(= main_~i~1 0)} is VALID [2018-11-14 18:55:59,720 INFO L273 TraceCheckUtils]: 6: Hoare triple {2123#(= main_~i~1 0)} assume true; {2123#(= main_~i~1 0)} is VALID [2018-11-14 18:55:59,720 INFO L273 TraceCheckUtils]: 7: Hoare triple {2123#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2123#(= main_~i~1 0)} is VALID [2018-11-14 18:55:59,721 INFO L273 TraceCheckUtils]: 8: Hoare triple {2123#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:59,721 INFO L273 TraceCheckUtils]: 9: Hoare triple {2124#(<= main_~i~1 1)} assume true; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:59,722 INFO L273 TraceCheckUtils]: 10: Hoare triple {2124#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:59,722 INFO L273 TraceCheckUtils]: 11: Hoare triple {2124#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:59,724 INFO L273 TraceCheckUtils]: 12: Hoare triple {2125#(<= main_~i~1 2)} assume true; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:59,724 INFO L273 TraceCheckUtils]: 13: Hoare triple {2125#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:59,725 INFO L273 TraceCheckUtils]: 14: Hoare triple {2125#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:59,725 INFO L273 TraceCheckUtils]: 15: Hoare triple {2126#(<= main_~i~1 3)} assume true; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:59,726 INFO L273 TraceCheckUtils]: 16: Hoare triple {2126#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:59,726 INFO L273 TraceCheckUtils]: 17: Hoare triple {2126#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:55:59,727 INFO L273 TraceCheckUtils]: 18: Hoare triple {2127#(<= main_~i~1 4)} assume true; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:55:59,728 INFO L273 TraceCheckUtils]: 19: Hoare triple {2127#(<= main_~i~1 4)} assume !(~i~1 < 10000); {2122#false} is VALID [2018-11-14 18:55:59,728 INFO L256 TraceCheckUtils]: 20: Hoare triple {2122#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {2121#true} is VALID [2018-11-14 18:55:59,728 INFO L273 TraceCheckUtils]: 21: Hoare triple {2121#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2121#true} is VALID [2018-11-14 18:55:59,729 INFO L273 TraceCheckUtils]: 22: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,729 INFO L273 TraceCheckUtils]: 23: Hoare triple {2121#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:55:59,729 INFO L273 TraceCheckUtils]: 24: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:55:59,729 INFO L273 TraceCheckUtils]: 25: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,730 INFO L273 TraceCheckUtils]: 26: Hoare triple {2121#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:55:59,730 INFO L273 TraceCheckUtils]: 27: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:55:59,730 INFO L273 TraceCheckUtils]: 28: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,730 INFO L273 TraceCheckUtils]: 29: Hoare triple {2121#true} assume !(~i~0 < 10000); {2121#true} is VALID [2018-11-14 18:55:59,731 INFO L273 TraceCheckUtils]: 30: Hoare triple {2121#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2121#true} is VALID [2018-11-14 18:55:59,731 INFO L273 TraceCheckUtils]: 31: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,731 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2121#true} {2122#false} #73#return; {2122#false} is VALID [2018-11-14 18:55:59,732 INFO L273 TraceCheckUtils]: 33: Hoare triple {2122#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2122#false} is VALID [2018-11-14 18:55:59,732 INFO L256 TraceCheckUtils]: 34: Hoare triple {2122#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {2121#true} is VALID [2018-11-14 18:55:59,732 INFO L273 TraceCheckUtils]: 35: Hoare triple {2121#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2121#true} is VALID [2018-11-14 18:55:59,732 INFO L273 TraceCheckUtils]: 36: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,733 INFO L273 TraceCheckUtils]: 37: Hoare triple {2121#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:55:59,733 INFO L273 TraceCheckUtils]: 38: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:55:59,733 INFO L273 TraceCheckUtils]: 39: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,733 INFO L273 TraceCheckUtils]: 40: Hoare triple {2121#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:55:59,733 INFO L273 TraceCheckUtils]: 41: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:55:59,734 INFO L273 TraceCheckUtils]: 42: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,734 INFO L273 TraceCheckUtils]: 43: Hoare triple {2121#true} assume !(~i~0 < 10000); {2121#true} is VALID [2018-11-14 18:55:59,734 INFO L273 TraceCheckUtils]: 44: Hoare triple {2121#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2121#true} is VALID [2018-11-14 18:55:59,734 INFO L273 TraceCheckUtils]: 45: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,734 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {2121#true} {2122#false} #75#return; {2122#false} is VALID [2018-11-14 18:55:59,734 INFO L273 TraceCheckUtils]: 47: Hoare triple {2122#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2122#false} is VALID [2018-11-14 18:55:59,735 INFO L273 TraceCheckUtils]: 48: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,735 INFO L273 TraceCheckUtils]: 49: Hoare triple {2122#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2122#false} is VALID [2018-11-14 18:55:59,735 INFO L273 TraceCheckUtils]: 50: Hoare triple {2122#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2122#false} is VALID [2018-11-14 18:55:59,735 INFO L273 TraceCheckUtils]: 51: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,735 INFO L273 TraceCheckUtils]: 52: Hoare triple {2122#false} assume !(~i~2 < 9999); {2122#false} is VALID [2018-11-14 18:55:59,735 INFO L273 TraceCheckUtils]: 53: Hoare triple {2122#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {2122#false} is VALID [2018-11-14 18:55:59,736 INFO L256 TraceCheckUtils]: 54: Hoare triple {2122#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {2121#true} is VALID [2018-11-14 18:55:59,736 INFO L273 TraceCheckUtils]: 55: Hoare triple {2121#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2121#true} is VALID [2018-11-14 18:55:59,736 INFO L273 TraceCheckUtils]: 56: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,736 INFO L273 TraceCheckUtils]: 57: Hoare triple {2121#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:55:59,736 INFO L273 TraceCheckUtils]: 58: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:55:59,736 INFO L273 TraceCheckUtils]: 59: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,737 INFO L273 TraceCheckUtils]: 60: Hoare triple {2121#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2121#true} is VALID [2018-11-14 18:55:59,737 INFO L273 TraceCheckUtils]: 61: Hoare triple {2121#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2121#true} is VALID [2018-11-14 18:55:59,737 INFO L273 TraceCheckUtils]: 62: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,737 INFO L273 TraceCheckUtils]: 63: Hoare triple {2121#true} assume !(~i~0 < 10000); {2121#true} is VALID [2018-11-14 18:55:59,737 INFO L273 TraceCheckUtils]: 64: Hoare triple {2121#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2121#true} is VALID [2018-11-14 18:55:59,737 INFO L273 TraceCheckUtils]: 65: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,738 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {2121#true} {2122#false} #77#return; {2122#false} is VALID [2018-11-14 18:55:59,738 INFO L273 TraceCheckUtils]: 67: Hoare triple {2122#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2122#false} is VALID [2018-11-14 18:55:59,738 INFO L273 TraceCheckUtils]: 68: Hoare triple {2122#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2122#false} is VALID [2018-11-14 18:55:59,738 INFO L273 TraceCheckUtils]: 69: Hoare triple {2122#false} assume !false; {2122#false} is VALID [2018-11-14 18:55:59,743 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 101 trivial. 0 not checked. [2018-11-14 18:55:59,743 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:55:59,743 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-14 18:55:59,755 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:55:59,794 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:55:59,794 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:55:59,811 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:55:59,813 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:55:59,978 INFO L256 TraceCheckUtils]: 0: Hoare triple {2121#true} call ULTIMATE.init(); {2121#true} is VALID [2018-11-14 18:55:59,979 INFO L273 TraceCheckUtils]: 1: Hoare triple {2121#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2121#true} is VALID [2018-11-14 18:55:59,979 INFO L273 TraceCheckUtils]: 2: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 18:55:59,979 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2121#true} {2121#true} #69#return; {2121#true} is VALID [2018-11-14 18:55:59,980 INFO L256 TraceCheckUtils]: 4: Hoare triple {2121#true} call #t~ret12 := main(); {2121#true} is VALID [2018-11-14 18:55:59,981 INFO L273 TraceCheckUtils]: 5: Hoare triple {2121#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2146#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:59,981 INFO L273 TraceCheckUtils]: 6: Hoare triple {2146#(<= main_~i~1 0)} assume true; {2146#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:59,982 INFO L273 TraceCheckUtils]: 7: Hoare triple {2146#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2146#(<= main_~i~1 0)} is VALID [2018-11-14 18:55:59,982 INFO L273 TraceCheckUtils]: 8: Hoare triple {2146#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:59,983 INFO L273 TraceCheckUtils]: 9: Hoare triple {2124#(<= main_~i~1 1)} assume true; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:59,983 INFO L273 TraceCheckUtils]: 10: Hoare triple {2124#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 18:55:59,984 INFO L273 TraceCheckUtils]: 11: Hoare triple {2124#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:59,984 INFO L273 TraceCheckUtils]: 12: Hoare triple {2125#(<= main_~i~1 2)} assume true; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:59,985 INFO L273 TraceCheckUtils]: 13: Hoare triple {2125#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 18:55:59,985 INFO L273 TraceCheckUtils]: 14: Hoare triple {2125#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:59,986 INFO L273 TraceCheckUtils]: 15: Hoare triple {2126#(<= main_~i~1 3)} assume true; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:59,986 INFO L273 TraceCheckUtils]: 16: Hoare triple {2126#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 18:55:59,987 INFO L273 TraceCheckUtils]: 17: Hoare triple {2126#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:55:59,988 INFO L273 TraceCheckUtils]: 18: Hoare triple {2127#(<= main_~i~1 4)} assume true; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 18:55:59,988 INFO L273 TraceCheckUtils]: 19: Hoare triple {2127#(<= main_~i~1 4)} assume !(~i~1 < 10000); {2122#false} is VALID [2018-11-14 18:55:59,989 INFO L256 TraceCheckUtils]: 20: Hoare triple {2122#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {2122#false} is VALID [2018-11-14 18:55:59,989 INFO L273 TraceCheckUtils]: 21: Hoare triple {2122#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2122#false} is VALID [2018-11-14 18:55:59,989 INFO L273 TraceCheckUtils]: 22: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,989 INFO L273 TraceCheckUtils]: 23: Hoare triple {2122#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:55:59,989 INFO L273 TraceCheckUtils]: 24: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:55:59,990 INFO L273 TraceCheckUtils]: 25: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,990 INFO L273 TraceCheckUtils]: 26: Hoare triple {2122#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:55:59,990 INFO L273 TraceCheckUtils]: 27: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:55:59,990 INFO L273 TraceCheckUtils]: 28: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,990 INFO L273 TraceCheckUtils]: 29: Hoare triple {2122#false} assume !(~i~0 < 10000); {2122#false} is VALID [2018-11-14 18:55:59,991 INFO L273 TraceCheckUtils]: 30: Hoare triple {2122#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2122#false} is VALID [2018-11-14 18:55:59,991 INFO L273 TraceCheckUtils]: 31: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,991 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2122#false} {2122#false} #73#return; {2122#false} is VALID [2018-11-14 18:55:59,991 INFO L273 TraceCheckUtils]: 33: Hoare triple {2122#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L256 TraceCheckUtils]: 34: Hoare triple {2122#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L273 TraceCheckUtils]: 35: Hoare triple {2122#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L273 TraceCheckUtils]: 36: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L273 TraceCheckUtils]: 37: Hoare triple {2122#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L273 TraceCheckUtils]: 38: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L273 TraceCheckUtils]: 39: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L273 TraceCheckUtils]: 40: Hoare triple {2122#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:55:59,992 INFO L273 TraceCheckUtils]: 41: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L273 TraceCheckUtils]: 42: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L273 TraceCheckUtils]: 43: Hoare triple {2122#false} assume !(~i~0 < 10000); {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L273 TraceCheckUtils]: 44: Hoare triple {2122#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L273 TraceCheckUtils]: 45: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {2122#false} {2122#false} #75#return; {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L273 TraceCheckUtils]: 47: Hoare triple {2122#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L273 TraceCheckUtils]: 48: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,993 INFO L273 TraceCheckUtils]: 49: Hoare triple {2122#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L273 TraceCheckUtils]: 50: Hoare triple {2122#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L273 TraceCheckUtils]: 51: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L273 TraceCheckUtils]: 52: Hoare triple {2122#false} assume !(~i~2 < 9999); {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L273 TraceCheckUtils]: 53: Hoare triple {2122#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L256 TraceCheckUtils]: 54: Hoare triple {2122#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L273 TraceCheckUtils]: 55: Hoare triple {2122#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L273 TraceCheckUtils]: 56: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,994 INFO L273 TraceCheckUtils]: 57: Hoare triple {2122#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:55:59,995 INFO L273 TraceCheckUtils]: 58: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:55:59,995 INFO L273 TraceCheckUtils]: 59: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,995 INFO L273 TraceCheckUtils]: 60: Hoare triple {2122#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2122#false} is VALID [2018-11-14 18:55:59,995 INFO L273 TraceCheckUtils]: 61: Hoare triple {2122#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2122#false} is VALID [2018-11-14 18:55:59,995 INFO L273 TraceCheckUtils]: 62: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,996 INFO L273 TraceCheckUtils]: 63: Hoare triple {2122#false} assume !(~i~0 < 10000); {2122#false} is VALID [2018-11-14 18:55:59,996 INFO L273 TraceCheckUtils]: 64: Hoare triple {2122#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2122#false} is VALID [2018-11-14 18:55:59,996 INFO L273 TraceCheckUtils]: 65: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 18:55:59,996 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {2122#false} {2122#false} #77#return; {2122#false} is VALID [2018-11-14 18:55:59,996 INFO L273 TraceCheckUtils]: 67: Hoare triple {2122#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2122#false} is VALID [2018-11-14 18:55:59,996 INFO L273 TraceCheckUtils]: 68: Hoare triple {2122#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2122#false} is VALID [2018-11-14 18:55:59,997 INFO L273 TraceCheckUtils]: 69: Hoare triple {2122#false} assume !false; {2122#false} is VALID [2018-11-14 18:56:00,000 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 101 trivial. 0 not checked. [2018-11-14 18:56:00,026 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:00,026 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2018-11-14 18:56:00,026 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 70 [2018-11-14 18:56:00,027 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:00,027 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-14 18:56:00,170 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-14 18:56:00,170 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-14 18:56:00,171 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-14 18:56:00,171 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:56:00,171 INFO L87 Difference]: Start difference. First operand 47 states and 51 transitions. Second operand 8 states. [2018-11-14 18:56:00,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:00,487 INFO L93 Difference]: Finished difference Result 78 states and 86 transitions. [2018-11-14 18:56:00,487 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-14 18:56:00,488 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 70 [2018-11-14 18:56:00,488 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:00,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:56:00,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 72 transitions. [2018-11-14 18:56:00,490 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 18:56:00,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 72 transitions. [2018-11-14 18:56:00,492 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 72 transitions. [2018-11-14 18:56:00,647 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:00,649 INFO L225 Difference]: With dead ends: 78 [2018-11-14 18:56:00,649 INFO L226 Difference]: Without dead ends: 51 [2018-11-14 18:56:00,651 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 70 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-14 18:56:00,651 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-14 18:56:00,690 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2018-11-14 18:56:00,690 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:00,690 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand 50 states. [2018-11-14 18:56:00,690 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 50 states. [2018-11-14 18:56:00,690 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 50 states. [2018-11-14 18:56:00,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:00,693 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2018-11-14 18:56:00,693 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2018-11-14 18:56:00,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:00,694 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:00,694 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 51 states. [2018-11-14 18:56:00,694 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 51 states. [2018-11-14 18:56:00,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:00,696 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2018-11-14 18:56:00,696 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2018-11-14 18:56:00,697 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:00,697 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:00,697 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:00,697 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:00,697 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-14 18:56:00,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 54 transitions. [2018-11-14 18:56:00,699 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 54 transitions. Word has length 70 [2018-11-14 18:56:00,699 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:00,700 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 54 transitions. [2018-11-14 18:56:00,700 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-14 18:56:00,700 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 54 transitions. [2018-11-14 18:56:00,701 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2018-11-14 18:56:00,701 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:00,701 INFO L375 BasicCegarLoop]: trace histogram [9, 6, 6, 6, 5, 5, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:00,701 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:00,701 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:00,701 INFO L82 PathProgramCache]: Analyzing trace with hash 636278767, now seen corresponding path program 5 times [2018-11-14 18:56:00,702 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:00,702 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:00,702 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:00,703 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:00,703 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:00,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:00,930 INFO L256 TraceCheckUtils]: 0: Hoare triple {2615#true} call ULTIMATE.init(); {2615#true} is VALID [2018-11-14 18:56:00,931 INFO L273 TraceCheckUtils]: 1: Hoare triple {2615#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2615#true} is VALID [2018-11-14 18:56:00,931 INFO L273 TraceCheckUtils]: 2: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,931 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2615#true} {2615#true} #69#return; {2615#true} is VALID [2018-11-14 18:56:00,931 INFO L256 TraceCheckUtils]: 4: Hoare triple {2615#true} call #t~ret12 := main(); {2615#true} is VALID [2018-11-14 18:56:00,932 INFO L273 TraceCheckUtils]: 5: Hoare triple {2615#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2617#(= main_~i~1 0)} is VALID [2018-11-14 18:56:00,932 INFO L273 TraceCheckUtils]: 6: Hoare triple {2617#(= main_~i~1 0)} assume true; {2617#(= main_~i~1 0)} is VALID [2018-11-14 18:56:00,933 INFO L273 TraceCheckUtils]: 7: Hoare triple {2617#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2617#(= main_~i~1 0)} is VALID [2018-11-14 18:56:00,934 INFO L273 TraceCheckUtils]: 8: Hoare triple {2617#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2618#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:00,934 INFO L273 TraceCheckUtils]: 9: Hoare triple {2618#(<= main_~i~1 1)} assume true; {2618#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:00,935 INFO L273 TraceCheckUtils]: 10: Hoare triple {2618#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2618#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:00,936 INFO L273 TraceCheckUtils]: 11: Hoare triple {2618#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2619#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:00,936 INFO L273 TraceCheckUtils]: 12: Hoare triple {2619#(<= main_~i~1 2)} assume true; {2619#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:00,937 INFO L273 TraceCheckUtils]: 13: Hoare triple {2619#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2619#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:00,937 INFO L273 TraceCheckUtils]: 14: Hoare triple {2619#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2620#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:00,938 INFO L273 TraceCheckUtils]: 15: Hoare triple {2620#(<= main_~i~1 3)} assume true; {2620#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:00,939 INFO L273 TraceCheckUtils]: 16: Hoare triple {2620#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2620#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:00,939 INFO L273 TraceCheckUtils]: 17: Hoare triple {2620#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2621#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:00,940 INFO L273 TraceCheckUtils]: 18: Hoare triple {2621#(<= main_~i~1 4)} assume true; {2621#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:00,940 INFO L273 TraceCheckUtils]: 19: Hoare triple {2621#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2621#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:00,941 INFO L273 TraceCheckUtils]: 20: Hoare triple {2621#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2622#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:00,942 INFO L273 TraceCheckUtils]: 21: Hoare triple {2622#(<= main_~i~1 5)} assume true; {2622#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:00,942 INFO L273 TraceCheckUtils]: 22: Hoare triple {2622#(<= main_~i~1 5)} assume !(~i~1 < 10000); {2616#false} is VALID [2018-11-14 18:56:00,943 INFO L256 TraceCheckUtils]: 23: Hoare triple {2616#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:56:00,943 INFO L273 TraceCheckUtils]: 24: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2615#true} is VALID [2018-11-14 18:56:00,943 INFO L273 TraceCheckUtils]: 25: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,943 INFO L273 TraceCheckUtils]: 26: Hoare triple {2615#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:56:00,944 INFO L273 TraceCheckUtils]: 27: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:56:00,944 INFO L273 TraceCheckUtils]: 28: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,944 INFO L273 TraceCheckUtils]: 29: Hoare triple {2615#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:56:00,944 INFO L273 TraceCheckUtils]: 30: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:56:00,944 INFO L273 TraceCheckUtils]: 31: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,945 INFO L273 TraceCheckUtils]: 32: Hoare triple {2615#true} assume !(~i~0 < 10000); {2615#true} is VALID [2018-11-14 18:56:00,945 INFO L273 TraceCheckUtils]: 33: Hoare triple {2615#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2615#true} is VALID [2018-11-14 18:56:00,945 INFO L273 TraceCheckUtils]: 34: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,945 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {2615#true} {2616#false} #73#return; {2616#false} is VALID [2018-11-14 18:56:00,945 INFO L273 TraceCheckUtils]: 36: Hoare triple {2616#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2616#false} is VALID [2018-11-14 18:56:00,945 INFO L256 TraceCheckUtils]: 37: Hoare triple {2616#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:56:00,945 INFO L273 TraceCheckUtils]: 38: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2615#true} is VALID [2018-11-14 18:56:00,945 INFO L273 TraceCheckUtils]: 39: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 40: Hoare triple {2615#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 41: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 42: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 43: Hoare triple {2615#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 44: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 45: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 46: Hoare triple {2615#true} assume !(~i~0 < 10000); {2615#true} is VALID [2018-11-14 18:56:00,946 INFO L273 TraceCheckUtils]: 47: Hoare triple {2615#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2615#true} is VALID [2018-11-14 18:56:00,947 INFO L273 TraceCheckUtils]: 48: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,947 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2615#true} {2616#false} #75#return; {2616#false} is VALID [2018-11-14 18:56:00,947 INFO L273 TraceCheckUtils]: 50: Hoare triple {2616#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2616#false} is VALID [2018-11-14 18:56:00,947 INFO L273 TraceCheckUtils]: 51: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:00,947 INFO L273 TraceCheckUtils]: 52: Hoare triple {2616#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2616#false} is VALID [2018-11-14 18:56:00,947 INFO L273 TraceCheckUtils]: 53: Hoare triple {2616#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2616#false} is VALID [2018-11-14 18:56:00,947 INFO L273 TraceCheckUtils]: 54: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:00,947 INFO L273 TraceCheckUtils]: 55: Hoare triple {2616#false} assume !(~i~2 < 9999); {2616#false} is VALID [2018-11-14 18:56:00,948 INFO L273 TraceCheckUtils]: 56: Hoare triple {2616#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {2616#false} is VALID [2018-11-14 18:56:00,948 INFO L256 TraceCheckUtils]: 57: Hoare triple {2616#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:56:00,948 INFO L273 TraceCheckUtils]: 58: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2615#true} is VALID [2018-11-14 18:56:00,948 INFO L273 TraceCheckUtils]: 59: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,948 INFO L273 TraceCheckUtils]: 60: Hoare triple {2615#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:56:00,948 INFO L273 TraceCheckUtils]: 61: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:56:00,948 INFO L273 TraceCheckUtils]: 62: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,948 INFO L273 TraceCheckUtils]: 63: Hoare triple {2615#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2615#true} is VALID [2018-11-14 18:56:00,949 INFO L273 TraceCheckUtils]: 64: Hoare triple {2615#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2615#true} is VALID [2018-11-14 18:56:00,949 INFO L273 TraceCheckUtils]: 65: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,949 INFO L273 TraceCheckUtils]: 66: Hoare triple {2615#true} assume !(~i~0 < 10000); {2615#true} is VALID [2018-11-14 18:56:00,949 INFO L273 TraceCheckUtils]: 67: Hoare triple {2615#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2615#true} is VALID [2018-11-14 18:56:00,949 INFO L273 TraceCheckUtils]: 68: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:00,950 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {2615#true} {2616#false} #77#return; {2616#false} is VALID [2018-11-14 18:56:00,950 INFO L273 TraceCheckUtils]: 70: Hoare triple {2616#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2616#false} is VALID [2018-11-14 18:56:00,950 INFO L273 TraceCheckUtils]: 71: Hoare triple {2616#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2616#false} is VALID [2018-11-14 18:56:00,950 INFO L273 TraceCheckUtils]: 72: Hoare triple {2616#false} assume !false; {2616#false} is VALID [2018-11-14 18:56:00,953 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 101 trivial. 0 not checked. [2018-11-14 18:56:00,953 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:00,953 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-14 18:56:00,963 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:56:01,027 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2018-11-14 18:56:01,027 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:01,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:01,057 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:01,195 INFO L256 TraceCheckUtils]: 0: Hoare triple {2615#true} call ULTIMATE.init(); {2615#true} is VALID [2018-11-14 18:56:01,195 INFO L273 TraceCheckUtils]: 1: Hoare triple {2615#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2615#true} is VALID [2018-11-14 18:56:01,195 INFO L273 TraceCheckUtils]: 2: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:01,195 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2615#true} {2615#true} #69#return; {2615#true} is VALID [2018-11-14 18:56:01,196 INFO L256 TraceCheckUtils]: 4: Hoare triple {2615#true} call #t~ret12 := main(); {2615#true} is VALID [2018-11-14 18:56:01,196 INFO L273 TraceCheckUtils]: 5: Hoare triple {2615#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2615#true} is VALID [2018-11-14 18:56:01,196 INFO L273 TraceCheckUtils]: 6: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:01,196 INFO L273 TraceCheckUtils]: 7: Hoare triple {2615#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:56:01,197 INFO L273 TraceCheckUtils]: 8: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:56:01,197 INFO L273 TraceCheckUtils]: 9: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:01,197 INFO L273 TraceCheckUtils]: 10: Hoare triple {2615#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:56:01,197 INFO L273 TraceCheckUtils]: 11: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:56:01,197 INFO L273 TraceCheckUtils]: 12: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:01,198 INFO L273 TraceCheckUtils]: 13: Hoare triple {2615#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:56:01,198 INFO L273 TraceCheckUtils]: 14: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:56:01,198 INFO L273 TraceCheckUtils]: 15: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:01,198 INFO L273 TraceCheckUtils]: 16: Hoare triple {2615#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:56:01,198 INFO L273 TraceCheckUtils]: 17: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:56:01,198 INFO L273 TraceCheckUtils]: 18: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:01,198 INFO L273 TraceCheckUtils]: 19: Hoare triple {2615#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {2615#true} is VALID [2018-11-14 18:56:01,199 INFO L273 TraceCheckUtils]: 20: Hoare triple {2615#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {2615#true} is VALID [2018-11-14 18:56:01,199 INFO L273 TraceCheckUtils]: 21: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 18:56:01,199 INFO L273 TraceCheckUtils]: 22: Hoare triple {2615#true} assume !(~i~1 < 10000); {2615#true} is VALID [2018-11-14 18:56:01,199 INFO L256 TraceCheckUtils]: 23: Hoare triple {2615#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {2615#true} is VALID [2018-11-14 18:56:01,199 INFO L273 TraceCheckUtils]: 24: Hoare triple {2615#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2698#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:01,200 INFO L273 TraceCheckUtils]: 25: Hoare triple {2698#(<= mapavg_~i~0 0)} assume true; {2698#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:01,200 INFO L273 TraceCheckUtils]: 26: Hoare triple {2698#(<= mapavg_~i~0 0)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2698#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:01,201 INFO L273 TraceCheckUtils]: 27: Hoare triple {2698#(<= mapavg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2708#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:01,201 INFO L273 TraceCheckUtils]: 28: Hoare triple {2708#(<= mapavg_~i~0 1)} assume true; {2708#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:01,201 INFO L273 TraceCheckUtils]: 29: Hoare triple {2708#(<= mapavg_~i~0 1)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2708#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:01,202 INFO L273 TraceCheckUtils]: 30: Hoare triple {2708#(<= mapavg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2718#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:01,202 INFO L273 TraceCheckUtils]: 31: Hoare triple {2718#(<= mapavg_~i~0 2)} assume true; {2718#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:01,202 INFO L273 TraceCheckUtils]: 32: Hoare triple {2718#(<= mapavg_~i~0 2)} assume !(~i~0 < 10000); {2616#false} is VALID [2018-11-14 18:56:01,203 INFO L273 TraceCheckUtils]: 33: Hoare triple {2616#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2616#false} is VALID [2018-11-14 18:56:01,203 INFO L273 TraceCheckUtils]: 34: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,203 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {2616#false} {2615#true} #73#return; {2616#false} is VALID [2018-11-14 18:56:01,203 INFO L273 TraceCheckUtils]: 36: Hoare triple {2616#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {2616#false} is VALID [2018-11-14 18:56:01,204 INFO L256 TraceCheckUtils]: 37: Hoare triple {2616#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {2616#false} is VALID [2018-11-14 18:56:01,204 INFO L273 TraceCheckUtils]: 38: Hoare triple {2616#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2616#false} is VALID [2018-11-14 18:56:01,204 INFO L273 TraceCheckUtils]: 39: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,205 INFO L273 TraceCheckUtils]: 40: Hoare triple {2616#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:56:01,205 INFO L273 TraceCheckUtils]: 41: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:56:01,205 INFO L273 TraceCheckUtils]: 42: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,206 INFO L273 TraceCheckUtils]: 43: Hoare triple {2616#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:56:01,206 INFO L273 TraceCheckUtils]: 44: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:56:01,206 INFO L273 TraceCheckUtils]: 45: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,207 INFO L273 TraceCheckUtils]: 46: Hoare triple {2616#false} assume !(~i~0 < 10000); {2616#false} is VALID [2018-11-14 18:56:01,207 INFO L273 TraceCheckUtils]: 47: Hoare triple {2616#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2616#false} is VALID [2018-11-14 18:56:01,207 INFO L273 TraceCheckUtils]: 48: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,207 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2616#false} {2616#false} #75#return; {2616#false} is VALID [2018-11-14 18:56:01,207 INFO L273 TraceCheckUtils]: 50: Hoare triple {2616#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {2616#false} is VALID [2018-11-14 18:56:01,208 INFO L273 TraceCheckUtils]: 51: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,208 INFO L273 TraceCheckUtils]: 52: Hoare triple {2616#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {2616#false} is VALID [2018-11-14 18:56:01,208 INFO L273 TraceCheckUtils]: 53: Hoare triple {2616#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {2616#false} is VALID [2018-11-14 18:56:01,208 INFO L273 TraceCheckUtils]: 54: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,209 INFO L273 TraceCheckUtils]: 55: Hoare triple {2616#false} assume !(~i~2 < 9999); {2616#false} is VALID [2018-11-14 18:56:01,209 INFO L273 TraceCheckUtils]: 56: Hoare triple {2616#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {2616#false} is VALID [2018-11-14 18:56:01,209 INFO L256 TraceCheckUtils]: 57: Hoare triple {2616#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {2616#false} is VALID [2018-11-14 18:56:01,209 INFO L273 TraceCheckUtils]: 58: Hoare triple {2616#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2616#false} is VALID [2018-11-14 18:56:01,209 INFO L273 TraceCheckUtils]: 59: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,210 INFO L273 TraceCheckUtils]: 60: Hoare triple {2616#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:56:01,210 INFO L273 TraceCheckUtils]: 61: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:56:01,210 INFO L273 TraceCheckUtils]: 62: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,210 INFO L273 TraceCheckUtils]: 63: Hoare triple {2616#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {2616#false} is VALID [2018-11-14 18:56:01,211 INFO L273 TraceCheckUtils]: 64: Hoare triple {2616#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {2616#false} is VALID [2018-11-14 18:56:01,211 INFO L273 TraceCheckUtils]: 65: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,211 INFO L273 TraceCheckUtils]: 66: Hoare triple {2616#false} assume !(~i~0 < 10000); {2616#false} is VALID [2018-11-14 18:56:01,211 INFO L273 TraceCheckUtils]: 67: Hoare triple {2616#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {2616#false} is VALID [2018-11-14 18:56:01,212 INFO L273 TraceCheckUtils]: 68: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 18:56:01,212 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {2616#false} {2616#false} #77#return; {2616#false} is VALID [2018-11-14 18:56:01,212 INFO L273 TraceCheckUtils]: 70: Hoare triple {2616#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {2616#false} is VALID [2018-11-14 18:56:01,212 INFO L273 TraceCheckUtils]: 71: Hoare triple {2616#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2616#false} is VALID [2018-11-14 18:56:01,212 INFO L273 TraceCheckUtils]: 72: Hoare triple {2616#false} assume !false; {2616#false} is VALID [2018-11-14 18:56:01,218 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 46 proven. 7 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2018-11-14 18:56:01,248 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:01,249 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 5] total 11 [2018-11-14 18:56:01,249 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 73 [2018-11-14 18:56:01,250 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:01,250 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 18:56:01,382 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:01,382 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 18:56:01,382 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 18:56:01,383 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:56:01,383 INFO L87 Difference]: Start difference. First operand 50 states and 54 transitions. Second operand 11 states. [2018-11-14 18:56:02,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:02,025 INFO L93 Difference]: Finished difference Result 85 states and 97 transitions. [2018-11-14 18:56:02,025 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 18:56:02,025 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 73 [2018-11-14 18:56:02,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:02,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:56:02,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2018-11-14 18:56:02,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:56:02,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2018-11-14 18:56:02,030 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 88 transitions. [2018-11-14 18:56:02,117 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:02,119 INFO L225 Difference]: With dead ends: 85 [2018-11-14 18:56:02,119 INFO L226 Difference]: Without dead ends: 58 [2018-11-14 18:56:02,120 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:56:02,120 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2018-11-14 18:56:02,144 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 56. [2018-11-14 18:56:02,144 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:02,144 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand 56 states. [2018-11-14 18:56:02,144 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 56 states. [2018-11-14 18:56:02,144 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 56 states. [2018-11-14 18:56:02,147 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:02,147 INFO L93 Difference]: Finished difference Result 58 states and 62 transitions. [2018-11-14 18:56:02,147 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 62 transitions. [2018-11-14 18:56:02,148 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:02,148 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:02,148 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 58 states. [2018-11-14 18:56:02,148 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 58 states. [2018-11-14 18:56:02,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:02,151 INFO L93 Difference]: Finished difference Result 58 states and 62 transitions. [2018-11-14 18:56:02,151 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 62 transitions. [2018-11-14 18:56:02,152 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:02,152 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:02,152 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:02,152 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:02,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 56 states. [2018-11-14 18:56:02,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 60 transitions. [2018-11-14 18:56:02,154 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 60 transitions. Word has length 73 [2018-11-14 18:56:02,155 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:02,155 INFO L480 AbstractCegarLoop]: Abstraction has 56 states and 60 transitions. [2018-11-14 18:56:02,155 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 18:56:02,155 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 60 transitions. [2018-11-14 18:56:02,156 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2018-11-14 18:56:02,156 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:02,156 INFO L375 BasicCegarLoop]: trace histogram [12, 9, 9, 7, 6, 6, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:02,156 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:02,157 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:02,157 INFO L82 PathProgramCache]: Analyzing trace with hash 1472404135, now seen corresponding path program 6 times [2018-11-14 18:56:02,157 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:02,157 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:02,158 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:02,158 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:02,158 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:02,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:02,446 INFO L256 TraceCheckUtils]: 0: Hoare triple {3152#true} call ULTIMATE.init(); {3152#true} is VALID [2018-11-14 18:56:02,446 INFO L273 TraceCheckUtils]: 1: Hoare triple {3152#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3152#true} is VALID [2018-11-14 18:56:02,446 INFO L273 TraceCheckUtils]: 2: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,447 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3152#true} {3152#true} #69#return; {3152#true} is VALID [2018-11-14 18:56:02,447 INFO L256 TraceCheckUtils]: 4: Hoare triple {3152#true} call #t~ret12 := main(); {3152#true} is VALID [2018-11-14 18:56:02,447 INFO L273 TraceCheckUtils]: 5: Hoare triple {3152#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3154#(= main_~i~1 0)} is VALID [2018-11-14 18:56:02,448 INFO L273 TraceCheckUtils]: 6: Hoare triple {3154#(= main_~i~1 0)} assume true; {3154#(= main_~i~1 0)} is VALID [2018-11-14 18:56:02,450 INFO L273 TraceCheckUtils]: 7: Hoare triple {3154#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3154#(= main_~i~1 0)} is VALID [2018-11-14 18:56:02,450 INFO L273 TraceCheckUtils]: 8: Hoare triple {3154#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3155#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:02,452 INFO L273 TraceCheckUtils]: 9: Hoare triple {3155#(<= main_~i~1 1)} assume true; {3155#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:02,452 INFO L273 TraceCheckUtils]: 10: Hoare triple {3155#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3155#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:02,454 INFO L273 TraceCheckUtils]: 11: Hoare triple {3155#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3156#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:02,454 INFO L273 TraceCheckUtils]: 12: Hoare triple {3156#(<= main_~i~1 2)} assume true; {3156#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:02,456 INFO L273 TraceCheckUtils]: 13: Hoare triple {3156#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3156#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:02,456 INFO L273 TraceCheckUtils]: 14: Hoare triple {3156#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3157#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:02,458 INFO L273 TraceCheckUtils]: 15: Hoare triple {3157#(<= main_~i~1 3)} assume true; {3157#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:02,458 INFO L273 TraceCheckUtils]: 16: Hoare triple {3157#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3157#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:02,460 INFO L273 TraceCheckUtils]: 17: Hoare triple {3157#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3158#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:02,460 INFO L273 TraceCheckUtils]: 18: Hoare triple {3158#(<= main_~i~1 4)} assume true; {3158#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:02,463 INFO L273 TraceCheckUtils]: 19: Hoare triple {3158#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3158#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:02,463 INFO L273 TraceCheckUtils]: 20: Hoare triple {3158#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3159#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:02,465 INFO L273 TraceCheckUtils]: 21: Hoare triple {3159#(<= main_~i~1 5)} assume true; {3159#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:02,465 INFO L273 TraceCheckUtils]: 22: Hoare triple {3159#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3159#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:02,465 INFO L273 TraceCheckUtils]: 23: Hoare triple {3159#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3160#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:02,466 INFO L273 TraceCheckUtils]: 24: Hoare triple {3160#(<= main_~i~1 6)} assume true; {3160#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:02,466 INFO L273 TraceCheckUtils]: 25: Hoare triple {3160#(<= main_~i~1 6)} assume !(~i~1 < 10000); {3153#false} is VALID [2018-11-14 18:56:02,466 INFO L256 TraceCheckUtils]: 26: Hoare triple {3153#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:56:02,466 INFO L273 TraceCheckUtils]: 27: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 28: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 29: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 30: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 31: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 32: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 33: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 34: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,467 INFO L273 TraceCheckUtils]: 35: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,468 INFO L273 TraceCheckUtils]: 36: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,468 INFO L273 TraceCheckUtils]: 37: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,468 INFO L273 TraceCheckUtils]: 38: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 18:56:02,468 INFO L273 TraceCheckUtils]: 39: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:56:02,468 INFO L273 TraceCheckUtils]: 40: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,468 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3152#true} {3153#false} #73#return; {3153#false} is VALID [2018-11-14 18:56:02,468 INFO L273 TraceCheckUtils]: 42: Hoare triple {3153#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3153#false} is VALID [2018-11-14 18:56:02,468 INFO L256 TraceCheckUtils]: 43: Hoare triple {3153#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 44: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 45: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 46: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 47: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 48: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 49: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 50: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,469 INFO L273 TraceCheckUtils]: 51: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 52: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 53: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 54: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 55: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 56: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 57: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,470 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {3152#true} {3153#false} #75#return; {3153#false} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 59: Hoare triple {3153#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3153#false} is VALID [2018-11-14 18:56:02,470 INFO L273 TraceCheckUtils]: 60: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:56:02,471 INFO L273 TraceCheckUtils]: 61: Hoare triple {3153#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3153#false} is VALID [2018-11-14 18:56:02,471 INFO L273 TraceCheckUtils]: 62: Hoare triple {3153#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3153#false} is VALID [2018-11-14 18:56:02,471 INFO L273 TraceCheckUtils]: 63: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:56:02,471 INFO L273 TraceCheckUtils]: 64: Hoare triple {3153#false} assume !(~i~2 < 9999); {3153#false} is VALID [2018-11-14 18:56:02,471 INFO L273 TraceCheckUtils]: 65: Hoare triple {3153#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {3153#false} is VALID [2018-11-14 18:56:02,471 INFO L256 TraceCheckUtils]: 66: Hoare triple {3153#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:56:02,471 INFO L273 TraceCheckUtils]: 67: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:56:02,471 INFO L273 TraceCheckUtils]: 68: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 69: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 70: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 71: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 72: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 73: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 74: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 75: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,472 INFO L273 TraceCheckUtils]: 76: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,473 INFO L273 TraceCheckUtils]: 77: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,473 INFO L273 TraceCheckUtils]: 78: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 18:56:02,473 INFO L273 TraceCheckUtils]: 79: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:56:02,473 INFO L273 TraceCheckUtils]: 80: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,473 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3152#true} {3153#false} #77#return; {3153#false} is VALID [2018-11-14 18:56:02,473 INFO L273 TraceCheckUtils]: 82: Hoare triple {3153#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3153#false} is VALID [2018-11-14 18:56:02,473 INFO L273 TraceCheckUtils]: 83: Hoare triple {3153#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3153#false} is VALID [2018-11-14 18:56:02,473 INFO L273 TraceCheckUtils]: 84: Hoare triple {3153#false} assume !false; {3153#false} is VALID [2018-11-14 18:56:02,477 INFO L134 CoverageAnalysis]: Checked inductivity of 239 backedges. 0 proven. 57 refuted. 0 times theorem prover too weak. 182 trivial. 0 not checked. [2018-11-14 18:56:02,478 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:02,478 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-14 18:56:02,487 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:56:02,573 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2018-11-14 18:56:02,573 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:02,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:02,611 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:02,792 INFO L256 TraceCheckUtils]: 0: Hoare triple {3152#true} call ULTIMATE.init(); {3152#true} is VALID [2018-11-14 18:56:02,792 INFO L273 TraceCheckUtils]: 1: Hoare triple {3152#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3152#true} is VALID [2018-11-14 18:56:02,793 INFO L273 TraceCheckUtils]: 2: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,793 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3152#true} {3152#true} #69#return; {3152#true} is VALID [2018-11-14 18:56:02,793 INFO L256 TraceCheckUtils]: 4: Hoare triple {3152#true} call #t~ret12 := main(); {3152#true} is VALID [2018-11-14 18:56:02,794 INFO L273 TraceCheckUtils]: 5: Hoare triple {3152#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3152#true} is VALID [2018-11-14 18:56:02,794 INFO L273 TraceCheckUtils]: 6: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,794 INFO L273 TraceCheckUtils]: 7: Hoare triple {3152#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:56:02,794 INFO L273 TraceCheckUtils]: 8: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:56:02,794 INFO L273 TraceCheckUtils]: 9: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,795 INFO L273 TraceCheckUtils]: 10: Hoare triple {3152#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:56:02,795 INFO L273 TraceCheckUtils]: 11: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:56:02,795 INFO L273 TraceCheckUtils]: 12: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,795 INFO L273 TraceCheckUtils]: 13: Hoare triple {3152#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:56:02,795 INFO L273 TraceCheckUtils]: 14: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:56:02,795 INFO L273 TraceCheckUtils]: 15: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,795 INFO L273 TraceCheckUtils]: 16: Hoare triple {3152#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 17: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 18: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 19: Hoare triple {3152#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 20: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 21: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 22: Hoare triple {3152#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 23: Hoare triple {3152#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3152#true} is VALID [2018-11-14 18:56:02,796 INFO L273 TraceCheckUtils]: 24: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L273 TraceCheckUtils]: 25: Hoare triple {3152#true} assume !(~i~1 < 10000); {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L256 TraceCheckUtils]: 26: Hoare triple {3152#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L273 TraceCheckUtils]: 27: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L273 TraceCheckUtils]: 28: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L273 TraceCheckUtils]: 29: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L273 TraceCheckUtils]: 30: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L273 TraceCheckUtils]: 31: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,797 INFO L273 TraceCheckUtils]: 32: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 33: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 34: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 35: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 36: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 37: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 38: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 39: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:56:02,798 INFO L273 TraceCheckUtils]: 40: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3152#true} {3152#true} #73#return; {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L273 TraceCheckUtils]: 42: Hoare triple {3152#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L256 TraceCheckUtils]: 43: Hoare triple {3152#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L273 TraceCheckUtils]: 44: Hoare triple {3152#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L273 TraceCheckUtils]: 45: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L273 TraceCheckUtils]: 46: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L273 TraceCheckUtils]: 47: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L273 TraceCheckUtils]: 48: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,799 INFO L273 TraceCheckUtils]: 49: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,800 INFO L273 TraceCheckUtils]: 50: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,800 INFO L273 TraceCheckUtils]: 51: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,800 INFO L273 TraceCheckUtils]: 52: Hoare triple {3152#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3152#true} is VALID [2018-11-14 18:56:02,800 INFO L273 TraceCheckUtils]: 53: Hoare triple {3152#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3152#true} is VALID [2018-11-14 18:56:02,800 INFO L273 TraceCheckUtils]: 54: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,801 INFO L273 TraceCheckUtils]: 55: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 18:56:02,801 INFO L273 TraceCheckUtils]: 56: Hoare triple {3152#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3152#true} is VALID [2018-11-14 18:56:02,801 INFO L273 TraceCheckUtils]: 57: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 18:56:02,801 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {3152#true} {3152#true} #75#return; {3152#true} is VALID [2018-11-14 18:56:02,810 INFO L273 TraceCheckUtils]: 59: Hoare triple {3152#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3341#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:02,810 INFO L273 TraceCheckUtils]: 60: Hoare triple {3341#(<= main_~i~2 0)} assume true; {3341#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:02,811 INFO L273 TraceCheckUtils]: 61: Hoare triple {3341#(<= main_~i~2 0)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3341#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:02,811 INFO L273 TraceCheckUtils]: 62: Hoare triple {3341#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3351#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:02,811 INFO L273 TraceCheckUtils]: 63: Hoare triple {3351#(<= main_~i~2 1)} assume true; {3351#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:02,812 INFO L273 TraceCheckUtils]: 64: Hoare triple {3351#(<= main_~i~2 1)} assume !(~i~2 < 9999); {3153#false} is VALID [2018-11-14 18:56:02,812 INFO L273 TraceCheckUtils]: 65: Hoare triple {3153#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {3153#false} is VALID [2018-11-14 18:56:02,812 INFO L256 TraceCheckUtils]: 66: Hoare triple {3153#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {3153#false} is VALID [2018-11-14 18:56:02,812 INFO L273 TraceCheckUtils]: 67: Hoare triple {3153#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3153#false} is VALID [2018-11-14 18:56:02,812 INFO L273 TraceCheckUtils]: 68: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:56:02,812 INFO L273 TraceCheckUtils]: 69: Hoare triple {3153#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3153#false} is VALID [2018-11-14 18:56:02,813 INFO L273 TraceCheckUtils]: 70: Hoare triple {3153#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3153#false} is VALID [2018-11-14 18:56:02,813 INFO L273 TraceCheckUtils]: 71: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:56:02,813 INFO L273 TraceCheckUtils]: 72: Hoare triple {3153#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3153#false} is VALID [2018-11-14 18:56:02,813 INFO L273 TraceCheckUtils]: 73: Hoare triple {3153#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3153#false} is VALID [2018-11-14 18:56:02,813 INFO L273 TraceCheckUtils]: 74: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:56:02,813 INFO L273 TraceCheckUtils]: 75: Hoare triple {3153#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3153#false} is VALID [2018-11-14 18:56:02,814 INFO L273 TraceCheckUtils]: 76: Hoare triple {3153#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3153#false} is VALID [2018-11-14 18:56:02,814 INFO L273 TraceCheckUtils]: 77: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:56:02,814 INFO L273 TraceCheckUtils]: 78: Hoare triple {3153#false} assume !(~i~0 < 10000); {3153#false} is VALID [2018-11-14 18:56:02,814 INFO L273 TraceCheckUtils]: 79: Hoare triple {3153#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3153#false} is VALID [2018-11-14 18:56:02,814 INFO L273 TraceCheckUtils]: 80: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 18:56:02,815 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3153#false} {3153#false} #77#return; {3153#false} is VALID [2018-11-14 18:56:02,815 INFO L273 TraceCheckUtils]: 82: Hoare triple {3153#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3153#false} is VALID [2018-11-14 18:56:02,815 INFO L273 TraceCheckUtils]: 83: Hoare triple {3153#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3153#false} is VALID [2018-11-14 18:56:02,815 INFO L273 TraceCheckUtils]: 84: Hoare triple {3153#false} assume !false; {3153#false} is VALID [2018-11-14 18:56:02,819 INFO L134 CoverageAnalysis]: Checked inductivity of 239 backedges. 90 proven. 2 refuted. 0 times theorem prover too weak. 147 trivial. 0 not checked. [2018-11-14 18:56:02,841 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:02,841 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 4] total 11 [2018-11-14 18:56:02,842 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 85 [2018-11-14 18:56:02,842 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:02,842 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 18:56:02,949 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:02,949 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 18:56:02,949 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 18:56:02,950 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:56:02,950 INFO L87 Difference]: Start difference. First operand 56 states and 60 transitions. Second operand 11 states. [2018-11-14 18:56:03,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:03,292 INFO L93 Difference]: Finished difference Result 94 states and 103 transitions. [2018-11-14 18:56:03,292 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 18:56:03,292 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 85 [2018-11-14 18:56:03,292 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:03,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:56:03,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-14 18:56:03,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:56:03,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-14 18:56:03,295 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 85 transitions. [2018-11-14 18:56:03,377 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:03,379 INFO L225 Difference]: With dead ends: 94 [2018-11-14 18:56:03,379 INFO L226 Difference]: Without dead ends: 64 [2018-11-14 18:56:03,380 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 84 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:56:03,380 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-14 18:56:03,405 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 62. [2018-11-14 18:56:03,405 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:03,405 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand 62 states. [2018-11-14 18:56:03,405 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 62 states. [2018-11-14 18:56:03,405 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 62 states. [2018-11-14 18:56:03,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:03,407 INFO L93 Difference]: Finished difference Result 64 states and 68 transitions. [2018-11-14 18:56:03,407 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 68 transitions. [2018-11-14 18:56:03,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:03,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:03,408 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand 64 states. [2018-11-14 18:56:03,408 INFO L87 Difference]: Start difference. First operand 62 states. Second operand 64 states. [2018-11-14 18:56:03,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:03,410 INFO L93 Difference]: Finished difference Result 64 states and 68 transitions. [2018-11-14 18:56:03,410 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 68 transitions. [2018-11-14 18:56:03,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:03,411 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:03,411 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:03,411 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:03,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 62 states. [2018-11-14 18:56:03,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 66 transitions. [2018-11-14 18:56:03,413 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 66 transitions. Word has length 85 [2018-11-14 18:56:03,413 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:03,413 INFO L480 AbstractCegarLoop]: Abstraction has 62 states and 66 transitions. [2018-11-14 18:56:03,413 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 18:56:03,413 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 66 transitions. [2018-11-14 18:56:03,414 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2018-11-14 18:56:03,414 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:03,414 INFO L375 BasicCegarLoop]: trace histogram [12, 9, 9, 8, 7, 7, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:03,415 INFO L423 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:03,415 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:03,415 INFO L82 PathProgramCache]: Analyzing trace with hash -1407266017, now seen corresponding path program 7 times [2018-11-14 18:56:03,415 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:03,415 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:03,416 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:03,416 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:03,416 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:03,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:03,634 INFO L256 TraceCheckUtils]: 0: Hoare triple {3757#true} call ULTIMATE.init(); {3757#true} is VALID [2018-11-14 18:56:03,635 INFO L273 TraceCheckUtils]: 1: Hoare triple {3757#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3757#true} is VALID [2018-11-14 18:56:03,635 INFO L273 TraceCheckUtils]: 2: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,635 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3757#true} {3757#true} #69#return; {3757#true} is VALID [2018-11-14 18:56:03,635 INFO L256 TraceCheckUtils]: 4: Hoare triple {3757#true} call #t~ret12 := main(); {3757#true} is VALID [2018-11-14 18:56:03,635 INFO L273 TraceCheckUtils]: 5: Hoare triple {3757#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3759#(= main_~i~1 0)} is VALID [2018-11-14 18:56:03,636 INFO L273 TraceCheckUtils]: 6: Hoare triple {3759#(= main_~i~1 0)} assume true; {3759#(= main_~i~1 0)} is VALID [2018-11-14 18:56:03,637 INFO L273 TraceCheckUtils]: 7: Hoare triple {3759#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3759#(= main_~i~1 0)} is VALID [2018-11-14 18:56:03,637 INFO L273 TraceCheckUtils]: 8: Hoare triple {3759#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:03,637 INFO L273 TraceCheckUtils]: 9: Hoare triple {3760#(<= main_~i~1 1)} assume true; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:03,638 INFO L273 TraceCheckUtils]: 10: Hoare triple {3760#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:03,638 INFO L273 TraceCheckUtils]: 11: Hoare triple {3760#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:03,638 INFO L273 TraceCheckUtils]: 12: Hoare triple {3761#(<= main_~i~1 2)} assume true; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:03,639 INFO L273 TraceCheckUtils]: 13: Hoare triple {3761#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:03,639 INFO L273 TraceCheckUtils]: 14: Hoare triple {3761#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:03,639 INFO L273 TraceCheckUtils]: 15: Hoare triple {3762#(<= main_~i~1 3)} assume true; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:03,640 INFO L273 TraceCheckUtils]: 16: Hoare triple {3762#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:03,641 INFO L273 TraceCheckUtils]: 17: Hoare triple {3762#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:03,641 INFO L273 TraceCheckUtils]: 18: Hoare triple {3763#(<= main_~i~1 4)} assume true; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:03,642 INFO L273 TraceCheckUtils]: 19: Hoare triple {3763#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:03,643 INFO L273 TraceCheckUtils]: 20: Hoare triple {3763#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:03,643 INFO L273 TraceCheckUtils]: 21: Hoare triple {3764#(<= main_~i~1 5)} assume true; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:03,644 INFO L273 TraceCheckUtils]: 22: Hoare triple {3764#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:03,644 INFO L273 TraceCheckUtils]: 23: Hoare triple {3764#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:03,645 INFO L273 TraceCheckUtils]: 24: Hoare triple {3765#(<= main_~i~1 6)} assume true; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:03,645 INFO L273 TraceCheckUtils]: 25: Hoare triple {3765#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:03,646 INFO L273 TraceCheckUtils]: 26: Hoare triple {3765#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:03,647 INFO L273 TraceCheckUtils]: 27: Hoare triple {3766#(<= main_~i~1 7)} assume true; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:03,647 INFO L273 TraceCheckUtils]: 28: Hoare triple {3766#(<= main_~i~1 7)} assume !(~i~1 < 10000); {3758#false} is VALID [2018-11-14 18:56:03,648 INFO L256 TraceCheckUtils]: 29: Hoare triple {3758#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {3757#true} is VALID [2018-11-14 18:56:03,648 INFO L273 TraceCheckUtils]: 30: Hoare triple {3757#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3757#true} is VALID [2018-11-14 18:56:03,648 INFO L273 TraceCheckUtils]: 31: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,648 INFO L273 TraceCheckUtils]: 32: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,648 INFO L273 TraceCheckUtils]: 33: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,649 INFO L273 TraceCheckUtils]: 34: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,649 INFO L273 TraceCheckUtils]: 35: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,649 INFO L273 TraceCheckUtils]: 36: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,649 INFO L273 TraceCheckUtils]: 37: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,649 INFO L273 TraceCheckUtils]: 38: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,650 INFO L273 TraceCheckUtils]: 39: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,650 INFO L273 TraceCheckUtils]: 40: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,650 INFO L273 TraceCheckUtils]: 41: Hoare triple {3757#true} assume !(~i~0 < 10000); {3757#true} is VALID [2018-11-14 18:56:03,650 INFO L273 TraceCheckUtils]: 42: Hoare triple {3757#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3757#true} is VALID [2018-11-14 18:56:03,650 INFO L273 TraceCheckUtils]: 43: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,651 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3757#true} {3758#false} #73#return; {3758#false} is VALID [2018-11-14 18:56:03,651 INFO L273 TraceCheckUtils]: 45: Hoare triple {3758#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3758#false} is VALID [2018-11-14 18:56:03,651 INFO L256 TraceCheckUtils]: 46: Hoare triple {3758#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {3757#true} is VALID [2018-11-14 18:56:03,651 INFO L273 TraceCheckUtils]: 47: Hoare triple {3757#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3757#true} is VALID [2018-11-14 18:56:03,652 INFO L273 TraceCheckUtils]: 48: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,652 INFO L273 TraceCheckUtils]: 49: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,652 INFO L273 TraceCheckUtils]: 50: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,652 INFO L273 TraceCheckUtils]: 51: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,652 INFO L273 TraceCheckUtils]: 52: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 53: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 54: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 55: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 56: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 57: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 58: Hoare triple {3757#true} assume !(~i~0 < 10000); {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 59: Hoare triple {3757#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L273 TraceCheckUtils]: 60: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,653 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3757#true} {3758#false} #75#return; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 62: Hoare triple {3758#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 63: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 64: Hoare triple {3758#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 65: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 66: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 67: Hoare triple {3758#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 68: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:56:03,654 INFO L273 TraceCheckUtils]: 69: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,655 INFO L273 TraceCheckUtils]: 70: Hoare triple {3758#false} assume !(~i~2 < 9999); {3758#false} is VALID [2018-11-14 18:56:03,655 INFO L273 TraceCheckUtils]: 71: Hoare triple {3758#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {3758#false} is VALID [2018-11-14 18:56:03,655 INFO L256 TraceCheckUtils]: 72: Hoare triple {3758#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {3757#true} is VALID [2018-11-14 18:56:03,655 INFO L273 TraceCheckUtils]: 73: Hoare triple {3757#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3757#true} is VALID [2018-11-14 18:56:03,655 INFO L273 TraceCheckUtils]: 74: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,655 INFO L273 TraceCheckUtils]: 75: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,655 INFO L273 TraceCheckUtils]: 76: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,655 INFO L273 TraceCheckUtils]: 77: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 78: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 79: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 80: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 81: Hoare triple {3757#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 82: Hoare triple {3757#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 83: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 84: Hoare triple {3757#true} assume !(~i~0 < 10000); {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 85: Hoare triple {3757#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3757#true} is VALID [2018-11-14 18:56:03,656 INFO L273 TraceCheckUtils]: 86: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,657 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3757#true} {3758#false} #77#return; {3758#false} is VALID [2018-11-14 18:56:03,657 INFO L273 TraceCheckUtils]: 88: Hoare triple {3758#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3758#false} is VALID [2018-11-14 18:56:03,657 INFO L273 TraceCheckUtils]: 89: Hoare triple {3758#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3758#false} is VALID [2018-11-14 18:56:03,657 INFO L273 TraceCheckUtils]: 90: Hoare triple {3758#false} assume !false; {3758#false} is VALID [2018-11-14 18:56:03,662 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 0 proven. 77 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:56:03,662 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:03,662 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-14 18:56:03,675 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:03,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:03,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:03,744 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:03,864 INFO L256 TraceCheckUtils]: 0: Hoare triple {3757#true} call ULTIMATE.init(); {3757#true} is VALID [2018-11-14 18:56:03,864 INFO L273 TraceCheckUtils]: 1: Hoare triple {3757#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3757#true} is VALID [2018-11-14 18:56:03,865 INFO L273 TraceCheckUtils]: 2: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 18:56:03,865 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3757#true} {3757#true} #69#return; {3757#true} is VALID [2018-11-14 18:56:03,865 INFO L256 TraceCheckUtils]: 4: Hoare triple {3757#true} call #t~ret12 := main(); {3757#true} is VALID [2018-11-14 18:56:03,866 INFO L273 TraceCheckUtils]: 5: Hoare triple {3757#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3785#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:03,866 INFO L273 TraceCheckUtils]: 6: Hoare triple {3785#(<= main_~i~1 0)} assume true; {3785#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:03,867 INFO L273 TraceCheckUtils]: 7: Hoare triple {3785#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3785#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:03,867 INFO L273 TraceCheckUtils]: 8: Hoare triple {3785#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:03,868 INFO L273 TraceCheckUtils]: 9: Hoare triple {3760#(<= main_~i~1 1)} assume true; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:03,868 INFO L273 TraceCheckUtils]: 10: Hoare triple {3760#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:03,868 INFO L273 TraceCheckUtils]: 11: Hoare triple {3760#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:03,869 INFO L273 TraceCheckUtils]: 12: Hoare triple {3761#(<= main_~i~1 2)} assume true; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:03,869 INFO L273 TraceCheckUtils]: 13: Hoare triple {3761#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:03,870 INFO L273 TraceCheckUtils]: 14: Hoare triple {3761#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:03,870 INFO L273 TraceCheckUtils]: 15: Hoare triple {3762#(<= main_~i~1 3)} assume true; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:03,871 INFO L273 TraceCheckUtils]: 16: Hoare triple {3762#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:03,872 INFO L273 TraceCheckUtils]: 17: Hoare triple {3762#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:03,872 INFO L273 TraceCheckUtils]: 18: Hoare triple {3763#(<= main_~i~1 4)} assume true; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:03,873 INFO L273 TraceCheckUtils]: 19: Hoare triple {3763#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:03,874 INFO L273 TraceCheckUtils]: 20: Hoare triple {3763#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:03,874 INFO L273 TraceCheckUtils]: 21: Hoare triple {3764#(<= main_~i~1 5)} assume true; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:03,875 INFO L273 TraceCheckUtils]: 22: Hoare triple {3764#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:03,875 INFO L273 TraceCheckUtils]: 23: Hoare triple {3764#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:03,876 INFO L273 TraceCheckUtils]: 24: Hoare triple {3765#(<= main_~i~1 6)} assume true; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:03,877 INFO L273 TraceCheckUtils]: 25: Hoare triple {3765#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:03,877 INFO L273 TraceCheckUtils]: 26: Hoare triple {3765#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:03,878 INFO L273 TraceCheckUtils]: 27: Hoare triple {3766#(<= main_~i~1 7)} assume true; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:03,878 INFO L273 TraceCheckUtils]: 28: Hoare triple {3766#(<= main_~i~1 7)} assume !(~i~1 < 10000); {3758#false} is VALID [2018-11-14 18:56:03,879 INFO L256 TraceCheckUtils]: 29: Hoare triple {3758#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {3758#false} is VALID [2018-11-14 18:56:03,879 INFO L273 TraceCheckUtils]: 30: Hoare triple {3758#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3758#false} is VALID [2018-11-14 18:56:03,879 INFO L273 TraceCheckUtils]: 31: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,879 INFO L273 TraceCheckUtils]: 32: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,880 INFO L273 TraceCheckUtils]: 33: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,880 INFO L273 TraceCheckUtils]: 34: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,880 INFO L273 TraceCheckUtils]: 35: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,880 INFO L273 TraceCheckUtils]: 36: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,880 INFO L273 TraceCheckUtils]: 37: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,881 INFO L273 TraceCheckUtils]: 38: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,881 INFO L273 TraceCheckUtils]: 39: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,881 INFO L273 TraceCheckUtils]: 40: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,881 INFO L273 TraceCheckUtils]: 41: Hoare triple {3758#false} assume !(~i~0 < 10000); {3758#false} is VALID [2018-11-14 18:56:03,881 INFO L273 TraceCheckUtils]: 42: Hoare triple {3758#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3758#false} is VALID [2018-11-14 18:56:03,881 INFO L273 TraceCheckUtils]: 43: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,881 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3758#false} {3758#false} #73#return; {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L273 TraceCheckUtils]: 45: Hoare triple {3758#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L256 TraceCheckUtils]: 46: Hoare triple {3758#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L273 TraceCheckUtils]: 47: Hoare triple {3758#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L273 TraceCheckUtils]: 48: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L273 TraceCheckUtils]: 49: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L273 TraceCheckUtils]: 50: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L273 TraceCheckUtils]: 51: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,882 INFO L273 TraceCheckUtils]: 52: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 53: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 54: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 55: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 56: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 57: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 58: Hoare triple {3758#false} assume !(~i~0 < 10000); {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 59: Hoare triple {3758#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3758#false} is VALID [2018-11-14 18:56:03,883 INFO L273 TraceCheckUtils]: 60: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3758#false} {3758#false} #75#return; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 62: Hoare triple {3758#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 63: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 64: Hoare triple {3758#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 65: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 66: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 67: Hoare triple {3758#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 68: Hoare triple {3758#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {3758#false} is VALID [2018-11-14 18:56:03,884 INFO L273 TraceCheckUtils]: 69: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L273 TraceCheckUtils]: 70: Hoare triple {3758#false} assume !(~i~2 < 9999); {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L273 TraceCheckUtils]: 71: Hoare triple {3758#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L256 TraceCheckUtils]: 72: Hoare triple {3758#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L273 TraceCheckUtils]: 73: Hoare triple {3758#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L273 TraceCheckUtils]: 74: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L273 TraceCheckUtils]: 75: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L273 TraceCheckUtils]: 76: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,885 INFO L273 TraceCheckUtils]: 77: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 78: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 79: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 80: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 81: Hoare triple {3758#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 82: Hoare triple {3758#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 83: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 84: Hoare triple {3758#false} assume !(~i~0 < 10000); {3758#false} is VALID [2018-11-14 18:56:03,886 INFO L273 TraceCheckUtils]: 85: Hoare triple {3758#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {3758#false} is VALID [2018-11-14 18:56:03,887 INFO L273 TraceCheckUtils]: 86: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 18:56:03,887 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3758#false} {3758#false} #77#return; {3758#false} is VALID [2018-11-14 18:56:03,887 INFO L273 TraceCheckUtils]: 88: Hoare triple {3758#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {3758#false} is VALID [2018-11-14 18:56:03,887 INFO L273 TraceCheckUtils]: 89: Hoare triple {3758#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3758#false} is VALID [2018-11-14 18:56:03,887 INFO L273 TraceCheckUtils]: 90: Hoare triple {3758#false} assume !false; {3758#false} is VALID [2018-11-14 18:56:03,891 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 0 proven. 77 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:56:03,911 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:03,912 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 11 [2018-11-14 18:56:03,912 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 91 [2018-11-14 18:56:03,914 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:03,914 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 18:56:03,981 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:03,981 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 18:56:03,982 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 18:56:03,982 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:56:03,982 INFO L87 Difference]: Start difference. First operand 62 states and 66 transitions. Second operand 11 states. [2018-11-14 18:56:04,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:04,367 INFO L93 Difference]: Finished difference Result 99 states and 107 transitions. [2018-11-14 18:56:04,367 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-14 18:56:04,367 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 91 [2018-11-14 18:56:04,367 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:04,368 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:56:04,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-14 18:56:04,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 18:56:04,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-14 18:56:04,370 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 81 transitions. [2018-11-14 18:56:04,451 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:04,453 INFO L225 Difference]: With dead ends: 99 [2018-11-14 18:56:04,453 INFO L226 Difference]: Without dead ends: 66 [2018-11-14 18:56:04,454 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-14 18:56:04,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2018-11-14 18:56:04,478 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 65. [2018-11-14 18:56:04,478 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:04,478 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand 65 states. [2018-11-14 18:56:04,478 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 65 states. [2018-11-14 18:56:04,479 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 65 states. [2018-11-14 18:56:04,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:04,480 INFO L93 Difference]: Finished difference Result 66 states and 70 transitions. [2018-11-14 18:56:04,480 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 70 transitions. [2018-11-14 18:56:04,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:04,481 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:04,481 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand 66 states. [2018-11-14 18:56:04,481 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 66 states. [2018-11-14 18:56:04,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:04,482 INFO L93 Difference]: Finished difference Result 66 states and 70 transitions. [2018-11-14 18:56:04,482 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 70 transitions. [2018-11-14 18:56:04,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:04,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:04,483 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:04,483 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:04,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 65 states. [2018-11-14 18:56:04,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 69 transitions. [2018-11-14 18:56:04,485 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 69 transitions. Word has length 91 [2018-11-14 18:56:04,485 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:04,485 INFO L480 AbstractCegarLoop]: Abstraction has 65 states and 69 transitions. [2018-11-14 18:56:04,485 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 18:56:04,486 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 69 transitions. [2018-11-14 18:56:04,486 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2018-11-14 18:56:04,486 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:04,487 INFO L375 BasicCegarLoop]: trace histogram [12, 9, 9, 9, 8, 8, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:04,487 INFO L423 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:04,487 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:04,487 INFO L82 PathProgramCache]: Analyzing trace with hash 2090928948, now seen corresponding path program 8 times [2018-11-14 18:56:04,487 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:04,488 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:04,488 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:04,488 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:04,488 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:04,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:04,698 INFO L256 TraceCheckUtils]: 0: Hoare triple {4395#true} call ULTIMATE.init(); {4395#true} is VALID [2018-11-14 18:56:04,698 INFO L273 TraceCheckUtils]: 1: Hoare triple {4395#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4395#true} is VALID [2018-11-14 18:56:04,698 INFO L273 TraceCheckUtils]: 2: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,699 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4395#true} {4395#true} #69#return; {4395#true} is VALID [2018-11-14 18:56:04,699 INFO L256 TraceCheckUtils]: 4: Hoare triple {4395#true} call #t~ret12 := main(); {4395#true} is VALID [2018-11-14 18:56:04,700 INFO L273 TraceCheckUtils]: 5: Hoare triple {4395#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {4397#(= main_~i~1 0)} is VALID [2018-11-14 18:56:04,700 INFO L273 TraceCheckUtils]: 6: Hoare triple {4397#(= main_~i~1 0)} assume true; {4397#(= main_~i~1 0)} is VALID [2018-11-14 18:56:04,701 INFO L273 TraceCheckUtils]: 7: Hoare triple {4397#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4397#(= main_~i~1 0)} is VALID [2018-11-14 18:56:04,701 INFO L273 TraceCheckUtils]: 8: Hoare triple {4397#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:04,702 INFO L273 TraceCheckUtils]: 9: Hoare triple {4398#(<= main_~i~1 1)} assume true; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:04,702 INFO L273 TraceCheckUtils]: 10: Hoare triple {4398#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:04,703 INFO L273 TraceCheckUtils]: 11: Hoare triple {4398#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:04,704 INFO L273 TraceCheckUtils]: 12: Hoare triple {4399#(<= main_~i~1 2)} assume true; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:04,704 INFO L273 TraceCheckUtils]: 13: Hoare triple {4399#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:04,705 INFO L273 TraceCheckUtils]: 14: Hoare triple {4399#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:04,706 INFO L273 TraceCheckUtils]: 15: Hoare triple {4400#(<= main_~i~1 3)} assume true; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:04,706 INFO L273 TraceCheckUtils]: 16: Hoare triple {4400#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:04,707 INFO L273 TraceCheckUtils]: 17: Hoare triple {4400#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:04,708 INFO L273 TraceCheckUtils]: 18: Hoare triple {4401#(<= main_~i~1 4)} assume true; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:04,708 INFO L273 TraceCheckUtils]: 19: Hoare triple {4401#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:04,709 INFO L273 TraceCheckUtils]: 20: Hoare triple {4401#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:04,710 INFO L273 TraceCheckUtils]: 21: Hoare triple {4402#(<= main_~i~1 5)} assume true; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:04,710 INFO L273 TraceCheckUtils]: 22: Hoare triple {4402#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:04,711 INFO L273 TraceCheckUtils]: 23: Hoare triple {4402#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:04,712 INFO L273 TraceCheckUtils]: 24: Hoare triple {4403#(<= main_~i~1 6)} assume true; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:04,713 INFO L273 TraceCheckUtils]: 25: Hoare triple {4403#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:04,713 INFO L273 TraceCheckUtils]: 26: Hoare triple {4403#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:04,714 INFO L273 TraceCheckUtils]: 27: Hoare triple {4404#(<= main_~i~1 7)} assume true; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:04,715 INFO L273 TraceCheckUtils]: 28: Hoare triple {4404#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:04,716 INFO L273 TraceCheckUtils]: 29: Hoare triple {4404#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:04,716 INFO L273 TraceCheckUtils]: 30: Hoare triple {4405#(<= main_~i~1 8)} assume true; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:04,717 INFO L273 TraceCheckUtils]: 31: Hoare triple {4405#(<= main_~i~1 8)} assume !(~i~1 < 10000); {4396#false} is VALID [2018-11-14 18:56:04,717 INFO L256 TraceCheckUtils]: 32: Hoare triple {4396#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {4395#true} is VALID [2018-11-14 18:56:04,718 INFO L273 TraceCheckUtils]: 33: Hoare triple {4395#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4395#true} is VALID [2018-11-14 18:56:04,718 INFO L273 TraceCheckUtils]: 34: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,718 INFO L273 TraceCheckUtils]: 35: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,718 INFO L273 TraceCheckUtils]: 36: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,719 INFO L273 TraceCheckUtils]: 37: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,719 INFO L273 TraceCheckUtils]: 38: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,719 INFO L273 TraceCheckUtils]: 39: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,719 INFO L273 TraceCheckUtils]: 40: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,720 INFO L273 TraceCheckUtils]: 41: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,720 INFO L273 TraceCheckUtils]: 42: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,720 INFO L273 TraceCheckUtils]: 43: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,720 INFO L273 TraceCheckUtils]: 44: Hoare triple {4395#true} assume !(~i~0 < 10000); {4395#true} is VALID [2018-11-14 18:56:04,720 INFO L273 TraceCheckUtils]: 45: Hoare triple {4395#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {4395#true} is VALID [2018-11-14 18:56:04,720 INFO L273 TraceCheckUtils]: 46: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,721 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {4395#true} {4396#false} #73#return; {4396#false} is VALID [2018-11-14 18:56:04,721 INFO L273 TraceCheckUtils]: 48: Hoare triple {4396#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {4396#false} is VALID [2018-11-14 18:56:04,721 INFO L256 TraceCheckUtils]: 49: Hoare triple {4396#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {4395#true} is VALID [2018-11-14 18:56:04,721 INFO L273 TraceCheckUtils]: 50: Hoare triple {4395#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4395#true} is VALID [2018-11-14 18:56:04,721 INFO L273 TraceCheckUtils]: 51: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,721 INFO L273 TraceCheckUtils]: 52: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,722 INFO L273 TraceCheckUtils]: 53: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,722 INFO L273 TraceCheckUtils]: 54: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,722 INFO L273 TraceCheckUtils]: 55: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,722 INFO L273 TraceCheckUtils]: 56: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,722 INFO L273 TraceCheckUtils]: 57: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,722 INFO L273 TraceCheckUtils]: 58: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,722 INFO L273 TraceCheckUtils]: 59: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,723 INFO L273 TraceCheckUtils]: 60: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,723 INFO L273 TraceCheckUtils]: 61: Hoare triple {4395#true} assume !(~i~0 < 10000); {4395#true} is VALID [2018-11-14 18:56:04,723 INFO L273 TraceCheckUtils]: 62: Hoare triple {4395#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {4395#true} is VALID [2018-11-14 18:56:04,723 INFO L273 TraceCheckUtils]: 63: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,723 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {4395#true} {4396#false} #75#return; {4396#false} is VALID [2018-11-14 18:56:04,723 INFO L273 TraceCheckUtils]: 65: Hoare triple {4396#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {4396#false} is VALID [2018-11-14 18:56:04,724 INFO L273 TraceCheckUtils]: 66: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,724 INFO L273 TraceCheckUtils]: 67: Hoare triple {4396#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:56:04,724 INFO L273 TraceCheckUtils]: 68: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:56:04,724 INFO L273 TraceCheckUtils]: 69: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,724 INFO L273 TraceCheckUtils]: 70: Hoare triple {4396#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:56:04,724 INFO L273 TraceCheckUtils]: 71: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:56:04,724 INFO L273 TraceCheckUtils]: 72: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,725 INFO L273 TraceCheckUtils]: 73: Hoare triple {4396#false} assume !(~i~2 < 9999); {4396#false} is VALID [2018-11-14 18:56:04,725 INFO L273 TraceCheckUtils]: 74: Hoare triple {4396#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {4396#false} is VALID [2018-11-14 18:56:04,725 INFO L256 TraceCheckUtils]: 75: Hoare triple {4396#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {4395#true} is VALID [2018-11-14 18:56:04,725 INFO L273 TraceCheckUtils]: 76: Hoare triple {4395#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4395#true} is VALID [2018-11-14 18:56:04,725 INFO L273 TraceCheckUtils]: 77: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,725 INFO L273 TraceCheckUtils]: 78: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,725 INFO L273 TraceCheckUtils]: 79: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,725 INFO L273 TraceCheckUtils]: 80: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 81: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 82: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 83: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 84: Hoare triple {4395#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 85: Hoare triple {4395#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 86: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 87: Hoare triple {4395#true} assume !(~i~0 < 10000); {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 88: Hoare triple {4395#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {4395#true} is VALID [2018-11-14 18:56:04,726 INFO L273 TraceCheckUtils]: 89: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,727 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {4395#true} {4396#false} #77#return; {4396#false} is VALID [2018-11-14 18:56:04,727 INFO L273 TraceCheckUtils]: 91: Hoare triple {4396#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {4396#false} is VALID [2018-11-14 18:56:04,727 INFO L273 TraceCheckUtils]: 92: Hoare triple {4396#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4396#false} is VALID [2018-11-14 18:56:04,727 INFO L273 TraceCheckUtils]: 93: Hoare triple {4396#false} assume !false; {4396#false} is VALID [2018-11-14 18:56:04,731 INFO L134 CoverageAnalysis]: Checked inductivity of 287 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:56:04,731 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:04,731 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-14 18:56:04,740 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:56:04,785 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:56:04,785 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:04,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:04,812 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:04,958 INFO L256 TraceCheckUtils]: 0: Hoare triple {4395#true} call ULTIMATE.init(); {4395#true} is VALID [2018-11-14 18:56:04,958 INFO L273 TraceCheckUtils]: 1: Hoare triple {4395#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4395#true} is VALID [2018-11-14 18:56:04,958 INFO L273 TraceCheckUtils]: 2: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 18:56:04,959 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4395#true} {4395#true} #69#return; {4395#true} is VALID [2018-11-14 18:56:04,959 INFO L256 TraceCheckUtils]: 4: Hoare triple {4395#true} call #t~ret12 := main(); {4395#true} is VALID [2018-11-14 18:56:04,960 INFO L273 TraceCheckUtils]: 5: Hoare triple {4395#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {4424#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:04,960 INFO L273 TraceCheckUtils]: 6: Hoare triple {4424#(<= main_~i~1 0)} assume true; {4424#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:04,961 INFO L273 TraceCheckUtils]: 7: Hoare triple {4424#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4424#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:04,962 INFO L273 TraceCheckUtils]: 8: Hoare triple {4424#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:04,962 INFO L273 TraceCheckUtils]: 9: Hoare triple {4398#(<= main_~i~1 1)} assume true; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:04,962 INFO L273 TraceCheckUtils]: 10: Hoare triple {4398#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:04,963 INFO L273 TraceCheckUtils]: 11: Hoare triple {4398#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:04,963 INFO L273 TraceCheckUtils]: 12: Hoare triple {4399#(<= main_~i~1 2)} assume true; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:04,964 INFO L273 TraceCheckUtils]: 13: Hoare triple {4399#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:04,965 INFO L273 TraceCheckUtils]: 14: Hoare triple {4399#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:04,966 INFO L273 TraceCheckUtils]: 15: Hoare triple {4400#(<= main_~i~1 3)} assume true; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:04,966 INFO L273 TraceCheckUtils]: 16: Hoare triple {4400#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:04,967 INFO L273 TraceCheckUtils]: 17: Hoare triple {4400#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:04,968 INFO L273 TraceCheckUtils]: 18: Hoare triple {4401#(<= main_~i~1 4)} assume true; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:04,968 INFO L273 TraceCheckUtils]: 19: Hoare triple {4401#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:04,969 INFO L273 TraceCheckUtils]: 20: Hoare triple {4401#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:04,970 INFO L273 TraceCheckUtils]: 21: Hoare triple {4402#(<= main_~i~1 5)} assume true; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:04,970 INFO L273 TraceCheckUtils]: 22: Hoare triple {4402#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:04,971 INFO L273 TraceCheckUtils]: 23: Hoare triple {4402#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:04,972 INFO L273 TraceCheckUtils]: 24: Hoare triple {4403#(<= main_~i~1 6)} assume true; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:04,972 INFO L273 TraceCheckUtils]: 25: Hoare triple {4403#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:04,973 INFO L273 TraceCheckUtils]: 26: Hoare triple {4403#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:04,974 INFO L273 TraceCheckUtils]: 27: Hoare triple {4404#(<= main_~i~1 7)} assume true; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:04,975 INFO L273 TraceCheckUtils]: 28: Hoare triple {4404#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:04,976 INFO L273 TraceCheckUtils]: 29: Hoare triple {4404#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:04,976 INFO L273 TraceCheckUtils]: 30: Hoare triple {4405#(<= main_~i~1 8)} assume true; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:04,977 INFO L273 TraceCheckUtils]: 31: Hoare triple {4405#(<= main_~i~1 8)} assume !(~i~1 < 10000); {4396#false} is VALID [2018-11-14 18:56:04,977 INFO L256 TraceCheckUtils]: 32: Hoare triple {4396#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {4396#false} is VALID [2018-11-14 18:56:04,978 INFO L273 TraceCheckUtils]: 33: Hoare triple {4396#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4396#false} is VALID [2018-11-14 18:56:04,978 INFO L273 TraceCheckUtils]: 34: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,978 INFO L273 TraceCheckUtils]: 35: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,978 INFO L273 TraceCheckUtils]: 36: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,979 INFO L273 TraceCheckUtils]: 37: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,979 INFO L273 TraceCheckUtils]: 38: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,979 INFO L273 TraceCheckUtils]: 39: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,979 INFO L273 TraceCheckUtils]: 40: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,980 INFO L273 TraceCheckUtils]: 41: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,980 INFO L273 TraceCheckUtils]: 42: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,980 INFO L273 TraceCheckUtils]: 43: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,980 INFO L273 TraceCheckUtils]: 44: Hoare triple {4396#false} assume !(~i~0 < 10000); {4396#false} is VALID [2018-11-14 18:56:04,981 INFO L273 TraceCheckUtils]: 45: Hoare triple {4396#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {4396#false} is VALID [2018-11-14 18:56:04,981 INFO L273 TraceCheckUtils]: 46: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,981 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {4396#false} {4396#false} #73#return; {4396#false} is VALID [2018-11-14 18:56:04,981 INFO L273 TraceCheckUtils]: 48: Hoare triple {4396#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {4396#false} is VALID [2018-11-14 18:56:04,982 INFO L256 TraceCheckUtils]: 49: Hoare triple {4396#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {4396#false} is VALID [2018-11-14 18:56:04,982 INFO L273 TraceCheckUtils]: 50: Hoare triple {4396#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4396#false} is VALID [2018-11-14 18:56:04,982 INFO L273 TraceCheckUtils]: 51: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,982 INFO L273 TraceCheckUtils]: 52: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,982 INFO L273 TraceCheckUtils]: 53: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,983 INFO L273 TraceCheckUtils]: 54: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,983 INFO L273 TraceCheckUtils]: 55: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,983 INFO L273 TraceCheckUtils]: 56: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,983 INFO L273 TraceCheckUtils]: 57: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,983 INFO L273 TraceCheckUtils]: 58: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,983 INFO L273 TraceCheckUtils]: 59: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,984 INFO L273 TraceCheckUtils]: 60: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,984 INFO L273 TraceCheckUtils]: 61: Hoare triple {4396#false} assume !(~i~0 < 10000); {4396#false} is VALID [2018-11-14 18:56:04,984 INFO L273 TraceCheckUtils]: 62: Hoare triple {4396#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {4396#false} is VALID [2018-11-14 18:56:04,984 INFO L273 TraceCheckUtils]: 63: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,984 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {4396#false} {4396#false} #75#return; {4396#false} is VALID [2018-11-14 18:56:04,984 INFO L273 TraceCheckUtils]: 65: Hoare triple {4396#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {4396#false} is VALID [2018-11-14 18:56:04,984 INFO L273 TraceCheckUtils]: 66: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,985 INFO L273 TraceCheckUtils]: 67: Hoare triple {4396#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:56:04,985 INFO L273 TraceCheckUtils]: 68: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:56:04,985 INFO L273 TraceCheckUtils]: 69: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,985 INFO L273 TraceCheckUtils]: 70: Hoare triple {4396#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {4396#false} is VALID [2018-11-14 18:56:04,985 INFO L273 TraceCheckUtils]: 71: Hoare triple {4396#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {4396#false} is VALID [2018-11-14 18:56:04,985 INFO L273 TraceCheckUtils]: 72: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,986 INFO L273 TraceCheckUtils]: 73: Hoare triple {4396#false} assume !(~i~2 < 9999); {4396#false} is VALID [2018-11-14 18:56:04,986 INFO L273 TraceCheckUtils]: 74: Hoare triple {4396#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {4396#false} is VALID [2018-11-14 18:56:04,986 INFO L256 TraceCheckUtils]: 75: Hoare triple {4396#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {4396#false} is VALID [2018-11-14 18:56:04,986 INFO L273 TraceCheckUtils]: 76: Hoare triple {4396#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4396#false} is VALID [2018-11-14 18:56:04,986 INFO L273 TraceCheckUtils]: 77: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,986 INFO L273 TraceCheckUtils]: 78: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,986 INFO L273 TraceCheckUtils]: 79: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,987 INFO L273 TraceCheckUtils]: 80: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,987 INFO L273 TraceCheckUtils]: 81: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,987 INFO L273 TraceCheckUtils]: 82: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,987 INFO L273 TraceCheckUtils]: 83: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,987 INFO L273 TraceCheckUtils]: 84: Hoare triple {4396#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {4396#false} is VALID [2018-11-14 18:56:04,988 INFO L273 TraceCheckUtils]: 85: Hoare triple {4396#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {4396#false} is VALID [2018-11-14 18:56:04,988 INFO L273 TraceCheckUtils]: 86: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,988 INFO L273 TraceCheckUtils]: 87: Hoare triple {4396#false} assume !(~i~0 < 10000); {4396#false} is VALID [2018-11-14 18:56:04,988 INFO L273 TraceCheckUtils]: 88: Hoare triple {4396#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {4396#false} is VALID [2018-11-14 18:56:04,988 INFO L273 TraceCheckUtils]: 89: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 18:56:04,989 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {4396#false} {4396#false} #77#return; {4396#false} is VALID [2018-11-14 18:56:04,989 INFO L273 TraceCheckUtils]: 91: Hoare triple {4396#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {4396#false} is VALID [2018-11-14 18:56:04,989 INFO L273 TraceCheckUtils]: 92: Hoare triple {4396#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4396#false} is VALID [2018-11-14 18:56:04,989 INFO L273 TraceCheckUtils]: 93: Hoare triple {4396#false} assume !false; {4396#false} is VALID [2018-11-14 18:56:05,000 INFO L134 CoverageAnalysis]: Checked inductivity of 287 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:56:05,022 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:05,022 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 12 [2018-11-14 18:56:05,023 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 94 [2018-11-14 18:56:05,023 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:05,023 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-14 18:56:05,125 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:05,125 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-14 18:56:05,126 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-14 18:56:05,126 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-14 18:56:05,126 INFO L87 Difference]: Start difference. First operand 65 states and 69 transitions. Second operand 12 states. [2018-11-14 18:56:05,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:05,438 INFO L93 Difference]: Finished difference Result 102 states and 110 transitions. [2018-11-14 18:56:05,438 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 18:56:05,438 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 94 [2018-11-14 18:56:05,438 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:05,438 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 18:56:05,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-14 18:56:05,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 18:56:05,442 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-14 18:56:05,442 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 84 transitions. [2018-11-14 18:56:05,574 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:05,576 INFO L225 Difference]: With dead ends: 102 [2018-11-14 18:56:05,576 INFO L226 Difference]: Without dead ends: 69 [2018-11-14 18:56:05,576 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-14 18:56:05,577 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2018-11-14 18:56:05,617 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2018-11-14 18:56:05,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:05,617 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand 68 states. [2018-11-14 18:56:05,617 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 68 states. [2018-11-14 18:56:05,618 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 68 states. [2018-11-14 18:56:05,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:05,620 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2018-11-14 18:56:05,620 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2018-11-14 18:56:05,620 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:05,620 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:05,620 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 69 states. [2018-11-14 18:56:05,620 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 69 states. [2018-11-14 18:56:05,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:05,622 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2018-11-14 18:56:05,622 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2018-11-14 18:56:05,622 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:05,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:05,622 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:05,622 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:05,623 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-14 18:56:05,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 72 transitions. [2018-11-14 18:56:05,624 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 72 transitions. Word has length 94 [2018-11-14 18:56:05,624 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:05,624 INFO L480 AbstractCegarLoop]: Abstraction has 68 states and 72 transitions. [2018-11-14 18:56:05,624 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-14 18:56:05,625 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 72 transitions. [2018-11-14 18:56:05,625 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2018-11-14 18:56:05,626 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:05,626 INFO L375 BasicCegarLoop]: trace histogram [12, 10, 9, 9, 9, 9, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:05,626 INFO L423 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:05,626 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:05,626 INFO L82 PathProgramCache]: Analyzing trace with hash -564306177, now seen corresponding path program 9 times [2018-11-14 18:56:05,627 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:05,627 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:05,627 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:05,628 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:05,628 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:05,645 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:06,645 INFO L256 TraceCheckUtils]: 0: Hoare triple {5057#true} call ULTIMATE.init(); {5057#true} is VALID [2018-11-14 18:56:06,646 INFO L273 TraceCheckUtils]: 1: Hoare triple {5057#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5057#true} is VALID [2018-11-14 18:56:06,646 INFO L273 TraceCheckUtils]: 2: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,646 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5057#true} {5057#true} #69#return; {5057#true} is VALID [2018-11-14 18:56:06,647 INFO L256 TraceCheckUtils]: 4: Hoare triple {5057#true} call #t~ret12 := main(); {5057#true} is VALID [2018-11-14 18:56:06,647 INFO L273 TraceCheckUtils]: 5: Hoare triple {5057#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5059#(= main_~i~1 0)} is VALID [2018-11-14 18:56:06,648 INFO L273 TraceCheckUtils]: 6: Hoare triple {5059#(= main_~i~1 0)} assume true; {5059#(= main_~i~1 0)} is VALID [2018-11-14 18:56:06,648 INFO L273 TraceCheckUtils]: 7: Hoare triple {5059#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5059#(= main_~i~1 0)} is VALID [2018-11-14 18:56:06,649 INFO L273 TraceCheckUtils]: 8: Hoare triple {5059#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5060#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:06,649 INFO L273 TraceCheckUtils]: 9: Hoare triple {5060#(<= main_~i~1 1)} assume true; {5060#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:06,649 INFO L273 TraceCheckUtils]: 10: Hoare triple {5060#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5060#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:06,650 INFO L273 TraceCheckUtils]: 11: Hoare triple {5060#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5061#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:06,650 INFO L273 TraceCheckUtils]: 12: Hoare triple {5061#(<= main_~i~1 2)} assume true; {5061#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:06,651 INFO L273 TraceCheckUtils]: 13: Hoare triple {5061#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5061#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:06,652 INFO L273 TraceCheckUtils]: 14: Hoare triple {5061#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5062#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:06,652 INFO L273 TraceCheckUtils]: 15: Hoare triple {5062#(<= main_~i~1 3)} assume true; {5062#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:06,653 INFO L273 TraceCheckUtils]: 16: Hoare triple {5062#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5062#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:06,653 INFO L273 TraceCheckUtils]: 17: Hoare triple {5062#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5063#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:06,654 INFO L273 TraceCheckUtils]: 18: Hoare triple {5063#(<= main_~i~1 4)} assume true; {5063#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:06,654 INFO L273 TraceCheckUtils]: 19: Hoare triple {5063#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5063#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:06,655 INFO L273 TraceCheckUtils]: 20: Hoare triple {5063#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5064#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:06,656 INFO L273 TraceCheckUtils]: 21: Hoare triple {5064#(<= main_~i~1 5)} assume true; {5064#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:06,656 INFO L273 TraceCheckUtils]: 22: Hoare triple {5064#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5064#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:06,657 INFO L273 TraceCheckUtils]: 23: Hoare triple {5064#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5065#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:06,658 INFO L273 TraceCheckUtils]: 24: Hoare triple {5065#(<= main_~i~1 6)} assume true; {5065#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:06,658 INFO L273 TraceCheckUtils]: 25: Hoare triple {5065#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5065#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:06,659 INFO L273 TraceCheckUtils]: 26: Hoare triple {5065#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5066#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:06,659 INFO L273 TraceCheckUtils]: 27: Hoare triple {5066#(<= main_~i~1 7)} assume true; {5066#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:06,660 INFO L273 TraceCheckUtils]: 28: Hoare triple {5066#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5066#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:06,661 INFO L273 TraceCheckUtils]: 29: Hoare triple {5066#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5067#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:06,661 INFO L273 TraceCheckUtils]: 30: Hoare triple {5067#(<= main_~i~1 8)} assume true; {5067#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:06,662 INFO L273 TraceCheckUtils]: 31: Hoare triple {5067#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5067#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:06,663 INFO L273 TraceCheckUtils]: 32: Hoare triple {5067#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5068#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:06,663 INFO L273 TraceCheckUtils]: 33: Hoare triple {5068#(<= main_~i~1 9)} assume true; {5068#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:06,664 INFO L273 TraceCheckUtils]: 34: Hoare triple {5068#(<= main_~i~1 9)} assume !(~i~1 < 10000); {5058#false} is VALID [2018-11-14 18:56:06,664 INFO L256 TraceCheckUtils]: 35: Hoare triple {5058#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:56:06,664 INFO L273 TraceCheckUtils]: 36: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:56:06,665 INFO L273 TraceCheckUtils]: 37: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,665 INFO L273 TraceCheckUtils]: 38: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,665 INFO L273 TraceCheckUtils]: 39: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,665 INFO L273 TraceCheckUtils]: 40: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,665 INFO L273 TraceCheckUtils]: 41: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,666 INFO L273 TraceCheckUtils]: 42: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,666 INFO L273 TraceCheckUtils]: 43: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,666 INFO L273 TraceCheckUtils]: 44: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,666 INFO L273 TraceCheckUtils]: 45: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,666 INFO L273 TraceCheckUtils]: 46: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,667 INFO L273 TraceCheckUtils]: 47: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 18:56:06,667 INFO L273 TraceCheckUtils]: 48: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:56:06,667 INFO L273 TraceCheckUtils]: 49: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,667 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {5057#true} {5058#false} #73#return; {5058#false} is VALID [2018-11-14 18:56:06,667 INFO L273 TraceCheckUtils]: 51: Hoare triple {5058#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5058#false} is VALID [2018-11-14 18:56:06,667 INFO L256 TraceCheckUtils]: 52: Hoare triple {5058#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:56:06,667 INFO L273 TraceCheckUtils]: 53: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:56:06,667 INFO L273 TraceCheckUtils]: 54: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 55: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 56: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 57: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 58: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 59: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 60: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 61: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 62: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,668 INFO L273 TraceCheckUtils]: 63: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,669 INFO L273 TraceCheckUtils]: 64: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 18:56:06,669 INFO L273 TraceCheckUtils]: 65: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:56:06,669 INFO L273 TraceCheckUtils]: 66: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,669 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5057#true} {5058#false} #75#return; {5058#false} is VALID [2018-11-14 18:56:06,669 INFO L273 TraceCheckUtils]: 68: Hoare triple {5058#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5058#false} is VALID [2018-11-14 18:56:06,669 INFO L273 TraceCheckUtils]: 69: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:56:06,669 INFO L273 TraceCheckUtils]: 70: Hoare triple {5058#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5058#false} is VALID [2018-11-14 18:56:06,669 INFO L273 TraceCheckUtils]: 71: Hoare triple {5058#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5058#false} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 72: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 73: Hoare triple {5058#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5058#false} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 74: Hoare triple {5058#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5058#false} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 75: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 76: Hoare triple {5058#false} assume !(~i~2 < 9999); {5058#false} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 77: Hoare triple {5058#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {5058#false} is VALID [2018-11-14 18:56:06,670 INFO L256 TraceCheckUtils]: 78: Hoare triple {5058#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 79: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:56:06,670 INFO L273 TraceCheckUtils]: 80: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,671 INFO L273 TraceCheckUtils]: 81: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,671 INFO L273 TraceCheckUtils]: 82: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,671 INFO L273 TraceCheckUtils]: 83: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,671 INFO L273 TraceCheckUtils]: 84: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,671 INFO L273 TraceCheckUtils]: 85: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,671 INFO L273 TraceCheckUtils]: 86: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,671 INFO L273 TraceCheckUtils]: 87: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,672 INFO L273 TraceCheckUtils]: 88: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,672 INFO L273 TraceCheckUtils]: 89: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,672 INFO L273 TraceCheckUtils]: 90: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 18:56:06,672 INFO L273 TraceCheckUtils]: 91: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:56:06,672 INFO L273 TraceCheckUtils]: 92: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,672 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {5057#true} {5058#false} #77#return; {5058#false} is VALID [2018-11-14 18:56:06,672 INFO L273 TraceCheckUtils]: 94: Hoare triple {5058#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5058#false} is VALID [2018-11-14 18:56:06,672 INFO L273 TraceCheckUtils]: 95: Hoare triple {5058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5058#false} is VALID [2018-11-14 18:56:06,673 INFO L273 TraceCheckUtils]: 96: Hoare triple {5058#false} assume !false; {5058#false} is VALID [2018-11-14 18:56:06,677 INFO L134 CoverageAnalysis]: Checked inductivity of 313 backedges. 0 proven. 126 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-14 18:56:06,677 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:06,677 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-14 18:56:06,687 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:56:06,720 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-14 18:56:06,720 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:06,753 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:06,754 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:06,902 INFO L256 TraceCheckUtils]: 0: Hoare triple {5057#true} call ULTIMATE.init(); {5057#true} is VALID [2018-11-14 18:56:06,902 INFO L273 TraceCheckUtils]: 1: Hoare triple {5057#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5057#true} is VALID [2018-11-14 18:56:06,902 INFO L273 TraceCheckUtils]: 2: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,902 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5057#true} {5057#true} #69#return; {5057#true} is VALID [2018-11-14 18:56:06,903 INFO L256 TraceCheckUtils]: 4: Hoare triple {5057#true} call #t~ret12 := main(); {5057#true} is VALID [2018-11-14 18:56:06,903 INFO L273 TraceCheckUtils]: 5: Hoare triple {5057#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5057#true} is VALID [2018-11-14 18:56:06,903 INFO L273 TraceCheckUtils]: 6: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,903 INFO L273 TraceCheckUtils]: 7: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,904 INFO L273 TraceCheckUtils]: 8: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,904 INFO L273 TraceCheckUtils]: 9: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,904 INFO L273 TraceCheckUtils]: 10: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,904 INFO L273 TraceCheckUtils]: 11: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,904 INFO L273 TraceCheckUtils]: 12: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 13: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 14: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 15: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 16: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 17: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 18: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 19: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,905 INFO L273 TraceCheckUtils]: 20: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 21: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 22: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 23: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 24: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 25: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 26: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 27: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,906 INFO L273 TraceCheckUtils]: 28: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 29: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 30: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 31: Hoare triple {5057#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 32: Hoare triple {5057#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 33: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 34: Hoare triple {5057#true} assume !(~i~1 < 10000); {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L256 TraceCheckUtils]: 35: Hoare triple {5057#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 36: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:56:06,907 INFO L273 TraceCheckUtils]: 37: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 38: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 39: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 40: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 41: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 42: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 43: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 44: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,908 INFO L273 TraceCheckUtils]: 45: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L273 TraceCheckUtils]: 46: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L273 TraceCheckUtils]: 47: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L273 TraceCheckUtils]: 48: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L273 TraceCheckUtils]: 49: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {5057#true} {5057#true} #73#return; {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L273 TraceCheckUtils]: 51: Hoare triple {5057#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L256 TraceCheckUtils]: 52: Hoare triple {5057#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:56:06,909 INFO L273 TraceCheckUtils]: 53: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 54: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 55: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 56: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 57: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 58: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 59: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 60: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 61: Hoare triple {5057#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5057#true} is VALID [2018-11-14 18:56:06,910 INFO L273 TraceCheckUtils]: 62: Hoare triple {5057#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L273 TraceCheckUtils]: 63: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L273 TraceCheckUtils]: 64: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L273 TraceCheckUtils]: 65: Hoare triple {5057#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L273 TraceCheckUtils]: 66: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5057#true} {5057#true} #75#return; {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L273 TraceCheckUtils]: 68: Hoare triple {5057#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L273 TraceCheckUtils]: 69: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,911 INFO L273 TraceCheckUtils]: 70: Hoare triple {5057#true} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L273 TraceCheckUtils]: 71: Hoare triple {5057#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L273 TraceCheckUtils]: 72: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L273 TraceCheckUtils]: 73: Hoare triple {5057#true} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L273 TraceCheckUtils]: 74: Hoare triple {5057#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L273 TraceCheckUtils]: 75: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L273 TraceCheckUtils]: 76: Hoare triple {5057#true} assume !(~i~2 < 9999); {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L273 TraceCheckUtils]: 77: Hoare triple {5057#true} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {5057#true} is VALID [2018-11-14 18:56:06,912 INFO L256 TraceCheckUtils]: 78: Hoare triple {5057#true} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {5057#true} is VALID [2018-11-14 18:56:06,913 INFO L273 TraceCheckUtils]: 79: Hoare triple {5057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5309#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:06,913 INFO L273 TraceCheckUtils]: 80: Hoare triple {5309#(<= mapavg_~i~0 0)} assume true; {5309#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:06,914 INFO L273 TraceCheckUtils]: 81: Hoare triple {5309#(<= mapavg_~i~0 0)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5309#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:06,914 INFO L273 TraceCheckUtils]: 82: Hoare triple {5309#(<= mapavg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5319#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:06,914 INFO L273 TraceCheckUtils]: 83: Hoare triple {5319#(<= mapavg_~i~0 1)} assume true; {5319#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:06,915 INFO L273 TraceCheckUtils]: 84: Hoare triple {5319#(<= mapavg_~i~0 1)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5319#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:06,915 INFO L273 TraceCheckUtils]: 85: Hoare triple {5319#(<= mapavg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5329#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:06,916 INFO L273 TraceCheckUtils]: 86: Hoare triple {5329#(<= mapavg_~i~0 2)} assume true; {5329#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:06,916 INFO L273 TraceCheckUtils]: 87: Hoare triple {5329#(<= mapavg_~i~0 2)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5329#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:06,916 INFO L273 TraceCheckUtils]: 88: Hoare triple {5329#(<= mapavg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5339#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:06,917 INFO L273 TraceCheckUtils]: 89: Hoare triple {5339#(<= mapavg_~i~0 3)} assume true; {5339#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:06,917 INFO L273 TraceCheckUtils]: 90: Hoare triple {5339#(<= mapavg_~i~0 3)} assume !(~i~0 < 10000); {5058#false} is VALID [2018-11-14 18:56:06,917 INFO L273 TraceCheckUtils]: 91: Hoare triple {5058#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5058#false} is VALID [2018-11-14 18:56:06,918 INFO L273 TraceCheckUtils]: 92: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 18:56:06,918 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {5058#false} {5057#true} #77#return; {5058#false} is VALID [2018-11-14 18:56:06,918 INFO L273 TraceCheckUtils]: 94: Hoare triple {5058#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5058#false} is VALID [2018-11-14 18:56:06,918 INFO L273 TraceCheckUtils]: 95: Hoare triple {5058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5058#false} is VALID [2018-11-14 18:56:06,919 INFO L273 TraceCheckUtils]: 96: Hoare triple {5058#false} assume !false; {5058#false} is VALID [2018-11-14 18:56:06,923 INFO L134 CoverageAnalysis]: Checked inductivity of 313 backedges. 88 proven. 15 refuted. 0 times theorem prover too weak. 210 trivial. 0 not checked. [2018-11-14 18:56:06,944 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:06,944 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 6] total 16 [2018-11-14 18:56:06,945 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2018-11-14 18:56:06,945 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:06,945 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-14 18:56:07,028 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:07,028 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-14 18:56:07,029 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-14 18:56:07,029 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2018-11-14 18:56:07,029 INFO L87 Difference]: Start difference. First operand 68 states and 72 transitions. Second operand 16 states. [2018-11-14 18:56:07,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:07,626 INFO L93 Difference]: Finished difference Result 109 states and 121 transitions. [2018-11-14 18:56:07,626 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 18:56:07,627 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2018-11-14 18:56:07,627 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:07,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 18:56:07,629 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 103 transitions. [2018-11-14 18:56:07,629 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 18:56:07,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 103 transitions. [2018-11-14 18:56:07,630 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 103 transitions. [2018-11-14 18:56:08,583 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:08,586 INFO L225 Difference]: With dead ends: 109 [2018-11-14 18:56:08,586 INFO L226 Difference]: Without dead ends: 76 [2018-11-14 18:56:08,587 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2018-11-14 18:56:08,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2018-11-14 18:56:09,041 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 74. [2018-11-14 18:56:09,042 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:09,042 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand 74 states. [2018-11-14 18:56:09,042 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand 74 states. [2018-11-14 18:56:09,042 INFO L87 Difference]: Start difference. First operand 76 states. Second operand 74 states. [2018-11-14 18:56:09,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:09,046 INFO L93 Difference]: Finished difference Result 76 states and 80 transitions. [2018-11-14 18:56:09,046 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 80 transitions. [2018-11-14 18:56:09,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:09,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:09,047 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand 76 states. [2018-11-14 18:56:09,047 INFO L87 Difference]: Start difference. First operand 74 states. Second operand 76 states. [2018-11-14 18:56:09,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:09,050 INFO L93 Difference]: Finished difference Result 76 states and 80 transitions. [2018-11-14 18:56:09,050 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 80 transitions. [2018-11-14 18:56:09,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:09,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:09,050 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:09,051 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:09,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 74 states. [2018-11-14 18:56:09,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 78 transitions. [2018-11-14 18:56:09,053 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 78 transitions. Word has length 97 [2018-11-14 18:56:09,053 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:09,053 INFO L480 AbstractCegarLoop]: Abstraction has 74 states and 78 transitions. [2018-11-14 18:56:09,053 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-14 18:56:09,053 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 78 transitions. [2018-11-14 18:56:09,054 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2018-11-14 18:56:09,054 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:09,054 INFO L375 BasicCegarLoop]: trace histogram [15, 12, 12, 11, 10, 10, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:09,055 INFO L423 AbstractCegarLoop]: === Iteration 14 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:09,055 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:09,055 INFO L82 PathProgramCache]: Analyzing trace with hash -898579917, now seen corresponding path program 10 times [2018-11-14 18:56:09,055 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:09,055 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:09,056 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:09,056 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:09,056 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:09,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:09,773 INFO L256 TraceCheckUtils]: 0: Hoare triple {5763#true} call ULTIMATE.init(); {5763#true} is VALID [2018-11-14 18:56:09,773 INFO L273 TraceCheckUtils]: 1: Hoare triple {5763#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5763#true} is VALID [2018-11-14 18:56:09,773 INFO L273 TraceCheckUtils]: 2: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,773 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5763#true} {5763#true} #69#return; {5763#true} is VALID [2018-11-14 18:56:09,773 INFO L256 TraceCheckUtils]: 4: Hoare triple {5763#true} call #t~ret12 := main(); {5763#true} is VALID [2018-11-14 18:56:09,774 INFO L273 TraceCheckUtils]: 5: Hoare triple {5763#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5765#(= main_~i~1 0)} is VALID [2018-11-14 18:56:09,775 INFO L273 TraceCheckUtils]: 6: Hoare triple {5765#(= main_~i~1 0)} assume true; {5765#(= main_~i~1 0)} is VALID [2018-11-14 18:56:09,775 INFO L273 TraceCheckUtils]: 7: Hoare triple {5765#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5765#(= main_~i~1 0)} is VALID [2018-11-14 18:56:09,776 INFO L273 TraceCheckUtils]: 8: Hoare triple {5765#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:09,776 INFO L273 TraceCheckUtils]: 9: Hoare triple {5766#(<= main_~i~1 1)} assume true; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:09,776 INFO L273 TraceCheckUtils]: 10: Hoare triple {5766#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:09,777 INFO L273 TraceCheckUtils]: 11: Hoare triple {5766#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:09,777 INFO L273 TraceCheckUtils]: 12: Hoare triple {5767#(<= main_~i~1 2)} assume true; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:09,777 INFO L273 TraceCheckUtils]: 13: Hoare triple {5767#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:09,778 INFO L273 TraceCheckUtils]: 14: Hoare triple {5767#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:09,779 INFO L273 TraceCheckUtils]: 15: Hoare triple {5768#(<= main_~i~1 3)} assume true; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:09,779 INFO L273 TraceCheckUtils]: 16: Hoare triple {5768#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:09,780 INFO L273 TraceCheckUtils]: 17: Hoare triple {5768#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:09,781 INFO L273 TraceCheckUtils]: 18: Hoare triple {5769#(<= main_~i~1 4)} assume true; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:09,781 INFO L273 TraceCheckUtils]: 19: Hoare triple {5769#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:09,782 INFO L273 TraceCheckUtils]: 20: Hoare triple {5769#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:09,782 INFO L273 TraceCheckUtils]: 21: Hoare triple {5770#(<= main_~i~1 5)} assume true; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:09,783 INFO L273 TraceCheckUtils]: 22: Hoare triple {5770#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:09,784 INFO L273 TraceCheckUtils]: 23: Hoare triple {5770#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:09,784 INFO L273 TraceCheckUtils]: 24: Hoare triple {5771#(<= main_~i~1 6)} assume true; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:09,785 INFO L273 TraceCheckUtils]: 25: Hoare triple {5771#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:09,786 INFO L273 TraceCheckUtils]: 26: Hoare triple {5771#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:09,786 INFO L273 TraceCheckUtils]: 27: Hoare triple {5772#(<= main_~i~1 7)} assume true; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:09,787 INFO L273 TraceCheckUtils]: 28: Hoare triple {5772#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:09,787 INFO L273 TraceCheckUtils]: 29: Hoare triple {5772#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:09,788 INFO L273 TraceCheckUtils]: 30: Hoare triple {5773#(<= main_~i~1 8)} assume true; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:09,788 INFO L273 TraceCheckUtils]: 31: Hoare triple {5773#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:09,789 INFO L273 TraceCheckUtils]: 32: Hoare triple {5773#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:09,790 INFO L273 TraceCheckUtils]: 33: Hoare triple {5774#(<= main_~i~1 9)} assume true; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:09,790 INFO L273 TraceCheckUtils]: 34: Hoare triple {5774#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:09,791 INFO L273 TraceCheckUtils]: 35: Hoare triple {5774#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:09,792 INFO L273 TraceCheckUtils]: 36: Hoare triple {5775#(<= main_~i~1 10)} assume true; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:09,792 INFO L273 TraceCheckUtils]: 37: Hoare triple {5775#(<= main_~i~1 10)} assume !(~i~1 < 10000); {5764#false} is VALID [2018-11-14 18:56:09,792 INFO L256 TraceCheckUtils]: 38: Hoare triple {5764#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {5763#true} is VALID [2018-11-14 18:56:09,793 INFO L273 TraceCheckUtils]: 39: Hoare triple {5763#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5763#true} is VALID [2018-11-14 18:56:09,793 INFO L273 TraceCheckUtils]: 40: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,793 INFO L273 TraceCheckUtils]: 41: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,793 INFO L273 TraceCheckUtils]: 42: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,794 INFO L273 TraceCheckUtils]: 43: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,794 INFO L273 TraceCheckUtils]: 44: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,794 INFO L273 TraceCheckUtils]: 45: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,794 INFO L273 TraceCheckUtils]: 46: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,794 INFO L273 TraceCheckUtils]: 47: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,795 INFO L273 TraceCheckUtils]: 48: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,795 INFO L273 TraceCheckUtils]: 49: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,795 INFO L273 TraceCheckUtils]: 50: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,795 INFO L273 TraceCheckUtils]: 51: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,795 INFO L273 TraceCheckUtils]: 52: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,796 INFO L273 TraceCheckUtils]: 53: Hoare triple {5763#true} assume !(~i~0 < 10000); {5763#true} is VALID [2018-11-14 18:56:09,796 INFO L273 TraceCheckUtils]: 54: Hoare triple {5763#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5763#true} is VALID [2018-11-14 18:56:09,796 INFO L273 TraceCheckUtils]: 55: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,796 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5763#true} {5764#false} #73#return; {5764#false} is VALID [2018-11-14 18:56:09,797 INFO L273 TraceCheckUtils]: 57: Hoare triple {5764#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5764#false} is VALID [2018-11-14 18:56:09,797 INFO L256 TraceCheckUtils]: 58: Hoare triple {5764#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {5763#true} is VALID [2018-11-14 18:56:09,797 INFO L273 TraceCheckUtils]: 59: Hoare triple {5763#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5763#true} is VALID [2018-11-14 18:56:09,797 INFO L273 TraceCheckUtils]: 60: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,797 INFO L273 TraceCheckUtils]: 61: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,797 INFO L273 TraceCheckUtils]: 62: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 63: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 64: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 65: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 66: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 67: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 68: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 69: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 70: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,798 INFO L273 TraceCheckUtils]: 71: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,799 INFO L273 TraceCheckUtils]: 72: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,799 INFO L273 TraceCheckUtils]: 73: Hoare triple {5763#true} assume !(~i~0 < 10000); {5763#true} is VALID [2018-11-14 18:56:09,799 INFO L273 TraceCheckUtils]: 74: Hoare triple {5763#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5763#true} is VALID [2018-11-14 18:56:09,799 INFO L273 TraceCheckUtils]: 75: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,799 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {5763#true} {5764#false} #75#return; {5764#false} is VALID [2018-11-14 18:56:09,799 INFO L273 TraceCheckUtils]: 77: Hoare triple {5764#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5764#false} is VALID [2018-11-14 18:56:09,800 INFO L273 TraceCheckUtils]: 78: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:09,800 INFO L273 TraceCheckUtils]: 79: Hoare triple {5764#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:56:09,800 INFO L273 TraceCheckUtils]: 80: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:56:09,800 INFO L273 TraceCheckUtils]: 81: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:09,800 INFO L273 TraceCheckUtils]: 82: Hoare triple {5764#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:56:09,801 INFO L273 TraceCheckUtils]: 83: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:56:09,801 INFO L273 TraceCheckUtils]: 84: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:09,801 INFO L273 TraceCheckUtils]: 85: Hoare triple {5764#false} assume !(~i~2 < 9999); {5764#false} is VALID [2018-11-14 18:56:09,801 INFO L273 TraceCheckUtils]: 86: Hoare triple {5764#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {5764#false} is VALID [2018-11-14 18:56:09,801 INFO L256 TraceCheckUtils]: 87: Hoare triple {5764#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {5763#true} is VALID [2018-11-14 18:56:09,801 INFO L273 TraceCheckUtils]: 88: Hoare triple {5763#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5763#true} is VALID [2018-11-14 18:56:09,802 INFO L273 TraceCheckUtils]: 89: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,802 INFO L273 TraceCheckUtils]: 90: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,802 INFO L273 TraceCheckUtils]: 91: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,802 INFO L273 TraceCheckUtils]: 92: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,802 INFO L273 TraceCheckUtils]: 93: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,802 INFO L273 TraceCheckUtils]: 94: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,803 INFO L273 TraceCheckUtils]: 95: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,803 INFO L273 TraceCheckUtils]: 96: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,803 INFO L273 TraceCheckUtils]: 97: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,803 INFO L273 TraceCheckUtils]: 98: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,803 INFO L273 TraceCheckUtils]: 99: Hoare triple {5763#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5763#true} is VALID [2018-11-14 18:56:09,804 INFO L273 TraceCheckUtils]: 100: Hoare triple {5763#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5763#true} is VALID [2018-11-14 18:56:09,804 INFO L273 TraceCheckUtils]: 101: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,804 INFO L273 TraceCheckUtils]: 102: Hoare triple {5763#true} assume !(~i~0 < 10000); {5763#true} is VALID [2018-11-14 18:56:09,804 INFO L273 TraceCheckUtils]: 103: Hoare triple {5763#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5763#true} is VALID [2018-11-14 18:56:09,804 INFO L273 TraceCheckUtils]: 104: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:09,804 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {5763#true} {5764#false} #77#return; {5764#false} is VALID [2018-11-14 18:56:09,805 INFO L273 TraceCheckUtils]: 106: Hoare triple {5764#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5764#false} is VALID [2018-11-14 18:56:09,805 INFO L273 TraceCheckUtils]: 107: Hoare triple {5764#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5764#false} is VALID [2018-11-14 18:56:09,805 INFO L273 TraceCheckUtils]: 108: Hoare triple {5764#false} assume !false; {5764#false} is VALID [2018-11-14 18:56:09,813 INFO L134 CoverageAnalysis]: Checked inductivity of 450 backedges. 0 proven. 155 refuted. 0 times theorem prover too weak. 295 trivial. 0 not checked. [2018-11-14 18:56:09,814 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:09,814 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:09,830 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:56:09,873 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:56:09,873 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:09,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:09,893 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:10,063 INFO L256 TraceCheckUtils]: 0: Hoare triple {5763#true} call ULTIMATE.init(); {5763#true} is VALID [2018-11-14 18:56:10,063 INFO L273 TraceCheckUtils]: 1: Hoare triple {5763#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5763#true} is VALID [2018-11-14 18:56:10,064 INFO L273 TraceCheckUtils]: 2: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 18:56:10,064 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5763#true} {5763#true} #69#return; {5763#true} is VALID [2018-11-14 18:56:10,064 INFO L256 TraceCheckUtils]: 4: Hoare triple {5763#true} call #t~ret12 := main(); {5763#true} is VALID [2018-11-14 18:56:10,065 INFO L273 TraceCheckUtils]: 5: Hoare triple {5763#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5794#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:10,065 INFO L273 TraceCheckUtils]: 6: Hoare triple {5794#(<= main_~i~1 0)} assume true; {5794#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:10,066 INFO L273 TraceCheckUtils]: 7: Hoare triple {5794#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5794#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:10,066 INFO L273 TraceCheckUtils]: 8: Hoare triple {5794#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:10,067 INFO L273 TraceCheckUtils]: 9: Hoare triple {5766#(<= main_~i~1 1)} assume true; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:10,067 INFO L273 TraceCheckUtils]: 10: Hoare triple {5766#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:10,067 INFO L273 TraceCheckUtils]: 11: Hoare triple {5766#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:10,068 INFO L273 TraceCheckUtils]: 12: Hoare triple {5767#(<= main_~i~1 2)} assume true; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:10,068 INFO L273 TraceCheckUtils]: 13: Hoare triple {5767#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:10,068 INFO L273 TraceCheckUtils]: 14: Hoare triple {5767#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:10,069 INFO L273 TraceCheckUtils]: 15: Hoare triple {5768#(<= main_~i~1 3)} assume true; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:10,069 INFO L273 TraceCheckUtils]: 16: Hoare triple {5768#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:10,070 INFO L273 TraceCheckUtils]: 17: Hoare triple {5768#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:10,071 INFO L273 TraceCheckUtils]: 18: Hoare triple {5769#(<= main_~i~1 4)} assume true; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:10,071 INFO L273 TraceCheckUtils]: 19: Hoare triple {5769#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:10,072 INFO L273 TraceCheckUtils]: 20: Hoare triple {5769#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:10,072 INFO L273 TraceCheckUtils]: 21: Hoare triple {5770#(<= main_~i~1 5)} assume true; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:10,073 INFO L273 TraceCheckUtils]: 22: Hoare triple {5770#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:10,074 INFO L273 TraceCheckUtils]: 23: Hoare triple {5770#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:10,074 INFO L273 TraceCheckUtils]: 24: Hoare triple {5771#(<= main_~i~1 6)} assume true; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:10,075 INFO L273 TraceCheckUtils]: 25: Hoare triple {5771#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:10,076 INFO L273 TraceCheckUtils]: 26: Hoare triple {5771#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:10,076 INFO L273 TraceCheckUtils]: 27: Hoare triple {5772#(<= main_~i~1 7)} assume true; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:10,077 INFO L273 TraceCheckUtils]: 28: Hoare triple {5772#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:10,077 INFO L273 TraceCheckUtils]: 29: Hoare triple {5772#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:10,078 INFO L273 TraceCheckUtils]: 30: Hoare triple {5773#(<= main_~i~1 8)} assume true; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:10,078 INFO L273 TraceCheckUtils]: 31: Hoare triple {5773#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:10,079 INFO L273 TraceCheckUtils]: 32: Hoare triple {5773#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:10,080 INFO L273 TraceCheckUtils]: 33: Hoare triple {5774#(<= main_~i~1 9)} assume true; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:10,080 INFO L273 TraceCheckUtils]: 34: Hoare triple {5774#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:10,081 INFO L273 TraceCheckUtils]: 35: Hoare triple {5774#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:10,082 INFO L273 TraceCheckUtils]: 36: Hoare triple {5775#(<= main_~i~1 10)} assume true; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:10,082 INFO L273 TraceCheckUtils]: 37: Hoare triple {5775#(<= main_~i~1 10)} assume !(~i~1 < 10000); {5764#false} is VALID [2018-11-14 18:56:10,082 INFO L256 TraceCheckUtils]: 38: Hoare triple {5764#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {5764#false} is VALID [2018-11-14 18:56:10,083 INFO L273 TraceCheckUtils]: 39: Hoare triple {5764#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5764#false} is VALID [2018-11-14 18:56:10,083 INFO L273 TraceCheckUtils]: 40: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,083 INFO L273 TraceCheckUtils]: 41: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,083 INFO L273 TraceCheckUtils]: 42: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,083 INFO L273 TraceCheckUtils]: 43: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,084 INFO L273 TraceCheckUtils]: 44: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,084 INFO L273 TraceCheckUtils]: 45: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,084 INFO L273 TraceCheckUtils]: 46: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,084 INFO L273 TraceCheckUtils]: 47: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,085 INFO L273 TraceCheckUtils]: 48: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,085 INFO L273 TraceCheckUtils]: 49: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,085 INFO L273 TraceCheckUtils]: 50: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,085 INFO L273 TraceCheckUtils]: 51: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,086 INFO L273 TraceCheckUtils]: 52: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,086 INFO L273 TraceCheckUtils]: 53: Hoare triple {5764#false} assume !(~i~0 < 10000); {5764#false} is VALID [2018-11-14 18:56:10,086 INFO L273 TraceCheckUtils]: 54: Hoare triple {5764#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5764#false} is VALID [2018-11-14 18:56:10,087 INFO L273 TraceCheckUtils]: 55: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,087 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5764#false} {5764#false} #73#return; {5764#false} is VALID [2018-11-14 18:56:10,087 INFO L273 TraceCheckUtils]: 57: Hoare triple {5764#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {5764#false} is VALID [2018-11-14 18:56:10,087 INFO L256 TraceCheckUtils]: 58: Hoare triple {5764#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {5764#false} is VALID [2018-11-14 18:56:10,087 INFO L273 TraceCheckUtils]: 59: Hoare triple {5764#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5764#false} is VALID [2018-11-14 18:56:10,088 INFO L273 TraceCheckUtils]: 60: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,088 INFO L273 TraceCheckUtils]: 61: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,088 INFO L273 TraceCheckUtils]: 62: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,088 INFO L273 TraceCheckUtils]: 63: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,088 INFO L273 TraceCheckUtils]: 64: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,088 INFO L273 TraceCheckUtils]: 65: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,088 INFO L273 TraceCheckUtils]: 66: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,089 INFO L273 TraceCheckUtils]: 67: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,089 INFO L273 TraceCheckUtils]: 68: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,089 INFO L273 TraceCheckUtils]: 69: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,089 INFO L273 TraceCheckUtils]: 70: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,089 INFO L273 TraceCheckUtils]: 71: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,089 INFO L273 TraceCheckUtils]: 72: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,090 INFO L273 TraceCheckUtils]: 73: Hoare triple {5764#false} assume !(~i~0 < 10000); {5764#false} is VALID [2018-11-14 18:56:10,090 INFO L273 TraceCheckUtils]: 74: Hoare triple {5764#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5764#false} is VALID [2018-11-14 18:56:10,090 INFO L273 TraceCheckUtils]: 75: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,090 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {5764#false} {5764#false} #75#return; {5764#false} is VALID [2018-11-14 18:56:10,090 INFO L273 TraceCheckUtils]: 77: Hoare triple {5764#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {5764#false} is VALID [2018-11-14 18:56:10,090 INFO L273 TraceCheckUtils]: 78: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,091 INFO L273 TraceCheckUtils]: 79: Hoare triple {5764#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:56:10,091 INFO L273 TraceCheckUtils]: 80: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:56:10,091 INFO L273 TraceCheckUtils]: 81: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,091 INFO L273 TraceCheckUtils]: 82: Hoare triple {5764#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {5764#false} is VALID [2018-11-14 18:56:10,091 INFO L273 TraceCheckUtils]: 83: Hoare triple {5764#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {5764#false} is VALID [2018-11-14 18:56:10,091 INFO L273 TraceCheckUtils]: 84: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,092 INFO L273 TraceCheckUtils]: 85: Hoare triple {5764#false} assume !(~i~2 < 9999); {5764#false} is VALID [2018-11-14 18:56:10,092 INFO L273 TraceCheckUtils]: 86: Hoare triple {5764#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {5764#false} is VALID [2018-11-14 18:56:10,092 INFO L256 TraceCheckUtils]: 87: Hoare triple {5764#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {5764#false} is VALID [2018-11-14 18:56:10,092 INFO L273 TraceCheckUtils]: 88: Hoare triple {5764#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5764#false} is VALID [2018-11-14 18:56:10,092 INFO L273 TraceCheckUtils]: 89: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,092 INFO L273 TraceCheckUtils]: 90: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,093 INFO L273 TraceCheckUtils]: 91: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,093 INFO L273 TraceCheckUtils]: 92: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,093 INFO L273 TraceCheckUtils]: 93: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,093 INFO L273 TraceCheckUtils]: 94: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,093 INFO L273 TraceCheckUtils]: 95: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,093 INFO L273 TraceCheckUtils]: 96: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,094 INFO L273 TraceCheckUtils]: 97: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,094 INFO L273 TraceCheckUtils]: 98: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,094 INFO L273 TraceCheckUtils]: 99: Hoare triple {5764#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {5764#false} is VALID [2018-11-14 18:56:10,094 INFO L273 TraceCheckUtils]: 100: Hoare triple {5764#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {5764#false} is VALID [2018-11-14 18:56:10,094 INFO L273 TraceCheckUtils]: 101: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,094 INFO L273 TraceCheckUtils]: 102: Hoare triple {5764#false} assume !(~i~0 < 10000); {5764#false} is VALID [2018-11-14 18:56:10,094 INFO L273 TraceCheckUtils]: 103: Hoare triple {5764#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {5764#false} is VALID [2018-11-14 18:56:10,095 INFO L273 TraceCheckUtils]: 104: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 18:56:10,095 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {5764#false} {5764#false} #77#return; {5764#false} is VALID [2018-11-14 18:56:10,095 INFO L273 TraceCheckUtils]: 106: Hoare triple {5764#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {5764#false} is VALID [2018-11-14 18:56:10,095 INFO L273 TraceCheckUtils]: 107: Hoare triple {5764#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5764#false} is VALID [2018-11-14 18:56:10,095 INFO L273 TraceCheckUtils]: 108: Hoare triple {5764#false} assume !false; {5764#false} is VALID [2018-11-14 18:56:10,101 INFO L134 CoverageAnalysis]: Checked inductivity of 450 backedges. 0 proven. 155 refuted. 0 times theorem prover too weak. 295 trivial. 0 not checked. [2018-11-14 18:56:10,122 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:10,122 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-14 18:56:10,123 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 109 [2018-11-14 18:56:10,123 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:10,124 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-14 18:56:10,201 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:10,201 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-14 18:56:10,201 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-14 18:56:10,202 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-14 18:56:10,202 INFO L87 Difference]: Start difference. First operand 74 states and 78 transitions. Second operand 14 states. [2018-11-14 18:56:10,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:10,561 INFO L93 Difference]: Finished difference Result 114 states and 122 transitions. [2018-11-14 18:56:10,561 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-14 18:56:10,561 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 109 [2018-11-14 18:56:10,561 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:10,562 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 18:56:10,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 90 transitions. [2018-11-14 18:56:10,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 18:56:10,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 90 transitions. [2018-11-14 18:56:10,565 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 90 transitions. [2018-11-14 18:56:10,718 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:10,721 INFO L225 Difference]: With dead ends: 114 [2018-11-14 18:56:10,721 INFO L226 Difference]: Without dead ends: 78 [2018-11-14 18:56:10,722 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 109 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-14 18:56:10,722 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2018-11-14 18:56:10,756 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 77. [2018-11-14 18:56:10,756 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:10,756 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand 77 states. [2018-11-14 18:56:10,756 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand 77 states. [2018-11-14 18:56:10,756 INFO L87 Difference]: Start difference. First operand 78 states. Second operand 77 states. [2018-11-14 18:56:10,759 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:10,759 INFO L93 Difference]: Finished difference Result 78 states and 82 transitions. [2018-11-14 18:56:10,759 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 82 transitions. [2018-11-14 18:56:10,760 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:10,760 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:10,760 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 78 states. [2018-11-14 18:56:10,760 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 78 states. [2018-11-14 18:56:10,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:10,762 INFO L93 Difference]: Finished difference Result 78 states and 82 transitions. [2018-11-14 18:56:10,762 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 82 transitions. [2018-11-14 18:56:10,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:10,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:10,763 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:10,763 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:10,763 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 77 states. [2018-11-14 18:56:10,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 81 transitions. [2018-11-14 18:56:10,765 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 81 transitions. Word has length 109 [2018-11-14 18:56:10,765 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:10,766 INFO L480 AbstractCegarLoop]: Abstraction has 77 states and 81 transitions. [2018-11-14 18:56:10,766 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-14 18:56:10,766 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 81 transitions. [2018-11-14 18:56:10,767 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 113 [2018-11-14 18:56:10,767 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:10,767 INFO L375 BasicCegarLoop]: trace histogram [15, 12, 12, 12, 11, 11, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:10,767 INFO L423 AbstractCegarLoop]: === Iteration 15 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:10,768 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:10,768 INFO L82 PathProgramCache]: Analyzing trace with hash 1657732872, now seen corresponding path program 11 times [2018-11-14 18:56:10,768 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:10,768 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:10,769 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:10,769 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:10,769 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:10,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:11,402 INFO L256 TraceCheckUtils]: 0: Hoare triple {6518#true} call ULTIMATE.init(); {6518#true} is VALID [2018-11-14 18:56:11,402 INFO L273 TraceCheckUtils]: 1: Hoare triple {6518#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6518#true} is VALID [2018-11-14 18:56:11,402 INFO L273 TraceCheckUtils]: 2: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,402 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6518#true} {6518#true} #69#return; {6518#true} is VALID [2018-11-14 18:56:11,403 INFO L256 TraceCheckUtils]: 4: Hoare triple {6518#true} call #t~ret12 := main(); {6518#true} is VALID [2018-11-14 18:56:11,403 INFO L273 TraceCheckUtils]: 5: Hoare triple {6518#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {6520#(= main_~i~1 0)} is VALID [2018-11-14 18:56:11,403 INFO L273 TraceCheckUtils]: 6: Hoare triple {6520#(= main_~i~1 0)} assume true; {6520#(= main_~i~1 0)} is VALID [2018-11-14 18:56:11,404 INFO L273 TraceCheckUtils]: 7: Hoare triple {6520#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6520#(= main_~i~1 0)} is VALID [2018-11-14 18:56:11,404 INFO L273 TraceCheckUtils]: 8: Hoare triple {6520#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6521#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:11,405 INFO L273 TraceCheckUtils]: 9: Hoare triple {6521#(<= main_~i~1 1)} assume true; {6521#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:11,405 INFO L273 TraceCheckUtils]: 10: Hoare triple {6521#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6521#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:11,406 INFO L273 TraceCheckUtils]: 11: Hoare triple {6521#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6522#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:11,406 INFO L273 TraceCheckUtils]: 12: Hoare triple {6522#(<= main_~i~1 2)} assume true; {6522#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:11,407 INFO L273 TraceCheckUtils]: 13: Hoare triple {6522#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6522#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:11,408 INFO L273 TraceCheckUtils]: 14: Hoare triple {6522#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6523#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:11,408 INFO L273 TraceCheckUtils]: 15: Hoare triple {6523#(<= main_~i~1 3)} assume true; {6523#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:11,409 INFO L273 TraceCheckUtils]: 16: Hoare triple {6523#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6523#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:11,409 INFO L273 TraceCheckUtils]: 17: Hoare triple {6523#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6524#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:11,410 INFO L273 TraceCheckUtils]: 18: Hoare triple {6524#(<= main_~i~1 4)} assume true; {6524#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:11,411 INFO L273 TraceCheckUtils]: 19: Hoare triple {6524#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6524#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:11,411 INFO L273 TraceCheckUtils]: 20: Hoare triple {6524#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6525#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:11,412 INFO L273 TraceCheckUtils]: 21: Hoare triple {6525#(<= main_~i~1 5)} assume true; {6525#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:11,412 INFO L273 TraceCheckUtils]: 22: Hoare triple {6525#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6525#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:11,413 INFO L273 TraceCheckUtils]: 23: Hoare triple {6525#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6526#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:11,414 INFO L273 TraceCheckUtils]: 24: Hoare triple {6526#(<= main_~i~1 6)} assume true; {6526#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:11,414 INFO L273 TraceCheckUtils]: 25: Hoare triple {6526#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6526#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:11,415 INFO L273 TraceCheckUtils]: 26: Hoare triple {6526#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6527#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:11,416 INFO L273 TraceCheckUtils]: 27: Hoare triple {6527#(<= main_~i~1 7)} assume true; {6527#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:11,416 INFO L273 TraceCheckUtils]: 28: Hoare triple {6527#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6527#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:11,417 INFO L273 TraceCheckUtils]: 29: Hoare triple {6527#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6528#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:11,417 INFO L273 TraceCheckUtils]: 30: Hoare triple {6528#(<= main_~i~1 8)} assume true; {6528#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:11,418 INFO L273 TraceCheckUtils]: 31: Hoare triple {6528#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6528#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:11,419 INFO L273 TraceCheckUtils]: 32: Hoare triple {6528#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6529#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:11,419 INFO L273 TraceCheckUtils]: 33: Hoare triple {6529#(<= main_~i~1 9)} assume true; {6529#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:11,420 INFO L273 TraceCheckUtils]: 34: Hoare triple {6529#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6529#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:11,420 INFO L273 TraceCheckUtils]: 35: Hoare triple {6529#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6530#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:11,421 INFO L273 TraceCheckUtils]: 36: Hoare triple {6530#(<= main_~i~1 10)} assume true; {6530#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:11,422 INFO L273 TraceCheckUtils]: 37: Hoare triple {6530#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6530#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:11,422 INFO L273 TraceCheckUtils]: 38: Hoare triple {6530#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6531#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:11,423 INFO L273 TraceCheckUtils]: 39: Hoare triple {6531#(<= main_~i~1 11)} assume true; {6531#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:11,424 INFO L273 TraceCheckUtils]: 40: Hoare triple {6531#(<= main_~i~1 11)} assume !(~i~1 < 10000); {6519#false} is VALID [2018-11-14 18:56:11,424 INFO L256 TraceCheckUtils]: 41: Hoare triple {6519#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:56:11,424 INFO L273 TraceCheckUtils]: 42: Hoare triple {6518#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6518#true} is VALID [2018-11-14 18:56:11,424 INFO L273 TraceCheckUtils]: 43: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,424 INFO L273 TraceCheckUtils]: 44: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,425 INFO L273 TraceCheckUtils]: 45: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,425 INFO L273 TraceCheckUtils]: 46: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,425 INFO L273 TraceCheckUtils]: 47: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,425 INFO L273 TraceCheckUtils]: 48: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,425 INFO L273 TraceCheckUtils]: 49: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,426 INFO L273 TraceCheckUtils]: 50: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,426 INFO L273 TraceCheckUtils]: 51: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,426 INFO L273 TraceCheckUtils]: 52: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,426 INFO L273 TraceCheckUtils]: 53: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,426 INFO L273 TraceCheckUtils]: 54: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,427 INFO L273 TraceCheckUtils]: 55: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,427 INFO L273 TraceCheckUtils]: 56: Hoare triple {6518#true} assume !(~i~0 < 10000); {6518#true} is VALID [2018-11-14 18:56:11,427 INFO L273 TraceCheckUtils]: 57: Hoare triple {6518#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {6518#true} is VALID [2018-11-14 18:56:11,427 INFO L273 TraceCheckUtils]: 58: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,427 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6518#true} {6519#false} #73#return; {6519#false} is VALID [2018-11-14 18:56:11,428 INFO L273 TraceCheckUtils]: 60: Hoare triple {6519#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {6519#false} is VALID [2018-11-14 18:56:11,428 INFO L256 TraceCheckUtils]: 61: Hoare triple {6519#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:56:11,428 INFO L273 TraceCheckUtils]: 62: Hoare triple {6518#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6518#true} is VALID [2018-11-14 18:56:11,428 INFO L273 TraceCheckUtils]: 63: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,428 INFO L273 TraceCheckUtils]: 64: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,428 INFO L273 TraceCheckUtils]: 65: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 66: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 67: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 68: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 69: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 70: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 71: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 72: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,429 INFO L273 TraceCheckUtils]: 73: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 74: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 75: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 76: Hoare triple {6518#true} assume !(~i~0 < 10000); {6518#true} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 77: Hoare triple {6518#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {6518#true} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 78: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,430 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6518#true} {6519#false} #75#return; {6519#false} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 80: Hoare triple {6519#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {6519#false} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 81: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,430 INFO L273 TraceCheckUtils]: 82: Hoare triple {6519#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L273 TraceCheckUtils]: 83: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L273 TraceCheckUtils]: 84: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L273 TraceCheckUtils]: 85: Hoare triple {6519#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L273 TraceCheckUtils]: 86: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L273 TraceCheckUtils]: 87: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L273 TraceCheckUtils]: 88: Hoare triple {6519#false} assume !(~i~2 < 9999); {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L273 TraceCheckUtils]: 89: Hoare triple {6519#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {6519#false} is VALID [2018-11-14 18:56:11,431 INFO L256 TraceCheckUtils]: 90: Hoare triple {6519#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 91: Hoare triple {6518#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 92: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 93: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 94: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 95: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 96: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 97: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 98: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,432 INFO L273 TraceCheckUtils]: 99: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 100: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 101: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 102: Hoare triple {6518#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 103: Hoare triple {6518#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 104: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 105: Hoare triple {6518#true} assume !(~i~0 < 10000); {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 106: Hoare triple {6518#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {6518#true} is VALID [2018-11-14 18:56:11,433 INFO L273 TraceCheckUtils]: 107: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,434 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {6518#true} {6519#false} #77#return; {6519#false} is VALID [2018-11-14 18:56:11,434 INFO L273 TraceCheckUtils]: 109: Hoare triple {6519#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {6519#false} is VALID [2018-11-14 18:56:11,434 INFO L273 TraceCheckUtils]: 110: Hoare triple {6519#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6519#false} is VALID [2018-11-14 18:56:11,434 INFO L273 TraceCheckUtils]: 111: Hoare triple {6519#false} assume !false; {6519#false} is VALID [2018-11-14 18:56:11,440 INFO L134 CoverageAnalysis]: Checked inductivity of 482 backedges. 0 proven. 187 refuted. 0 times theorem prover too weak. 295 trivial. 0 not checked. [2018-11-14 18:56:11,440 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:11,440 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:11,448 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:56:11,647 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2018-11-14 18:56:11,647 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:11,670 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:11,672 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:11,836 INFO L256 TraceCheckUtils]: 0: Hoare triple {6518#true} call ULTIMATE.init(); {6518#true} is VALID [2018-11-14 18:56:11,836 INFO L273 TraceCheckUtils]: 1: Hoare triple {6518#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6518#true} is VALID [2018-11-14 18:56:11,836 INFO L273 TraceCheckUtils]: 2: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,837 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6518#true} {6518#true} #69#return; {6518#true} is VALID [2018-11-14 18:56:11,837 INFO L256 TraceCheckUtils]: 4: Hoare triple {6518#true} call #t~ret12 := main(); {6518#true} is VALID [2018-11-14 18:56:11,837 INFO L273 TraceCheckUtils]: 5: Hoare triple {6518#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {6518#true} is VALID [2018-11-14 18:56:11,837 INFO L273 TraceCheckUtils]: 6: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,837 INFO L273 TraceCheckUtils]: 7: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,837 INFO L273 TraceCheckUtils]: 8: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,838 INFO L273 TraceCheckUtils]: 9: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,838 INFO L273 TraceCheckUtils]: 10: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,838 INFO L273 TraceCheckUtils]: 11: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,838 INFO L273 TraceCheckUtils]: 12: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,838 INFO L273 TraceCheckUtils]: 13: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,839 INFO L273 TraceCheckUtils]: 14: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,839 INFO L273 TraceCheckUtils]: 15: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,839 INFO L273 TraceCheckUtils]: 16: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,839 INFO L273 TraceCheckUtils]: 17: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,839 INFO L273 TraceCheckUtils]: 18: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,839 INFO L273 TraceCheckUtils]: 19: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,840 INFO L273 TraceCheckUtils]: 20: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,840 INFO L273 TraceCheckUtils]: 21: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,840 INFO L273 TraceCheckUtils]: 22: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,840 INFO L273 TraceCheckUtils]: 23: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,840 INFO L273 TraceCheckUtils]: 24: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,840 INFO L273 TraceCheckUtils]: 25: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,841 INFO L273 TraceCheckUtils]: 26: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,841 INFO L273 TraceCheckUtils]: 27: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,841 INFO L273 TraceCheckUtils]: 28: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,841 INFO L273 TraceCheckUtils]: 29: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,841 INFO L273 TraceCheckUtils]: 30: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,842 INFO L273 TraceCheckUtils]: 31: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,842 INFO L273 TraceCheckUtils]: 32: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,842 INFO L273 TraceCheckUtils]: 33: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,842 INFO L273 TraceCheckUtils]: 34: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,842 INFO L273 TraceCheckUtils]: 35: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,842 INFO L273 TraceCheckUtils]: 36: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,843 INFO L273 TraceCheckUtils]: 37: Hoare triple {6518#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {6518#true} is VALID [2018-11-14 18:56:11,843 INFO L273 TraceCheckUtils]: 38: Hoare triple {6518#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {6518#true} is VALID [2018-11-14 18:56:11,843 INFO L273 TraceCheckUtils]: 39: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 18:56:11,843 INFO L273 TraceCheckUtils]: 40: Hoare triple {6518#true} assume !(~i~1 < 10000); {6518#true} is VALID [2018-11-14 18:56:11,843 INFO L256 TraceCheckUtils]: 41: Hoare triple {6518#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {6518#true} is VALID [2018-11-14 18:56:11,860 INFO L273 TraceCheckUtils]: 42: Hoare triple {6518#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6661#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:11,869 INFO L273 TraceCheckUtils]: 43: Hoare triple {6661#(<= mapavg_~i~0 0)} assume true; {6661#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:11,882 INFO L273 TraceCheckUtils]: 44: Hoare triple {6661#(<= mapavg_~i~0 0)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6661#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:11,891 INFO L273 TraceCheckUtils]: 45: Hoare triple {6661#(<= mapavg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6671#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:11,906 INFO L273 TraceCheckUtils]: 46: Hoare triple {6671#(<= mapavg_~i~0 1)} assume true; {6671#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:11,915 INFO L273 TraceCheckUtils]: 47: Hoare triple {6671#(<= mapavg_~i~0 1)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6671#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:11,921 INFO L273 TraceCheckUtils]: 48: Hoare triple {6671#(<= mapavg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6681#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:11,922 INFO L273 TraceCheckUtils]: 49: Hoare triple {6681#(<= mapavg_~i~0 2)} assume true; {6681#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:11,923 INFO L273 TraceCheckUtils]: 50: Hoare triple {6681#(<= mapavg_~i~0 2)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6681#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:11,923 INFO L273 TraceCheckUtils]: 51: Hoare triple {6681#(<= mapavg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6691#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:11,925 INFO L273 TraceCheckUtils]: 52: Hoare triple {6691#(<= mapavg_~i~0 3)} assume true; {6691#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:11,925 INFO L273 TraceCheckUtils]: 53: Hoare triple {6691#(<= mapavg_~i~0 3)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6691#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:11,927 INFO L273 TraceCheckUtils]: 54: Hoare triple {6691#(<= mapavg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6701#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:11,927 INFO L273 TraceCheckUtils]: 55: Hoare triple {6701#(<= mapavg_~i~0 4)} assume true; {6701#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:11,929 INFO L273 TraceCheckUtils]: 56: Hoare triple {6701#(<= mapavg_~i~0 4)} assume !(~i~0 < 10000); {6519#false} is VALID [2018-11-14 18:56:11,929 INFO L273 TraceCheckUtils]: 57: Hoare triple {6519#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {6519#false} is VALID [2018-11-14 18:56:11,929 INFO L273 TraceCheckUtils]: 58: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,929 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6519#false} {6518#true} #73#return; {6519#false} is VALID [2018-11-14 18:56:11,929 INFO L273 TraceCheckUtils]: 60: Hoare triple {6519#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {6519#false} is VALID [2018-11-14 18:56:11,929 INFO L256 TraceCheckUtils]: 61: Hoare triple {6519#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {6519#false} is VALID [2018-11-14 18:56:11,929 INFO L273 TraceCheckUtils]: 62: Hoare triple {6519#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 63: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 64: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 65: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 66: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 67: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 68: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 69: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 70: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,930 INFO L273 TraceCheckUtils]: 71: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L273 TraceCheckUtils]: 72: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L273 TraceCheckUtils]: 73: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L273 TraceCheckUtils]: 74: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L273 TraceCheckUtils]: 75: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L273 TraceCheckUtils]: 76: Hoare triple {6519#false} assume !(~i~0 < 10000); {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L273 TraceCheckUtils]: 77: Hoare triple {6519#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L273 TraceCheckUtils]: 78: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,931 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6519#false} {6519#false} #75#return; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 80: Hoare triple {6519#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 81: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 82: Hoare triple {6519#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 83: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 84: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 85: Hoare triple {6519#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 86: Hoare triple {6519#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 87: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,932 INFO L273 TraceCheckUtils]: 88: Hoare triple {6519#false} assume !(~i~2 < 9999); {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L273 TraceCheckUtils]: 89: Hoare triple {6519#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L256 TraceCheckUtils]: 90: Hoare triple {6519#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L273 TraceCheckUtils]: 91: Hoare triple {6519#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L273 TraceCheckUtils]: 92: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L273 TraceCheckUtils]: 93: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L273 TraceCheckUtils]: 94: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L273 TraceCheckUtils]: 95: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,933 INFO L273 TraceCheckUtils]: 96: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 97: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 98: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 99: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 100: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 101: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 102: Hoare triple {6519#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 103: Hoare triple {6519#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 104: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,934 INFO L273 TraceCheckUtils]: 105: Hoare triple {6519#false} assume !(~i~0 < 10000); {6519#false} is VALID [2018-11-14 18:56:11,935 INFO L273 TraceCheckUtils]: 106: Hoare triple {6519#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {6519#false} is VALID [2018-11-14 18:56:11,935 INFO L273 TraceCheckUtils]: 107: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 18:56:11,935 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {6519#false} {6519#false} #77#return; {6519#false} is VALID [2018-11-14 18:56:11,935 INFO L273 TraceCheckUtils]: 109: Hoare triple {6519#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {6519#false} is VALID [2018-11-14 18:56:11,935 INFO L273 TraceCheckUtils]: 110: Hoare triple {6519#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6519#false} is VALID [2018-11-14 18:56:11,935 INFO L273 TraceCheckUtils]: 111: Hoare triple {6519#false} assume !false; {6519#false} is VALID [2018-11-14 18:56:11,940 INFO L134 CoverageAnalysis]: Checked inductivity of 482 backedges. 134 proven. 26 refuted. 0 times theorem prover too weak. 322 trivial. 0 not checked. [2018-11-14 18:56:11,961 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:11,961 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 7] total 19 [2018-11-14 18:56:11,962 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 112 [2018-11-14 18:56:11,963 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:11,963 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-14 18:56:12,095 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:12,095 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-14 18:56:12,095 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-14 18:56:12,096 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=231, Unknown=0, NotChecked=0, Total=342 [2018-11-14 18:56:12,096 INFO L87 Difference]: Start difference. First operand 77 states and 81 transitions. Second operand 19 states. [2018-11-14 18:56:12,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:12,655 INFO L93 Difference]: Finished difference Result 121 states and 133 transitions. [2018-11-14 18:56:12,655 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-14 18:56:12,655 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 112 [2018-11-14 18:56:12,655 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:12,655 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 18:56:12,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 112 transitions. [2018-11-14 18:56:12,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 18:56:12,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 112 transitions. [2018-11-14 18:56:12,659 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 112 transitions. [2018-11-14 18:56:12,833 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:12,836 INFO L225 Difference]: With dead ends: 121 [2018-11-14 18:56:12,836 INFO L226 Difference]: Without dead ends: 85 [2018-11-14 18:56:12,836 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 108 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=111, Invalid=231, Unknown=0, NotChecked=0, Total=342 [2018-11-14 18:56:12,837 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2018-11-14 18:56:12,908 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 83. [2018-11-14 18:56:12,908 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:12,908 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand 83 states. [2018-11-14 18:56:12,908 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 83 states. [2018-11-14 18:56:12,908 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 83 states. [2018-11-14 18:56:12,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:12,912 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2018-11-14 18:56:12,912 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2018-11-14 18:56:12,913 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:12,913 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:12,913 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 85 states. [2018-11-14 18:56:12,913 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 85 states. [2018-11-14 18:56:12,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:12,915 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2018-11-14 18:56:12,915 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2018-11-14 18:56:12,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:12,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:12,916 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:12,916 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:12,916 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2018-11-14 18:56:12,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 87 transitions. [2018-11-14 18:56:12,918 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 87 transitions. Word has length 112 [2018-11-14 18:56:12,919 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:12,919 INFO L480 AbstractCegarLoop]: Abstraction has 83 states and 87 transitions. [2018-11-14 18:56:12,919 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-14 18:56:12,919 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 87 transitions. [2018-11-14 18:56:12,920 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2018-11-14 18:56:12,920 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:12,921 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 13, 12, 12, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:12,921 INFO L423 AbstractCegarLoop]: === Iteration 16 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:12,921 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:12,921 INFO L82 PathProgramCache]: Analyzing trace with hash 1732897364, now seen corresponding path program 12 times [2018-11-14 18:56:12,921 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:12,921 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:12,922 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:12,922 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:12,922 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:12,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:13,645 INFO L256 TraceCheckUtils]: 0: Hoare triple {7318#true} call ULTIMATE.init(); {7318#true} is VALID [2018-11-14 18:56:13,646 INFO L273 TraceCheckUtils]: 1: Hoare triple {7318#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7318#true} is VALID [2018-11-14 18:56:13,646 INFO L273 TraceCheckUtils]: 2: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,646 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7318#true} {7318#true} #69#return; {7318#true} is VALID [2018-11-14 18:56:13,647 INFO L256 TraceCheckUtils]: 4: Hoare triple {7318#true} call #t~ret12 := main(); {7318#true} is VALID [2018-11-14 18:56:13,647 INFO L273 TraceCheckUtils]: 5: Hoare triple {7318#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {7320#(= main_~i~1 0)} is VALID [2018-11-14 18:56:13,648 INFO L273 TraceCheckUtils]: 6: Hoare triple {7320#(= main_~i~1 0)} assume true; {7320#(= main_~i~1 0)} is VALID [2018-11-14 18:56:13,648 INFO L273 TraceCheckUtils]: 7: Hoare triple {7320#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7320#(= main_~i~1 0)} is VALID [2018-11-14 18:56:13,649 INFO L273 TraceCheckUtils]: 8: Hoare triple {7320#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7321#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:13,649 INFO L273 TraceCheckUtils]: 9: Hoare triple {7321#(<= main_~i~1 1)} assume true; {7321#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:13,649 INFO L273 TraceCheckUtils]: 10: Hoare triple {7321#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7321#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:13,650 INFO L273 TraceCheckUtils]: 11: Hoare triple {7321#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7322#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:13,650 INFO L273 TraceCheckUtils]: 12: Hoare triple {7322#(<= main_~i~1 2)} assume true; {7322#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:13,651 INFO L273 TraceCheckUtils]: 13: Hoare triple {7322#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7322#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:13,651 INFO L273 TraceCheckUtils]: 14: Hoare triple {7322#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7323#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:13,652 INFO L273 TraceCheckUtils]: 15: Hoare triple {7323#(<= main_~i~1 3)} assume true; {7323#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:13,652 INFO L273 TraceCheckUtils]: 16: Hoare triple {7323#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7323#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:13,653 INFO L273 TraceCheckUtils]: 17: Hoare triple {7323#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7324#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:13,654 INFO L273 TraceCheckUtils]: 18: Hoare triple {7324#(<= main_~i~1 4)} assume true; {7324#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:13,654 INFO L273 TraceCheckUtils]: 19: Hoare triple {7324#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7324#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:13,655 INFO L273 TraceCheckUtils]: 20: Hoare triple {7324#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7325#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:13,656 INFO L273 TraceCheckUtils]: 21: Hoare triple {7325#(<= main_~i~1 5)} assume true; {7325#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:13,656 INFO L273 TraceCheckUtils]: 22: Hoare triple {7325#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7325#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:13,657 INFO L273 TraceCheckUtils]: 23: Hoare triple {7325#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7326#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:13,657 INFO L273 TraceCheckUtils]: 24: Hoare triple {7326#(<= main_~i~1 6)} assume true; {7326#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:13,658 INFO L273 TraceCheckUtils]: 25: Hoare triple {7326#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7326#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:13,659 INFO L273 TraceCheckUtils]: 26: Hoare triple {7326#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7327#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:13,659 INFO L273 TraceCheckUtils]: 27: Hoare triple {7327#(<= main_~i~1 7)} assume true; {7327#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:13,660 INFO L273 TraceCheckUtils]: 28: Hoare triple {7327#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7327#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:13,660 INFO L273 TraceCheckUtils]: 29: Hoare triple {7327#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7328#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:13,661 INFO L273 TraceCheckUtils]: 30: Hoare triple {7328#(<= main_~i~1 8)} assume true; {7328#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:13,661 INFO L273 TraceCheckUtils]: 31: Hoare triple {7328#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7328#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:13,662 INFO L273 TraceCheckUtils]: 32: Hoare triple {7328#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7329#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:13,663 INFO L273 TraceCheckUtils]: 33: Hoare triple {7329#(<= main_~i~1 9)} assume true; {7329#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:13,663 INFO L273 TraceCheckUtils]: 34: Hoare triple {7329#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7329#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:13,664 INFO L273 TraceCheckUtils]: 35: Hoare triple {7329#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7330#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:13,665 INFO L273 TraceCheckUtils]: 36: Hoare triple {7330#(<= main_~i~1 10)} assume true; {7330#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:13,665 INFO L273 TraceCheckUtils]: 37: Hoare triple {7330#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7330#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:13,666 INFO L273 TraceCheckUtils]: 38: Hoare triple {7330#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7331#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:13,666 INFO L273 TraceCheckUtils]: 39: Hoare triple {7331#(<= main_~i~1 11)} assume true; {7331#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:13,667 INFO L273 TraceCheckUtils]: 40: Hoare triple {7331#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7331#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:13,668 INFO L273 TraceCheckUtils]: 41: Hoare triple {7331#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7332#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:13,668 INFO L273 TraceCheckUtils]: 42: Hoare triple {7332#(<= main_~i~1 12)} assume true; {7332#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:13,669 INFO L273 TraceCheckUtils]: 43: Hoare triple {7332#(<= main_~i~1 12)} assume !(~i~1 < 10000); {7319#false} is VALID [2018-11-14 18:56:13,669 INFO L256 TraceCheckUtils]: 44: Hoare triple {7319#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:56:13,669 INFO L273 TraceCheckUtils]: 45: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:56:13,670 INFO L273 TraceCheckUtils]: 46: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,670 INFO L273 TraceCheckUtils]: 47: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,670 INFO L273 TraceCheckUtils]: 48: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,670 INFO L273 TraceCheckUtils]: 49: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,670 INFO L273 TraceCheckUtils]: 50: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,670 INFO L273 TraceCheckUtils]: 51: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,671 INFO L273 TraceCheckUtils]: 52: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,671 INFO L273 TraceCheckUtils]: 53: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,671 INFO L273 TraceCheckUtils]: 54: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,671 INFO L273 TraceCheckUtils]: 55: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,671 INFO L273 TraceCheckUtils]: 56: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 57: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 58: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 59: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 60: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 61: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 62: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 63: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:56:13,672 INFO L273 TraceCheckUtils]: 64: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,673 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7318#true} {7319#false} #73#return; {7319#false} is VALID [2018-11-14 18:56:13,673 INFO L273 TraceCheckUtils]: 66: Hoare triple {7319#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {7319#false} is VALID [2018-11-14 18:56:13,673 INFO L256 TraceCheckUtils]: 67: Hoare triple {7319#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:56:13,673 INFO L273 TraceCheckUtils]: 68: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:56:13,673 INFO L273 TraceCheckUtils]: 69: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,673 INFO L273 TraceCheckUtils]: 70: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,673 INFO L273 TraceCheckUtils]: 71: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,673 INFO L273 TraceCheckUtils]: 72: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,673 INFO L273 TraceCheckUtils]: 73: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 74: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 75: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 76: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 77: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 78: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 79: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 80: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 81: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,674 INFO L273 TraceCheckUtils]: 82: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,675 INFO L273 TraceCheckUtils]: 83: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,675 INFO L273 TraceCheckUtils]: 84: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,675 INFO L273 TraceCheckUtils]: 85: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 18:56:13,675 INFO L273 TraceCheckUtils]: 86: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:56:13,675 INFO L273 TraceCheckUtils]: 87: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,675 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {7318#true} {7319#false} #75#return; {7319#false} is VALID [2018-11-14 18:56:13,675 INFO L273 TraceCheckUtils]: 89: Hoare triple {7319#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {7319#false} is VALID [2018-11-14 18:56:13,675 INFO L273 TraceCheckUtils]: 90: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 91: Hoare triple {7319#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 92: Hoare triple {7319#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 93: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 94: Hoare triple {7319#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 95: Hoare triple {7319#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 96: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 97: Hoare triple {7319#false} assume !(~i~2 < 9999); {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L273 TraceCheckUtils]: 98: Hoare triple {7319#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {7319#false} is VALID [2018-11-14 18:56:13,676 INFO L256 TraceCheckUtils]: 99: Hoare triple {7319#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 100: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 101: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 102: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 103: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 104: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 105: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 106: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 107: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,677 INFO L273 TraceCheckUtils]: 108: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 109: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 110: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 111: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 112: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 113: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 114: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 115: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 116: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,678 INFO L273 TraceCheckUtils]: 117: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 18:56:13,679 INFO L273 TraceCheckUtils]: 118: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:56:13,679 INFO L273 TraceCheckUtils]: 119: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:13,679 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {7318#true} {7319#false} #77#return; {7319#false} is VALID [2018-11-14 18:56:13,679 INFO L273 TraceCheckUtils]: 121: Hoare triple {7319#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {7319#false} is VALID [2018-11-14 18:56:13,679 INFO L273 TraceCheckUtils]: 122: Hoare triple {7319#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7319#false} is VALID [2018-11-14 18:56:13,679 INFO L273 TraceCheckUtils]: 123: Hoare triple {7319#false} assume !false; {7319#false} is VALID [2018-11-14 18:56:13,691 INFO L134 CoverageAnalysis]: Checked inductivity of 652 backedges. 0 proven. 222 refuted. 0 times theorem prover too weak. 430 trivial. 0 not checked. [2018-11-14 18:56:13,691 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:13,691 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:13,701 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:56:13,809 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2018-11-14 18:56:13,809 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:13,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:13,850 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:14,016 INFO L256 TraceCheckUtils]: 0: Hoare triple {7318#true} call ULTIMATE.init(); {7318#true} is VALID [2018-11-14 18:56:14,017 INFO L273 TraceCheckUtils]: 1: Hoare triple {7318#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7318#true} is VALID [2018-11-14 18:56:14,017 INFO L273 TraceCheckUtils]: 2: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,017 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7318#true} {7318#true} #69#return; {7318#true} is VALID [2018-11-14 18:56:14,018 INFO L256 TraceCheckUtils]: 4: Hoare triple {7318#true} call #t~ret12 := main(); {7318#true} is VALID [2018-11-14 18:56:14,018 INFO L273 TraceCheckUtils]: 5: Hoare triple {7318#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {7318#true} is VALID [2018-11-14 18:56:14,018 INFO L273 TraceCheckUtils]: 6: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,019 INFO L273 TraceCheckUtils]: 7: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,019 INFO L273 TraceCheckUtils]: 8: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,019 INFO L273 TraceCheckUtils]: 9: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,019 INFO L273 TraceCheckUtils]: 10: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,020 INFO L273 TraceCheckUtils]: 11: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,020 INFO L273 TraceCheckUtils]: 12: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,020 INFO L273 TraceCheckUtils]: 13: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,020 INFO L273 TraceCheckUtils]: 14: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,020 INFO L273 TraceCheckUtils]: 15: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,021 INFO L273 TraceCheckUtils]: 16: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,021 INFO L273 TraceCheckUtils]: 17: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,021 INFO L273 TraceCheckUtils]: 18: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,021 INFO L273 TraceCheckUtils]: 19: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,021 INFO L273 TraceCheckUtils]: 20: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,021 INFO L273 TraceCheckUtils]: 21: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,021 INFO L273 TraceCheckUtils]: 22: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,022 INFO L273 TraceCheckUtils]: 23: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,022 INFO L273 TraceCheckUtils]: 24: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,022 INFO L273 TraceCheckUtils]: 25: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,022 INFO L273 TraceCheckUtils]: 26: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,022 INFO L273 TraceCheckUtils]: 27: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,022 INFO L273 TraceCheckUtils]: 28: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,022 INFO L273 TraceCheckUtils]: 29: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,023 INFO L273 TraceCheckUtils]: 30: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,023 INFO L273 TraceCheckUtils]: 31: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,023 INFO L273 TraceCheckUtils]: 32: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,023 INFO L273 TraceCheckUtils]: 33: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,023 INFO L273 TraceCheckUtils]: 34: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,023 INFO L273 TraceCheckUtils]: 35: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,023 INFO L273 TraceCheckUtils]: 36: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,024 INFO L273 TraceCheckUtils]: 37: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,024 INFO L273 TraceCheckUtils]: 38: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,024 INFO L273 TraceCheckUtils]: 39: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,024 INFO L273 TraceCheckUtils]: 40: Hoare triple {7318#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {7318#true} is VALID [2018-11-14 18:56:14,024 INFO L273 TraceCheckUtils]: 41: Hoare triple {7318#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {7318#true} is VALID [2018-11-14 18:56:14,024 INFO L273 TraceCheckUtils]: 42: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,025 INFO L273 TraceCheckUtils]: 43: Hoare triple {7318#true} assume !(~i~1 < 10000); {7318#true} is VALID [2018-11-14 18:56:14,025 INFO L256 TraceCheckUtils]: 44: Hoare triple {7318#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:56:14,025 INFO L273 TraceCheckUtils]: 45: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:56:14,025 INFO L273 TraceCheckUtils]: 46: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,025 INFO L273 TraceCheckUtils]: 47: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,025 INFO L273 TraceCheckUtils]: 48: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,025 INFO L273 TraceCheckUtils]: 49: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,026 INFO L273 TraceCheckUtils]: 50: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,026 INFO L273 TraceCheckUtils]: 51: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,026 INFO L273 TraceCheckUtils]: 52: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,026 INFO L273 TraceCheckUtils]: 53: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,026 INFO L273 TraceCheckUtils]: 54: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,026 INFO L273 TraceCheckUtils]: 55: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,026 INFO L273 TraceCheckUtils]: 56: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,027 INFO L273 TraceCheckUtils]: 57: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,027 INFO L273 TraceCheckUtils]: 58: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,027 INFO L273 TraceCheckUtils]: 59: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,027 INFO L273 TraceCheckUtils]: 60: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,027 INFO L273 TraceCheckUtils]: 61: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,027 INFO L273 TraceCheckUtils]: 62: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 18:56:14,027 INFO L273 TraceCheckUtils]: 63: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:56:14,028 INFO L273 TraceCheckUtils]: 64: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,028 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7318#true} {7318#true} #73#return; {7318#true} is VALID [2018-11-14 18:56:14,028 INFO L273 TraceCheckUtils]: 66: Hoare triple {7318#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {7318#true} is VALID [2018-11-14 18:56:14,028 INFO L256 TraceCheckUtils]: 67: Hoare triple {7318#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {7318#true} is VALID [2018-11-14 18:56:14,028 INFO L273 TraceCheckUtils]: 68: Hoare triple {7318#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7318#true} is VALID [2018-11-14 18:56:14,028 INFO L273 TraceCheckUtils]: 69: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,028 INFO L273 TraceCheckUtils]: 70: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,029 INFO L273 TraceCheckUtils]: 71: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,029 INFO L273 TraceCheckUtils]: 72: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,029 INFO L273 TraceCheckUtils]: 73: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,029 INFO L273 TraceCheckUtils]: 74: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,029 INFO L273 TraceCheckUtils]: 75: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,029 INFO L273 TraceCheckUtils]: 76: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,030 INFO L273 TraceCheckUtils]: 77: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,030 INFO L273 TraceCheckUtils]: 78: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,030 INFO L273 TraceCheckUtils]: 79: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,030 INFO L273 TraceCheckUtils]: 80: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,030 INFO L273 TraceCheckUtils]: 81: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,030 INFO L273 TraceCheckUtils]: 82: Hoare triple {7318#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7318#true} is VALID [2018-11-14 18:56:14,030 INFO L273 TraceCheckUtils]: 83: Hoare triple {7318#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7318#true} is VALID [2018-11-14 18:56:14,031 INFO L273 TraceCheckUtils]: 84: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,031 INFO L273 TraceCheckUtils]: 85: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 18:56:14,031 INFO L273 TraceCheckUtils]: 86: Hoare triple {7318#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {7318#true} is VALID [2018-11-14 18:56:14,031 INFO L273 TraceCheckUtils]: 87: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 18:56:14,031 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {7318#true} {7318#true} #75#return; {7318#true} is VALID [2018-11-14 18:56:14,036 INFO L273 TraceCheckUtils]: 89: Hoare triple {7318#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {7603#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:14,037 INFO L273 TraceCheckUtils]: 90: Hoare triple {7603#(<= main_~i~2 0)} assume true; {7603#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:14,037 INFO L273 TraceCheckUtils]: 91: Hoare triple {7603#(<= main_~i~2 0)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7603#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:14,038 INFO L273 TraceCheckUtils]: 92: Hoare triple {7603#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7613#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:14,038 INFO L273 TraceCheckUtils]: 93: Hoare triple {7613#(<= main_~i~2 1)} assume true; {7613#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:14,038 INFO L273 TraceCheckUtils]: 94: Hoare triple {7613#(<= main_~i~2 1)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {7613#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:14,039 INFO L273 TraceCheckUtils]: 95: Hoare triple {7613#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {7623#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:14,039 INFO L273 TraceCheckUtils]: 96: Hoare triple {7623#(<= main_~i~2 2)} assume true; {7623#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:14,040 INFO L273 TraceCheckUtils]: 97: Hoare triple {7623#(<= main_~i~2 2)} assume !(~i~2 < 9999); {7319#false} is VALID [2018-11-14 18:56:14,040 INFO L273 TraceCheckUtils]: 98: Hoare triple {7319#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {7319#false} is VALID [2018-11-14 18:56:14,040 INFO L256 TraceCheckUtils]: 99: Hoare triple {7319#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {7319#false} is VALID [2018-11-14 18:56:14,040 INFO L273 TraceCheckUtils]: 100: Hoare triple {7319#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7319#false} is VALID [2018-11-14 18:56:14,040 INFO L273 TraceCheckUtils]: 101: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:14,041 INFO L273 TraceCheckUtils]: 102: Hoare triple {7319#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:56:14,041 INFO L273 TraceCheckUtils]: 103: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:56:14,041 INFO L273 TraceCheckUtils]: 104: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:14,041 INFO L273 TraceCheckUtils]: 105: Hoare triple {7319#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:56:14,041 INFO L273 TraceCheckUtils]: 106: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:56:14,041 INFO L273 TraceCheckUtils]: 107: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:14,041 INFO L273 TraceCheckUtils]: 108: Hoare triple {7319#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:56:14,042 INFO L273 TraceCheckUtils]: 109: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:56:14,042 INFO L273 TraceCheckUtils]: 110: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:14,042 INFO L273 TraceCheckUtils]: 111: Hoare triple {7319#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:56:14,042 INFO L273 TraceCheckUtils]: 112: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:56:14,042 INFO L273 TraceCheckUtils]: 113: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:14,042 INFO L273 TraceCheckUtils]: 114: Hoare triple {7319#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {7319#false} is VALID [2018-11-14 18:56:14,043 INFO L273 TraceCheckUtils]: 115: Hoare triple {7319#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {7319#false} is VALID [2018-11-14 18:56:14,043 INFO L273 TraceCheckUtils]: 116: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:14,043 INFO L273 TraceCheckUtils]: 117: Hoare triple {7319#false} assume !(~i~0 < 10000); {7319#false} is VALID [2018-11-14 18:56:14,043 INFO L273 TraceCheckUtils]: 118: Hoare triple {7319#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {7319#false} is VALID [2018-11-14 18:56:14,043 INFO L273 TraceCheckUtils]: 119: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 18:56:14,043 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {7319#false} {7319#false} #77#return; {7319#false} is VALID [2018-11-14 18:56:14,043 INFO L273 TraceCheckUtils]: 121: Hoare triple {7319#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {7319#false} is VALID [2018-11-14 18:56:14,044 INFO L273 TraceCheckUtils]: 122: Hoare triple {7319#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7319#false} is VALID [2018-11-14 18:56:14,044 INFO L273 TraceCheckUtils]: 123: Hoare triple {7319#false} assume !false; {7319#false} is VALID [2018-11-14 18:56:14,057 INFO L134 CoverageAnalysis]: Checked inductivity of 652 backedges. 202 proven. 7 refuted. 0 times theorem prover too weak. 443 trivial. 0 not checked. [2018-11-14 18:56:14,079 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:14,079 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 5] total 18 [2018-11-14 18:56:14,080 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 124 [2018-11-14 18:56:14,080 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:14,081 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-14 18:56:14,182 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:14,182 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-14 18:56:14,183 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-14 18:56:14,183 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=114, Invalid=192, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:56:14,183 INFO L87 Difference]: Start difference. First operand 83 states and 87 transitions. Second operand 18 states. [2018-11-14 18:56:14,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:14,736 INFO L93 Difference]: Finished difference Result 130 states and 139 transitions. [2018-11-14 18:56:14,737 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-14 18:56:14,737 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 124 [2018-11-14 18:56:14,737 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:14,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:56:14,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 18:56:14,740 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:56:14,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 18:56:14,741 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 106 transitions. [2018-11-14 18:56:14,859 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-14 18:56:14,862 INFO L225 Difference]: With dead ends: 130 [2018-11-14 18:56:14,862 INFO L226 Difference]: Without dead ends: 91 [2018-11-14 18:56:14,863 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 122 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=114, Invalid=192, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:56:14,863 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2018-11-14 18:56:14,886 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 89. [2018-11-14 18:56:14,886 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:14,886 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand 89 states. [2018-11-14 18:56:14,886 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 89 states. [2018-11-14 18:56:14,886 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 89 states. [2018-11-14 18:56:14,889 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:14,889 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2018-11-14 18:56:14,889 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2018-11-14 18:56:14,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:14,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:14,890 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand 91 states. [2018-11-14 18:56:14,890 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 91 states. [2018-11-14 18:56:14,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:14,892 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2018-11-14 18:56:14,892 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2018-11-14 18:56:14,893 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:14,893 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:14,893 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:14,893 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:14,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 89 states. [2018-11-14 18:56:14,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 93 transitions. [2018-11-14 18:56:14,895 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 93 transitions. Word has length 124 [2018-11-14 18:56:14,895 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:14,895 INFO L480 AbstractCegarLoop]: Abstraction has 89 states and 93 transitions. [2018-11-14 18:56:14,895 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-14 18:56:14,896 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 93 transitions. [2018-11-14 18:56:14,897 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 131 [2018-11-14 18:56:14,897 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:14,897 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 14, 13, 13, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:14,897 INFO L423 AbstractCegarLoop]: === Iteration 17 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:14,897 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:14,898 INFO L82 PathProgramCache]: Analyzing trace with hash 918106204, now seen corresponding path program 13 times [2018-11-14 18:56:14,898 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:14,898 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:14,899 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:14,899 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:14,899 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:14,918 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:15,183 INFO L256 TraceCheckUtils]: 0: Hoare triple {8185#true} call ULTIMATE.init(); {8185#true} is VALID [2018-11-14 18:56:15,184 INFO L273 TraceCheckUtils]: 1: Hoare triple {8185#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8185#true} is VALID [2018-11-14 18:56:15,184 INFO L273 TraceCheckUtils]: 2: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,184 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8185#true} {8185#true} #69#return; {8185#true} is VALID [2018-11-14 18:56:15,184 INFO L256 TraceCheckUtils]: 4: Hoare triple {8185#true} call #t~ret12 := main(); {8185#true} is VALID [2018-11-14 18:56:15,185 INFO L273 TraceCheckUtils]: 5: Hoare triple {8185#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8187#(= main_~i~1 0)} is VALID [2018-11-14 18:56:15,185 INFO L273 TraceCheckUtils]: 6: Hoare triple {8187#(= main_~i~1 0)} assume true; {8187#(= main_~i~1 0)} is VALID [2018-11-14 18:56:15,185 INFO L273 TraceCheckUtils]: 7: Hoare triple {8187#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8187#(= main_~i~1 0)} is VALID [2018-11-14 18:56:15,186 INFO L273 TraceCheckUtils]: 8: Hoare triple {8187#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:15,186 INFO L273 TraceCheckUtils]: 9: Hoare triple {8188#(<= main_~i~1 1)} assume true; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:15,187 INFO L273 TraceCheckUtils]: 10: Hoare triple {8188#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:15,187 INFO L273 TraceCheckUtils]: 11: Hoare triple {8188#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:15,187 INFO L273 TraceCheckUtils]: 12: Hoare triple {8189#(<= main_~i~1 2)} assume true; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:15,188 INFO L273 TraceCheckUtils]: 13: Hoare triple {8189#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:15,188 INFO L273 TraceCheckUtils]: 14: Hoare triple {8189#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:15,188 INFO L273 TraceCheckUtils]: 15: Hoare triple {8190#(<= main_~i~1 3)} assume true; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:15,189 INFO L273 TraceCheckUtils]: 16: Hoare triple {8190#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:15,189 INFO L273 TraceCheckUtils]: 17: Hoare triple {8190#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:15,190 INFO L273 TraceCheckUtils]: 18: Hoare triple {8191#(<= main_~i~1 4)} assume true; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:15,190 INFO L273 TraceCheckUtils]: 19: Hoare triple {8191#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:15,193 INFO L273 TraceCheckUtils]: 20: Hoare triple {8191#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:15,194 INFO L273 TraceCheckUtils]: 21: Hoare triple {8192#(<= main_~i~1 5)} assume true; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:15,194 INFO L273 TraceCheckUtils]: 22: Hoare triple {8192#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:15,194 INFO L273 TraceCheckUtils]: 23: Hoare triple {8192#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:15,195 INFO L273 TraceCheckUtils]: 24: Hoare triple {8193#(<= main_~i~1 6)} assume true; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:15,195 INFO L273 TraceCheckUtils]: 25: Hoare triple {8193#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:15,195 INFO L273 TraceCheckUtils]: 26: Hoare triple {8193#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:15,196 INFO L273 TraceCheckUtils]: 27: Hoare triple {8194#(<= main_~i~1 7)} assume true; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:15,196 INFO L273 TraceCheckUtils]: 28: Hoare triple {8194#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:15,197 INFO L273 TraceCheckUtils]: 29: Hoare triple {8194#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:15,197 INFO L273 TraceCheckUtils]: 30: Hoare triple {8195#(<= main_~i~1 8)} assume true; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:15,197 INFO L273 TraceCheckUtils]: 31: Hoare triple {8195#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:15,198 INFO L273 TraceCheckUtils]: 32: Hoare triple {8195#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:15,198 INFO L273 TraceCheckUtils]: 33: Hoare triple {8196#(<= main_~i~1 9)} assume true; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:15,199 INFO L273 TraceCheckUtils]: 34: Hoare triple {8196#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:15,200 INFO L273 TraceCheckUtils]: 35: Hoare triple {8196#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:15,200 INFO L273 TraceCheckUtils]: 36: Hoare triple {8197#(<= main_~i~1 10)} assume true; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:15,201 INFO L273 TraceCheckUtils]: 37: Hoare triple {8197#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:15,201 INFO L273 TraceCheckUtils]: 38: Hoare triple {8197#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:15,202 INFO L273 TraceCheckUtils]: 39: Hoare triple {8198#(<= main_~i~1 11)} assume true; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:15,203 INFO L273 TraceCheckUtils]: 40: Hoare triple {8198#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:15,203 INFO L273 TraceCheckUtils]: 41: Hoare triple {8198#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:15,204 INFO L273 TraceCheckUtils]: 42: Hoare triple {8199#(<= main_~i~1 12)} assume true; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:15,204 INFO L273 TraceCheckUtils]: 43: Hoare triple {8199#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:15,205 INFO L273 TraceCheckUtils]: 44: Hoare triple {8199#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:15,206 INFO L273 TraceCheckUtils]: 45: Hoare triple {8200#(<= main_~i~1 13)} assume true; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:15,206 INFO L273 TraceCheckUtils]: 46: Hoare triple {8200#(<= main_~i~1 13)} assume !(~i~1 < 10000); {8186#false} is VALID [2018-11-14 18:56:15,207 INFO L256 TraceCheckUtils]: 47: Hoare triple {8186#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {8185#true} is VALID [2018-11-14 18:56:15,207 INFO L273 TraceCheckUtils]: 48: Hoare triple {8185#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8185#true} is VALID [2018-11-14 18:56:15,207 INFO L273 TraceCheckUtils]: 49: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,207 INFO L273 TraceCheckUtils]: 50: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,207 INFO L273 TraceCheckUtils]: 51: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,208 INFO L273 TraceCheckUtils]: 52: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,208 INFO L273 TraceCheckUtils]: 53: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,208 INFO L273 TraceCheckUtils]: 54: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,208 INFO L273 TraceCheckUtils]: 55: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,208 INFO L273 TraceCheckUtils]: 56: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,209 INFO L273 TraceCheckUtils]: 57: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,209 INFO L273 TraceCheckUtils]: 58: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,209 INFO L273 TraceCheckUtils]: 59: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,209 INFO L273 TraceCheckUtils]: 60: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,209 INFO L273 TraceCheckUtils]: 61: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,209 INFO L273 TraceCheckUtils]: 62: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,210 INFO L273 TraceCheckUtils]: 63: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,210 INFO L273 TraceCheckUtils]: 64: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,210 INFO L273 TraceCheckUtils]: 65: Hoare triple {8185#true} assume !(~i~0 < 10000); {8185#true} is VALID [2018-11-14 18:56:15,210 INFO L273 TraceCheckUtils]: 66: Hoare triple {8185#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {8185#true} is VALID [2018-11-14 18:56:15,210 INFO L273 TraceCheckUtils]: 67: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,210 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {8185#true} {8186#false} #73#return; {8186#false} is VALID [2018-11-14 18:56:15,210 INFO L273 TraceCheckUtils]: 69: Hoare triple {8186#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {8186#false} is VALID [2018-11-14 18:56:15,210 INFO L256 TraceCheckUtils]: 70: Hoare triple {8186#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 71: Hoare triple {8185#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 72: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 73: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 74: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 75: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 76: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 77: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 78: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,211 INFO L273 TraceCheckUtils]: 79: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 80: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 81: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 82: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 83: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 84: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 85: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 86: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 87: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,212 INFO L273 TraceCheckUtils]: 88: Hoare triple {8185#true} assume !(~i~0 < 10000); {8185#true} is VALID [2018-11-14 18:56:15,213 INFO L273 TraceCheckUtils]: 89: Hoare triple {8185#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {8185#true} is VALID [2018-11-14 18:56:15,213 INFO L273 TraceCheckUtils]: 90: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,213 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8185#true} {8186#false} #75#return; {8186#false} is VALID [2018-11-14 18:56:15,213 INFO L273 TraceCheckUtils]: 92: Hoare triple {8186#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {8186#false} is VALID [2018-11-14 18:56:15,213 INFO L273 TraceCheckUtils]: 93: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,213 INFO L273 TraceCheckUtils]: 94: Hoare triple {8186#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:56:15,213 INFO L273 TraceCheckUtils]: 95: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:56:15,213 INFO L273 TraceCheckUtils]: 96: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 97: Hoare triple {8186#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 98: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 99: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 100: Hoare triple {8186#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 101: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 102: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 103: Hoare triple {8186#false} assume !(~i~2 < 9999); {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L273 TraceCheckUtils]: 104: Hoare triple {8186#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {8186#false} is VALID [2018-11-14 18:56:15,214 INFO L256 TraceCheckUtils]: 105: Hoare triple {8186#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 106: Hoare triple {8185#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 107: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 108: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 109: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 110: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 111: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 112: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 113: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,215 INFO L273 TraceCheckUtils]: 114: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 115: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 116: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 117: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 118: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 119: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 120: Hoare triple {8185#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 121: Hoare triple {8185#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 122: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,216 INFO L273 TraceCheckUtils]: 123: Hoare triple {8185#true} assume !(~i~0 < 10000); {8185#true} is VALID [2018-11-14 18:56:15,217 INFO L273 TraceCheckUtils]: 124: Hoare triple {8185#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {8185#true} is VALID [2018-11-14 18:56:15,217 INFO L273 TraceCheckUtils]: 125: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,217 INFO L268 TraceCheckUtils]: 126: Hoare quadruple {8185#true} {8186#false} #77#return; {8186#false} is VALID [2018-11-14 18:56:15,217 INFO L273 TraceCheckUtils]: 127: Hoare triple {8186#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {8186#false} is VALID [2018-11-14 18:56:15,217 INFO L273 TraceCheckUtils]: 128: Hoare triple {8186#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8186#false} is VALID [2018-11-14 18:56:15,217 INFO L273 TraceCheckUtils]: 129: Hoare triple {8186#false} assume !false; {8186#false} is VALID [2018-11-14 18:56:15,225 INFO L134 CoverageAnalysis]: Checked inductivity of 698 backedges. 0 proven. 260 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:56:15,225 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:15,225 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:15,235 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:15,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:15,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:15,325 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:15,573 INFO L256 TraceCheckUtils]: 0: Hoare triple {8185#true} call ULTIMATE.init(); {8185#true} is VALID [2018-11-14 18:56:15,574 INFO L273 TraceCheckUtils]: 1: Hoare triple {8185#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8185#true} is VALID [2018-11-14 18:56:15,574 INFO L273 TraceCheckUtils]: 2: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 18:56:15,574 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8185#true} {8185#true} #69#return; {8185#true} is VALID [2018-11-14 18:56:15,574 INFO L256 TraceCheckUtils]: 4: Hoare triple {8185#true} call #t~ret12 := main(); {8185#true} is VALID [2018-11-14 18:56:15,575 INFO L273 TraceCheckUtils]: 5: Hoare triple {8185#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8219#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:15,575 INFO L273 TraceCheckUtils]: 6: Hoare triple {8219#(<= main_~i~1 0)} assume true; {8219#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:15,576 INFO L273 TraceCheckUtils]: 7: Hoare triple {8219#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8219#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:15,576 INFO L273 TraceCheckUtils]: 8: Hoare triple {8219#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:15,576 INFO L273 TraceCheckUtils]: 9: Hoare triple {8188#(<= main_~i~1 1)} assume true; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:15,577 INFO L273 TraceCheckUtils]: 10: Hoare triple {8188#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:15,577 INFO L273 TraceCheckUtils]: 11: Hoare triple {8188#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:15,578 INFO L273 TraceCheckUtils]: 12: Hoare triple {8189#(<= main_~i~1 2)} assume true; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:15,578 INFO L273 TraceCheckUtils]: 13: Hoare triple {8189#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:15,579 INFO L273 TraceCheckUtils]: 14: Hoare triple {8189#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:15,580 INFO L273 TraceCheckUtils]: 15: Hoare triple {8190#(<= main_~i~1 3)} assume true; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:15,580 INFO L273 TraceCheckUtils]: 16: Hoare triple {8190#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:15,581 INFO L273 TraceCheckUtils]: 17: Hoare triple {8190#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:15,582 INFO L273 TraceCheckUtils]: 18: Hoare triple {8191#(<= main_~i~1 4)} assume true; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:15,582 INFO L273 TraceCheckUtils]: 19: Hoare triple {8191#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:15,583 INFO L273 TraceCheckUtils]: 20: Hoare triple {8191#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:15,583 INFO L273 TraceCheckUtils]: 21: Hoare triple {8192#(<= main_~i~1 5)} assume true; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:15,584 INFO L273 TraceCheckUtils]: 22: Hoare triple {8192#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:15,585 INFO L273 TraceCheckUtils]: 23: Hoare triple {8192#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:15,585 INFO L273 TraceCheckUtils]: 24: Hoare triple {8193#(<= main_~i~1 6)} assume true; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:15,586 INFO L273 TraceCheckUtils]: 25: Hoare triple {8193#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:15,586 INFO L273 TraceCheckUtils]: 26: Hoare triple {8193#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:15,587 INFO L273 TraceCheckUtils]: 27: Hoare triple {8194#(<= main_~i~1 7)} assume true; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:15,588 INFO L273 TraceCheckUtils]: 28: Hoare triple {8194#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:15,588 INFO L273 TraceCheckUtils]: 29: Hoare triple {8194#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:15,589 INFO L273 TraceCheckUtils]: 30: Hoare triple {8195#(<= main_~i~1 8)} assume true; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:15,589 INFO L273 TraceCheckUtils]: 31: Hoare triple {8195#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:15,590 INFO L273 TraceCheckUtils]: 32: Hoare triple {8195#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:15,591 INFO L273 TraceCheckUtils]: 33: Hoare triple {8196#(<= main_~i~1 9)} assume true; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:15,591 INFO L273 TraceCheckUtils]: 34: Hoare triple {8196#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:15,592 INFO L273 TraceCheckUtils]: 35: Hoare triple {8196#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:15,592 INFO L273 TraceCheckUtils]: 36: Hoare triple {8197#(<= main_~i~1 10)} assume true; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:15,593 INFO L273 TraceCheckUtils]: 37: Hoare triple {8197#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:15,594 INFO L273 TraceCheckUtils]: 38: Hoare triple {8197#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:15,594 INFO L273 TraceCheckUtils]: 39: Hoare triple {8198#(<= main_~i~1 11)} assume true; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:15,595 INFO L273 TraceCheckUtils]: 40: Hoare triple {8198#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:15,595 INFO L273 TraceCheckUtils]: 41: Hoare triple {8198#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:15,596 INFO L273 TraceCheckUtils]: 42: Hoare triple {8199#(<= main_~i~1 12)} assume true; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:15,597 INFO L273 TraceCheckUtils]: 43: Hoare triple {8199#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:15,597 INFO L273 TraceCheckUtils]: 44: Hoare triple {8199#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:15,598 INFO L273 TraceCheckUtils]: 45: Hoare triple {8200#(<= main_~i~1 13)} assume true; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:15,598 INFO L273 TraceCheckUtils]: 46: Hoare triple {8200#(<= main_~i~1 13)} assume !(~i~1 < 10000); {8186#false} is VALID [2018-11-14 18:56:15,599 INFO L256 TraceCheckUtils]: 47: Hoare triple {8186#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {8186#false} is VALID [2018-11-14 18:56:15,599 INFO L273 TraceCheckUtils]: 48: Hoare triple {8186#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8186#false} is VALID [2018-11-14 18:56:15,599 INFO L273 TraceCheckUtils]: 49: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,599 INFO L273 TraceCheckUtils]: 50: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,600 INFO L273 TraceCheckUtils]: 51: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,600 INFO L273 TraceCheckUtils]: 52: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,600 INFO L273 TraceCheckUtils]: 53: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,600 INFO L273 TraceCheckUtils]: 54: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,600 INFO L273 TraceCheckUtils]: 55: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,601 INFO L273 TraceCheckUtils]: 56: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,601 INFO L273 TraceCheckUtils]: 57: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,601 INFO L273 TraceCheckUtils]: 58: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,601 INFO L273 TraceCheckUtils]: 59: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,601 INFO L273 TraceCheckUtils]: 60: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,601 INFO L273 TraceCheckUtils]: 61: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,601 INFO L273 TraceCheckUtils]: 62: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L273 TraceCheckUtils]: 63: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L273 TraceCheckUtils]: 64: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L273 TraceCheckUtils]: 65: Hoare triple {8186#false} assume !(~i~0 < 10000); {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L273 TraceCheckUtils]: 66: Hoare triple {8186#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L273 TraceCheckUtils]: 67: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {8186#false} {8186#false} #73#return; {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L273 TraceCheckUtils]: 69: Hoare triple {8186#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {8186#false} is VALID [2018-11-14 18:56:15,602 INFO L256 TraceCheckUtils]: 70: Hoare triple {8186#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 71: Hoare triple {8186#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 72: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 73: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 74: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 75: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 76: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 77: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 78: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,603 INFO L273 TraceCheckUtils]: 79: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 80: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 81: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 82: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 83: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 84: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 85: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 86: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 87: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,604 INFO L273 TraceCheckUtils]: 88: Hoare triple {8186#false} assume !(~i~0 < 10000); {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 89: Hoare triple {8186#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 90: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8186#false} {8186#false} #75#return; {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 92: Hoare triple {8186#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 93: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 94: Hoare triple {8186#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 95: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 96: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,605 INFO L273 TraceCheckUtils]: 97: Hoare triple {8186#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L273 TraceCheckUtils]: 98: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L273 TraceCheckUtils]: 99: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L273 TraceCheckUtils]: 100: Hoare triple {8186#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L273 TraceCheckUtils]: 101: Hoare triple {8186#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L273 TraceCheckUtils]: 102: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L273 TraceCheckUtils]: 103: Hoare triple {8186#false} assume !(~i~2 < 9999); {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L273 TraceCheckUtils]: 104: Hoare triple {8186#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {8186#false} is VALID [2018-11-14 18:56:15,606 INFO L256 TraceCheckUtils]: 105: Hoare triple {8186#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 106: Hoare triple {8186#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 107: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 108: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 109: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 110: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 111: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 112: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 113: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,607 INFO L273 TraceCheckUtils]: 114: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 115: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 116: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 117: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 118: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 119: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 120: Hoare triple {8186#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 121: Hoare triple {8186#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 122: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,608 INFO L273 TraceCheckUtils]: 123: Hoare triple {8186#false} assume !(~i~0 < 10000); {8186#false} is VALID [2018-11-14 18:56:15,609 INFO L273 TraceCheckUtils]: 124: Hoare triple {8186#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {8186#false} is VALID [2018-11-14 18:56:15,609 INFO L273 TraceCheckUtils]: 125: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 18:56:15,609 INFO L268 TraceCheckUtils]: 126: Hoare quadruple {8186#false} {8186#false} #77#return; {8186#false} is VALID [2018-11-14 18:56:15,609 INFO L273 TraceCheckUtils]: 127: Hoare triple {8186#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {8186#false} is VALID [2018-11-14 18:56:15,609 INFO L273 TraceCheckUtils]: 128: Hoare triple {8186#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8186#false} is VALID [2018-11-14 18:56:15,609 INFO L273 TraceCheckUtils]: 129: Hoare triple {8186#false} assume !false; {8186#false} is VALID [2018-11-14 18:56:15,617 INFO L134 CoverageAnalysis]: Checked inductivity of 698 backedges. 0 proven. 260 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:56:15,638 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:15,638 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-14 18:56:15,639 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 130 [2018-11-14 18:56:15,639 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:15,639 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-14 18:56:15,724 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-14 18:56:15,724 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-14 18:56:15,724 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-14 18:56:15,725 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:56:15,725 INFO L87 Difference]: Start difference. First operand 89 states and 93 transitions. Second operand 17 states. [2018-11-14 18:56:16,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:16,171 INFO L93 Difference]: Finished difference Result 135 states and 143 transitions. [2018-11-14 18:56:16,171 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 18:56:16,172 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 130 [2018-11-14 18:56:16,172 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:16,172 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:56:16,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 99 transitions. [2018-11-14 18:56:16,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 18:56:16,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 99 transitions. [2018-11-14 18:56:16,175 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 99 transitions. [2018-11-14 18:56:16,274 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:16,277 INFO L225 Difference]: With dead ends: 135 [2018-11-14 18:56:16,277 INFO L226 Difference]: Without dead ends: 93 [2018-11-14 18:56:16,278 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 130 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-14 18:56:16,278 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2018-11-14 18:56:16,305 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 92. [2018-11-14 18:56:16,305 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:16,305 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand 92 states. [2018-11-14 18:56:16,305 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand 92 states. [2018-11-14 18:56:16,306 INFO L87 Difference]: Start difference. First operand 93 states. Second operand 92 states. [2018-11-14 18:56:16,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:16,308 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2018-11-14 18:56:16,308 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2018-11-14 18:56:16,309 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:16,309 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:16,309 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand 93 states. [2018-11-14 18:56:16,309 INFO L87 Difference]: Start difference. First operand 92 states. Second operand 93 states. [2018-11-14 18:56:16,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:16,311 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2018-11-14 18:56:16,312 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2018-11-14 18:56:16,312 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:16,312 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:16,312 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:16,312 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:16,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 92 states. [2018-11-14 18:56:16,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 96 transitions. [2018-11-14 18:56:16,315 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 96 transitions. Word has length 130 [2018-11-14 18:56:16,315 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:16,315 INFO L480 AbstractCegarLoop]: Abstraction has 92 states and 96 transitions. [2018-11-14 18:56:16,315 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-14 18:56:16,315 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2018-11-14 18:56:16,316 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 134 [2018-11-14 18:56:16,316 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:16,316 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 15, 14, 14, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:16,316 INFO L423 AbstractCegarLoop]: === Iteration 18 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:16,317 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:16,317 INFO L82 PathProgramCache]: Analyzing trace with hash 1780267687, now seen corresponding path program 14 times [2018-11-14 18:56:16,317 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:16,317 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:16,318 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:16,318 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:16,318 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:16,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:16,651 INFO L256 TraceCheckUtils]: 0: Hoare triple {9084#true} call ULTIMATE.init(); {9084#true} is VALID [2018-11-14 18:56:16,651 INFO L273 TraceCheckUtils]: 1: Hoare triple {9084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9084#true} is VALID [2018-11-14 18:56:16,651 INFO L273 TraceCheckUtils]: 2: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,651 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9084#true} {9084#true} #69#return; {9084#true} is VALID [2018-11-14 18:56:16,651 INFO L256 TraceCheckUtils]: 4: Hoare triple {9084#true} call #t~ret12 := main(); {9084#true} is VALID [2018-11-14 18:56:16,652 INFO L273 TraceCheckUtils]: 5: Hoare triple {9084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {9086#(= main_~i~1 0)} is VALID [2018-11-14 18:56:16,653 INFO L273 TraceCheckUtils]: 6: Hoare triple {9086#(= main_~i~1 0)} assume true; {9086#(= main_~i~1 0)} is VALID [2018-11-14 18:56:16,653 INFO L273 TraceCheckUtils]: 7: Hoare triple {9086#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9086#(= main_~i~1 0)} is VALID [2018-11-14 18:56:16,653 INFO L273 TraceCheckUtils]: 8: Hoare triple {9086#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:16,654 INFO L273 TraceCheckUtils]: 9: Hoare triple {9087#(<= main_~i~1 1)} assume true; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:16,654 INFO L273 TraceCheckUtils]: 10: Hoare triple {9087#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:16,655 INFO L273 TraceCheckUtils]: 11: Hoare triple {9087#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:16,655 INFO L273 TraceCheckUtils]: 12: Hoare triple {9088#(<= main_~i~1 2)} assume true; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:16,655 INFO L273 TraceCheckUtils]: 13: Hoare triple {9088#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:16,656 INFO L273 TraceCheckUtils]: 14: Hoare triple {9088#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:16,657 INFO L273 TraceCheckUtils]: 15: Hoare triple {9089#(<= main_~i~1 3)} assume true; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:16,657 INFO L273 TraceCheckUtils]: 16: Hoare triple {9089#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:16,658 INFO L273 TraceCheckUtils]: 17: Hoare triple {9089#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:16,658 INFO L273 TraceCheckUtils]: 18: Hoare triple {9090#(<= main_~i~1 4)} assume true; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:16,659 INFO L273 TraceCheckUtils]: 19: Hoare triple {9090#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:16,660 INFO L273 TraceCheckUtils]: 20: Hoare triple {9090#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:16,660 INFO L273 TraceCheckUtils]: 21: Hoare triple {9091#(<= main_~i~1 5)} assume true; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:16,661 INFO L273 TraceCheckUtils]: 22: Hoare triple {9091#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:16,661 INFO L273 TraceCheckUtils]: 23: Hoare triple {9091#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:16,662 INFO L273 TraceCheckUtils]: 24: Hoare triple {9092#(<= main_~i~1 6)} assume true; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:16,662 INFO L273 TraceCheckUtils]: 25: Hoare triple {9092#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:16,663 INFO L273 TraceCheckUtils]: 26: Hoare triple {9092#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:16,664 INFO L273 TraceCheckUtils]: 27: Hoare triple {9093#(<= main_~i~1 7)} assume true; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:16,664 INFO L273 TraceCheckUtils]: 28: Hoare triple {9093#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:16,665 INFO L273 TraceCheckUtils]: 29: Hoare triple {9093#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:16,665 INFO L273 TraceCheckUtils]: 30: Hoare triple {9094#(<= main_~i~1 8)} assume true; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:16,666 INFO L273 TraceCheckUtils]: 31: Hoare triple {9094#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:16,667 INFO L273 TraceCheckUtils]: 32: Hoare triple {9094#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:16,667 INFO L273 TraceCheckUtils]: 33: Hoare triple {9095#(<= main_~i~1 9)} assume true; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:16,668 INFO L273 TraceCheckUtils]: 34: Hoare triple {9095#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:16,668 INFO L273 TraceCheckUtils]: 35: Hoare triple {9095#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:16,669 INFO L273 TraceCheckUtils]: 36: Hoare triple {9096#(<= main_~i~1 10)} assume true; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:16,670 INFO L273 TraceCheckUtils]: 37: Hoare triple {9096#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:16,670 INFO L273 TraceCheckUtils]: 38: Hoare triple {9096#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:16,671 INFO L273 TraceCheckUtils]: 39: Hoare triple {9097#(<= main_~i~1 11)} assume true; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:16,671 INFO L273 TraceCheckUtils]: 40: Hoare triple {9097#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:16,672 INFO L273 TraceCheckUtils]: 41: Hoare triple {9097#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:16,673 INFO L273 TraceCheckUtils]: 42: Hoare triple {9098#(<= main_~i~1 12)} assume true; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:16,673 INFO L273 TraceCheckUtils]: 43: Hoare triple {9098#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:16,674 INFO L273 TraceCheckUtils]: 44: Hoare triple {9098#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:16,674 INFO L273 TraceCheckUtils]: 45: Hoare triple {9099#(<= main_~i~1 13)} assume true; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:16,675 INFO L273 TraceCheckUtils]: 46: Hoare triple {9099#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:16,676 INFO L273 TraceCheckUtils]: 47: Hoare triple {9099#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:16,676 INFO L273 TraceCheckUtils]: 48: Hoare triple {9100#(<= main_~i~1 14)} assume true; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:16,677 INFO L273 TraceCheckUtils]: 49: Hoare triple {9100#(<= main_~i~1 14)} assume !(~i~1 < 10000); {9085#false} is VALID [2018-11-14 18:56:16,677 INFO L256 TraceCheckUtils]: 50: Hoare triple {9085#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {9084#true} is VALID [2018-11-14 18:56:16,677 INFO L273 TraceCheckUtils]: 51: Hoare triple {9084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9084#true} is VALID [2018-11-14 18:56:16,678 INFO L273 TraceCheckUtils]: 52: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,678 INFO L273 TraceCheckUtils]: 53: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,678 INFO L273 TraceCheckUtils]: 54: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,678 INFO L273 TraceCheckUtils]: 55: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,678 INFO L273 TraceCheckUtils]: 56: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,679 INFO L273 TraceCheckUtils]: 57: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,679 INFO L273 TraceCheckUtils]: 58: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,679 INFO L273 TraceCheckUtils]: 59: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,679 INFO L273 TraceCheckUtils]: 60: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,679 INFO L273 TraceCheckUtils]: 61: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,679 INFO L273 TraceCheckUtils]: 62: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,680 INFO L273 TraceCheckUtils]: 63: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,680 INFO L273 TraceCheckUtils]: 64: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,680 INFO L273 TraceCheckUtils]: 65: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,680 INFO L273 TraceCheckUtils]: 66: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,680 INFO L273 TraceCheckUtils]: 67: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,681 INFO L273 TraceCheckUtils]: 68: Hoare triple {9084#true} assume !(~i~0 < 10000); {9084#true} is VALID [2018-11-14 18:56:16,681 INFO L273 TraceCheckUtils]: 69: Hoare triple {9084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {9084#true} is VALID [2018-11-14 18:56:16,681 INFO L273 TraceCheckUtils]: 70: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,681 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {9084#true} {9085#false} #73#return; {9085#false} is VALID [2018-11-14 18:56:16,681 INFO L273 TraceCheckUtils]: 72: Hoare triple {9085#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {9085#false} is VALID [2018-11-14 18:56:16,682 INFO L256 TraceCheckUtils]: 73: Hoare triple {9085#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {9084#true} is VALID [2018-11-14 18:56:16,682 INFO L273 TraceCheckUtils]: 74: Hoare triple {9084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9084#true} is VALID [2018-11-14 18:56:16,682 INFO L273 TraceCheckUtils]: 75: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,682 INFO L273 TraceCheckUtils]: 76: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,682 INFO L273 TraceCheckUtils]: 77: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,682 INFO L273 TraceCheckUtils]: 78: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 79: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 80: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 81: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 82: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 83: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 84: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 85: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 86: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,683 INFO L273 TraceCheckUtils]: 87: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 88: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 89: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 90: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 91: Hoare triple {9084#true} assume !(~i~0 < 10000); {9084#true} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 92: Hoare triple {9084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {9084#true} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 93: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,684 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {9084#true} {9085#false} #75#return; {9085#false} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 95: Hoare triple {9085#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {9085#false} is VALID [2018-11-14 18:56:16,684 INFO L273 TraceCheckUtils]: 96: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 97: Hoare triple {9085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 98: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 99: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 100: Hoare triple {9085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 101: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 102: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 103: Hoare triple {9085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:56:16,685 INFO L273 TraceCheckUtils]: 104: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 105: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 106: Hoare triple {9085#false} assume !(~i~2 < 9999); {9085#false} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 107: Hoare triple {9085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {9085#false} is VALID [2018-11-14 18:56:16,686 INFO L256 TraceCheckUtils]: 108: Hoare triple {9085#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {9084#true} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 109: Hoare triple {9084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9084#true} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 110: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 111: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 112: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,686 INFO L273 TraceCheckUtils]: 113: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 114: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 115: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 116: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 117: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 118: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 119: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 120: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 121: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,687 INFO L273 TraceCheckUtils]: 122: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,688 INFO L273 TraceCheckUtils]: 123: Hoare triple {9084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9084#true} is VALID [2018-11-14 18:56:16,688 INFO L273 TraceCheckUtils]: 124: Hoare triple {9084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9084#true} is VALID [2018-11-14 18:56:16,688 INFO L273 TraceCheckUtils]: 125: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,688 INFO L273 TraceCheckUtils]: 126: Hoare triple {9084#true} assume !(~i~0 < 10000); {9084#true} is VALID [2018-11-14 18:56:16,688 INFO L273 TraceCheckUtils]: 127: Hoare triple {9084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {9084#true} is VALID [2018-11-14 18:56:16,688 INFO L273 TraceCheckUtils]: 128: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:16,688 INFO L268 TraceCheckUtils]: 129: Hoare quadruple {9084#true} {9085#false} #77#return; {9085#false} is VALID [2018-11-14 18:56:16,689 INFO L273 TraceCheckUtils]: 130: Hoare triple {9085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {9085#false} is VALID [2018-11-14 18:56:16,689 INFO L273 TraceCheckUtils]: 131: Hoare triple {9085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9085#false} is VALID [2018-11-14 18:56:16,689 INFO L273 TraceCheckUtils]: 132: Hoare triple {9085#false} assume !false; {9085#false} is VALID [2018-11-14 18:56:16,699 INFO L134 CoverageAnalysis]: Checked inductivity of 739 backedges. 0 proven. 301 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:56:16,699 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:16,699 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:16,710 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:56:16,771 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:56:16,771 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:16,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:16,810 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:17,000 INFO L256 TraceCheckUtils]: 0: Hoare triple {9084#true} call ULTIMATE.init(); {9084#true} is VALID [2018-11-14 18:56:17,000 INFO L273 TraceCheckUtils]: 1: Hoare triple {9084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9084#true} is VALID [2018-11-14 18:56:17,000 INFO L273 TraceCheckUtils]: 2: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 18:56:17,001 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9084#true} {9084#true} #69#return; {9084#true} is VALID [2018-11-14 18:56:17,001 INFO L256 TraceCheckUtils]: 4: Hoare triple {9084#true} call #t~ret12 := main(); {9084#true} is VALID [2018-11-14 18:56:17,002 INFO L273 TraceCheckUtils]: 5: Hoare triple {9084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {9119#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:17,002 INFO L273 TraceCheckUtils]: 6: Hoare triple {9119#(<= main_~i~1 0)} assume true; {9119#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:17,002 INFO L273 TraceCheckUtils]: 7: Hoare triple {9119#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9119#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:17,003 INFO L273 TraceCheckUtils]: 8: Hoare triple {9119#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:17,003 INFO L273 TraceCheckUtils]: 9: Hoare triple {9087#(<= main_~i~1 1)} assume true; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:17,003 INFO L273 TraceCheckUtils]: 10: Hoare triple {9087#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:17,004 INFO L273 TraceCheckUtils]: 11: Hoare triple {9087#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:17,004 INFO L273 TraceCheckUtils]: 12: Hoare triple {9088#(<= main_~i~1 2)} assume true; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:17,005 INFO L273 TraceCheckUtils]: 13: Hoare triple {9088#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:17,006 INFO L273 TraceCheckUtils]: 14: Hoare triple {9088#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:17,014 INFO L273 TraceCheckUtils]: 15: Hoare triple {9089#(<= main_~i~1 3)} assume true; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:17,015 INFO L273 TraceCheckUtils]: 16: Hoare triple {9089#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:17,015 INFO L273 TraceCheckUtils]: 17: Hoare triple {9089#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:17,015 INFO L273 TraceCheckUtils]: 18: Hoare triple {9090#(<= main_~i~1 4)} assume true; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:17,016 INFO L273 TraceCheckUtils]: 19: Hoare triple {9090#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:17,016 INFO L273 TraceCheckUtils]: 20: Hoare triple {9090#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:17,017 INFO L273 TraceCheckUtils]: 21: Hoare triple {9091#(<= main_~i~1 5)} assume true; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:17,017 INFO L273 TraceCheckUtils]: 22: Hoare triple {9091#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:17,018 INFO L273 TraceCheckUtils]: 23: Hoare triple {9091#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:17,018 INFO L273 TraceCheckUtils]: 24: Hoare triple {9092#(<= main_~i~1 6)} assume true; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:17,019 INFO L273 TraceCheckUtils]: 25: Hoare triple {9092#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:17,019 INFO L273 TraceCheckUtils]: 26: Hoare triple {9092#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:17,020 INFO L273 TraceCheckUtils]: 27: Hoare triple {9093#(<= main_~i~1 7)} assume true; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:17,020 INFO L273 TraceCheckUtils]: 28: Hoare triple {9093#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:17,021 INFO L273 TraceCheckUtils]: 29: Hoare triple {9093#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:17,022 INFO L273 TraceCheckUtils]: 30: Hoare triple {9094#(<= main_~i~1 8)} assume true; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:17,022 INFO L273 TraceCheckUtils]: 31: Hoare triple {9094#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:17,023 INFO L273 TraceCheckUtils]: 32: Hoare triple {9094#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:17,024 INFO L273 TraceCheckUtils]: 33: Hoare triple {9095#(<= main_~i~1 9)} assume true; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:17,024 INFO L273 TraceCheckUtils]: 34: Hoare triple {9095#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:17,025 INFO L273 TraceCheckUtils]: 35: Hoare triple {9095#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:17,025 INFO L273 TraceCheckUtils]: 36: Hoare triple {9096#(<= main_~i~1 10)} assume true; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:17,026 INFO L273 TraceCheckUtils]: 37: Hoare triple {9096#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:17,027 INFO L273 TraceCheckUtils]: 38: Hoare triple {9096#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:17,027 INFO L273 TraceCheckUtils]: 39: Hoare triple {9097#(<= main_~i~1 11)} assume true; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:17,028 INFO L273 TraceCheckUtils]: 40: Hoare triple {9097#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:17,028 INFO L273 TraceCheckUtils]: 41: Hoare triple {9097#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:17,029 INFO L273 TraceCheckUtils]: 42: Hoare triple {9098#(<= main_~i~1 12)} assume true; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:17,029 INFO L273 TraceCheckUtils]: 43: Hoare triple {9098#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:17,030 INFO L273 TraceCheckUtils]: 44: Hoare triple {9098#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:17,031 INFO L273 TraceCheckUtils]: 45: Hoare triple {9099#(<= main_~i~1 13)} assume true; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:17,031 INFO L273 TraceCheckUtils]: 46: Hoare triple {9099#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:17,032 INFO L273 TraceCheckUtils]: 47: Hoare triple {9099#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:17,032 INFO L273 TraceCheckUtils]: 48: Hoare triple {9100#(<= main_~i~1 14)} assume true; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:17,033 INFO L273 TraceCheckUtils]: 49: Hoare triple {9100#(<= main_~i~1 14)} assume !(~i~1 < 10000); {9085#false} is VALID [2018-11-14 18:56:17,033 INFO L256 TraceCheckUtils]: 50: Hoare triple {9085#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {9085#false} is VALID [2018-11-14 18:56:17,034 INFO L273 TraceCheckUtils]: 51: Hoare triple {9085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9085#false} is VALID [2018-11-14 18:56:17,034 INFO L273 TraceCheckUtils]: 52: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,034 INFO L273 TraceCheckUtils]: 53: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,034 INFO L273 TraceCheckUtils]: 54: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,034 INFO L273 TraceCheckUtils]: 55: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,034 INFO L273 TraceCheckUtils]: 56: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,035 INFO L273 TraceCheckUtils]: 57: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,035 INFO L273 TraceCheckUtils]: 58: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,035 INFO L273 TraceCheckUtils]: 59: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,035 INFO L273 TraceCheckUtils]: 60: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,035 INFO L273 TraceCheckUtils]: 61: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,036 INFO L273 TraceCheckUtils]: 62: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,036 INFO L273 TraceCheckUtils]: 63: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,036 INFO L273 TraceCheckUtils]: 64: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,036 INFO L273 TraceCheckUtils]: 65: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,036 INFO L273 TraceCheckUtils]: 66: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,036 INFO L273 TraceCheckUtils]: 67: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,036 INFO L273 TraceCheckUtils]: 68: Hoare triple {9085#false} assume !(~i~0 < 10000); {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L273 TraceCheckUtils]: 69: Hoare triple {9085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L273 TraceCheckUtils]: 70: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {9085#false} {9085#false} #73#return; {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L273 TraceCheckUtils]: 72: Hoare triple {9085#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L256 TraceCheckUtils]: 73: Hoare triple {9085#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L273 TraceCheckUtils]: 74: Hoare triple {9085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L273 TraceCheckUtils]: 75: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L273 TraceCheckUtils]: 76: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,037 INFO L273 TraceCheckUtils]: 77: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 78: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 79: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 80: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 81: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 82: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 83: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 84: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 85: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,038 INFO L273 TraceCheckUtils]: 86: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 87: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 88: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 89: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 90: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 91: Hoare triple {9085#false} assume !(~i~0 < 10000); {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 92: Hoare triple {9085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 93: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {9085#false} {9085#false} #75#return; {9085#false} is VALID [2018-11-14 18:56:17,039 INFO L273 TraceCheckUtils]: 95: Hoare triple {9085#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 96: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 97: Hoare triple {9085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 98: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 99: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 100: Hoare triple {9085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 101: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 102: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 103: Hoare triple {9085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {9085#false} is VALID [2018-11-14 18:56:17,040 INFO L273 TraceCheckUtils]: 104: Hoare triple {9085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 105: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 106: Hoare triple {9085#false} assume !(~i~2 < 9999); {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 107: Hoare triple {9085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L256 TraceCheckUtils]: 108: Hoare triple {9085#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 109: Hoare triple {9085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 110: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 111: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 112: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,041 INFO L273 TraceCheckUtils]: 113: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 114: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 115: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 116: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 117: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 118: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 119: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 120: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,042 INFO L273 TraceCheckUtils]: 121: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,043 INFO L273 TraceCheckUtils]: 122: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,043 INFO L273 TraceCheckUtils]: 123: Hoare triple {9085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {9085#false} is VALID [2018-11-14 18:56:17,043 INFO L273 TraceCheckUtils]: 124: Hoare triple {9085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {9085#false} is VALID [2018-11-14 18:56:17,043 INFO L273 TraceCheckUtils]: 125: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,043 INFO L273 TraceCheckUtils]: 126: Hoare triple {9085#false} assume !(~i~0 < 10000); {9085#false} is VALID [2018-11-14 18:56:17,043 INFO L273 TraceCheckUtils]: 127: Hoare triple {9085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {9085#false} is VALID [2018-11-14 18:56:17,044 INFO L273 TraceCheckUtils]: 128: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 18:56:17,044 INFO L268 TraceCheckUtils]: 129: Hoare quadruple {9085#false} {9085#false} #77#return; {9085#false} is VALID [2018-11-14 18:56:17,044 INFO L273 TraceCheckUtils]: 130: Hoare triple {9085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {9085#false} is VALID [2018-11-14 18:56:17,044 INFO L273 TraceCheckUtils]: 131: Hoare triple {9085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9085#false} is VALID [2018-11-14 18:56:17,044 INFO L273 TraceCheckUtils]: 132: Hoare triple {9085#false} assume !false; {9085#false} is VALID [2018-11-14 18:56:17,053 INFO L134 CoverageAnalysis]: Checked inductivity of 739 backedges. 0 proven. 301 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:56:17,072 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:17,073 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-14 18:56:17,073 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 133 [2018-11-14 18:56:17,074 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:17,074 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-14 18:56:17,155 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:17,155 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-14 18:56:17,156 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-14 18:56:17,156 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:56:17,156 INFO L87 Difference]: Start difference. First operand 92 states and 96 transitions. Second operand 18 states. [2018-11-14 18:56:17,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:17,889 INFO L93 Difference]: Finished difference Result 138 states and 146 transitions. [2018-11-14 18:56:17,889 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-14 18:56:17,889 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 133 [2018-11-14 18:56:17,889 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:17,889 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:56:17,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 102 transitions. [2018-11-14 18:56:17,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 18:56:17,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 102 transitions. [2018-11-14 18:56:17,892 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 102 transitions. [2018-11-14 18:56:18,010 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:18,013 INFO L225 Difference]: With dead ends: 138 [2018-11-14 18:56:18,013 INFO L226 Difference]: Without dead ends: 96 [2018-11-14 18:56:18,014 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-14 18:56:18,014 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2018-11-14 18:56:18,036 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 95. [2018-11-14 18:56:18,036 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:18,036 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand 95 states. [2018-11-14 18:56:18,037 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand 95 states. [2018-11-14 18:56:18,037 INFO L87 Difference]: Start difference. First operand 96 states. Second operand 95 states. [2018-11-14 18:56:18,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:18,039 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2018-11-14 18:56:18,039 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2018-11-14 18:56:18,039 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:18,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:18,039 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 96 states. [2018-11-14 18:56:18,040 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 96 states. [2018-11-14 18:56:18,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:18,041 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2018-11-14 18:56:18,041 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2018-11-14 18:56:18,042 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:18,042 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:18,042 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:18,042 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:18,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 95 states. [2018-11-14 18:56:18,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 99 transitions. [2018-11-14 18:56:18,043 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 99 transitions. Word has length 133 [2018-11-14 18:56:18,043 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:18,044 INFO L480 AbstractCegarLoop]: Abstraction has 95 states and 99 transitions. [2018-11-14 18:56:18,044 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-14 18:56:18,044 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 99 transitions. [2018-11-14 18:56:18,045 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 137 [2018-11-14 18:56:18,045 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:18,045 INFO L375 BasicCegarLoop]: trace histogram [18, 16, 15, 15, 15, 15, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:18,045 INFO L423 AbstractCegarLoop]: === Iteration 19 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:18,045 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:18,046 INFO L82 PathProgramCache]: Analyzing trace with hash -1766389636, now seen corresponding path program 15 times [2018-11-14 18:56:18,046 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:18,046 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:18,046 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:18,047 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:18,047 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:18,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:18,566 INFO L256 TraceCheckUtils]: 0: Hoare triple {10007#true} call ULTIMATE.init(); {10007#true} is VALID [2018-11-14 18:56:18,566 INFO L273 TraceCheckUtils]: 1: Hoare triple {10007#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10007#true} is VALID [2018-11-14 18:56:18,566 INFO L273 TraceCheckUtils]: 2: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,567 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10007#true} {10007#true} #69#return; {10007#true} is VALID [2018-11-14 18:56:18,567 INFO L256 TraceCheckUtils]: 4: Hoare triple {10007#true} call #t~ret12 := main(); {10007#true} is VALID [2018-11-14 18:56:18,567 INFO L273 TraceCheckUtils]: 5: Hoare triple {10007#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10009#(= main_~i~1 0)} is VALID [2018-11-14 18:56:18,568 INFO L273 TraceCheckUtils]: 6: Hoare triple {10009#(= main_~i~1 0)} assume true; {10009#(= main_~i~1 0)} is VALID [2018-11-14 18:56:18,569 INFO L273 TraceCheckUtils]: 7: Hoare triple {10009#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10009#(= main_~i~1 0)} is VALID [2018-11-14 18:56:18,569 INFO L273 TraceCheckUtils]: 8: Hoare triple {10009#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10010#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:18,570 INFO L273 TraceCheckUtils]: 9: Hoare triple {10010#(<= main_~i~1 1)} assume true; {10010#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:18,570 INFO L273 TraceCheckUtils]: 10: Hoare triple {10010#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10010#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:18,571 INFO L273 TraceCheckUtils]: 11: Hoare triple {10010#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10011#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:18,572 INFO L273 TraceCheckUtils]: 12: Hoare triple {10011#(<= main_~i~1 2)} assume true; {10011#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:18,572 INFO L273 TraceCheckUtils]: 13: Hoare triple {10011#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10011#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:18,573 INFO L273 TraceCheckUtils]: 14: Hoare triple {10011#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10012#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:18,574 INFO L273 TraceCheckUtils]: 15: Hoare triple {10012#(<= main_~i~1 3)} assume true; {10012#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:18,574 INFO L273 TraceCheckUtils]: 16: Hoare triple {10012#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10012#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:18,575 INFO L273 TraceCheckUtils]: 17: Hoare triple {10012#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10013#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:18,575 INFO L273 TraceCheckUtils]: 18: Hoare triple {10013#(<= main_~i~1 4)} assume true; {10013#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:18,576 INFO L273 TraceCheckUtils]: 19: Hoare triple {10013#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10013#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:18,577 INFO L273 TraceCheckUtils]: 20: Hoare triple {10013#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10014#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:18,577 INFO L273 TraceCheckUtils]: 21: Hoare triple {10014#(<= main_~i~1 5)} assume true; {10014#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:18,578 INFO L273 TraceCheckUtils]: 22: Hoare triple {10014#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10014#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:18,579 INFO L273 TraceCheckUtils]: 23: Hoare triple {10014#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10015#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:18,579 INFO L273 TraceCheckUtils]: 24: Hoare triple {10015#(<= main_~i~1 6)} assume true; {10015#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:18,580 INFO L273 TraceCheckUtils]: 25: Hoare triple {10015#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10015#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:18,580 INFO L273 TraceCheckUtils]: 26: Hoare triple {10015#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10016#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:18,581 INFO L273 TraceCheckUtils]: 27: Hoare triple {10016#(<= main_~i~1 7)} assume true; {10016#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:18,581 INFO L273 TraceCheckUtils]: 28: Hoare triple {10016#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10016#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:18,582 INFO L273 TraceCheckUtils]: 29: Hoare triple {10016#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10017#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:18,583 INFO L273 TraceCheckUtils]: 30: Hoare triple {10017#(<= main_~i~1 8)} assume true; {10017#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:18,583 INFO L273 TraceCheckUtils]: 31: Hoare triple {10017#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10017#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:18,584 INFO L273 TraceCheckUtils]: 32: Hoare triple {10017#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10018#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:18,585 INFO L273 TraceCheckUtils]: 33: Hoare triple {10018#(<= main_~i~1 9)} assume true; {10018#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:18,585 INFO L273 TraceCheckUtils]: 34: Hoare triple {10018#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10018#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:18,586 INFO L273 TraceCheckUtils]: 35: Hoare triple {10018#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10019#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:18,587 INFO L273 TraceCheckUtils]: 36: Hoare triple {10019#(<= main_~i~1 10)} assume true; {10019#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:18,587 INFO L273 TraceCheckUtils]: 37: Hoare triple {10019#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10019#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:18,588 INFO L273 TraceCheckUtils]: 38: Hoare triple {10019#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10020#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:18,588 INFO L273 TraceCheckUtils]: 39: Hoare triple {10020#(<= main_~i~1 11)} assume true; {10020#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:18,589 INFO L273 TraceCheckUtils]: 40: Hoare triple {10020#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10020#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:18,590 INFO L273 TraceCheckUtils]: 41: Hoare triple {10020#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10021#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:18,590 INFO L273 TraceCheckUtils]: 42: Hoare triple {10021#(<= main_~i~1 12)} assume true; {10021#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:18,591 INFO L273 TraceCheckUtils]: 43: Hoare triple {10021#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10021#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:18,592 INFO L273 TraceCheckUtils]: 44: Hoare triple {10021#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10022#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:18,592 INFO L273 TraceCheckUtils]: 45: Hoare triple {10022#(<= main_~i~1 13)} assume true; {10022#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:18,593 INFO L273 TraceCheckUtils]: 46: Hoare triple {10022#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10022#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:18,593 INFO L273 TraceCheckUtils]: 47: Hoare triple {10022#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10023#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:18,594 INFO L273 TraceCheckUtils]: 48: Hoare triple {10023#(<= main_~i~1 14)} assume true; {10023#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:18,594 INFO L273 TraceCheckUtils]: 49: Hoare triple {10023#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10023#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:18,595 INFO L273 TraceCheckUtils]: 50: Hoare triple {10023#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10024#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:18,596 INFO L273 TraceCheckUtils]: 51: Hoare triple {10024#(<= main_~i~1 15)} assume true; {10024#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:18,597 INFO L273 TraceCheckUtils]: 52: Hoare triple {10024#(<= main_~i~1 15)} assume !(~i~1 < 10000); {10008#false} is VALID [2018-11-14 18:56:18,597 INFO L256 TraceCheckUtils]: 53: Hoare triple {10008#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:56:18,597 INFO L273 TraceCheckUtils]: 54: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:56:18,597 INFO L273 TraceCheckUtils]: 55: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,597 INFO L273 TraceCheckUtils]: 56: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,598 INFO L273 TraceCheckUtils]: 57: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,598 INFO L273 TraceCheckUtils]: 58: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,598 INFO L273 TraceCheckUtils]: 59: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,598 INFO L273 TraceCheckUtils]: 60: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,598 INFO L273 TraceCheckUtils]: 61: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 62: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 63: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 64: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 65: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 66: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 67: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 68: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,599 INFO L273 TraceCheckUtils]: 69: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,600 INFO L273 TraceCheckUtils]: 70: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,600 INFO L273 TraceCheckUtils]: 71: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 18:56:18,600 INFO L273 TraceCheckUtils]: 72: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:56:18,600 INFO L273 TraceCheckUtils]: 73: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,600 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10007#true} {10008#false} #73#return; {10008#false} is VALID [2018-11-14 18:56:18,600 INFO L273 TraceCheckUtils]: 75: Hoare triple {10008#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10008#false} is VALID [2018-11-14 18:56:18,600 INFO L256 TraceCheckUtils]: 76: Hoare triple {10008#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:56:18,600 INFO L273 TraceCheckUtils]: 77: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 78: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 79: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 80: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 81: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 82: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 83: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 84: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,601 INFO L273 TraceCheckUtils]: 85: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 86: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 87: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 88: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 89: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 90: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 91: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 92: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 93: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,602 INFO L273 TraceCheckUtils]: 94: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 95: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 96: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,603 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {10007#true} {10008#false} #75#return; {10008#false} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 98: Hoare triple {10008#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10008#false} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 99: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 100: Hoare triple {10008#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10008#false} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 101: Hoare triple {10008#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10008#false} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 102: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,603 INFO L273 TraceCheckUtils]: 103: Hoare triple {10008#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L273 TraceCheckUtils]: 104: Hoare triple {10008#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L273 TraceCheckUtils]: 105: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L273 TraceCheckUtils]: 106: Hoare triple {10008#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L273 TraceCheckUtils]: 107: Hoare triple {10008#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L273 TraceCheckUtils]: 108: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L273 TraceCheckUtils]: 109: Hoare triple {10008#false} assume !(~i~2 < 9999); {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L273 TraceCheckUtils]: 110: Hoare triple {10008#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {10008#false} is VALID [2018-11-14 18:56:18,604 INFO L256 TraceCheckUtils]: 111: Hoare triple {10008#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 112: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 113: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 114: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 115: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 116: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 117: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 118: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 119: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,605 INFO L273 TraceCheckUtils]: 120: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 121: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 122: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 123: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 124: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 125: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 126: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 127: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 128: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,606 INFO L273 TraceCheckUtils]: 129: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 18:56:18,607 INFO L273 TraceCheckUtils]: 130: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:56:18,607 INFO L273 TraceCheckUtils]: 131: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,607 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {10007#true} {10008#false} #77#return; {10008#false} is VALID [2018-11-14 18:56:18,607 INFO L273 TraceCheckUtils]: 133: Hoare triple {10008#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10008#false} is VALID [2018-11-14 18:56:18,607 INFO L273 TraceCheckUtils]: 134: Hoare triple {10008#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10008#false} is VALID [2018-11-14 18:56:18,607 INFO L273 TraceCheckUtils]: 135: Hoare triple {10008#false} assume !false; {10008#false} is VALID [2018-11-14 18:56:18,616 INFO L134 CoverageAnalysis]: Checked inductivity of 783 backedges. 0 proven. 345 refuted. 0 times theorem prover too weak. 438 trivial. 0 not checked. [2018-11-14 18:56:18,616 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:18,616 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:18,625 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:56:18,670 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-14 18:56:18,670 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:18,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:18,696 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:18,874 INFO L256 TraceCheckUtils]: 0: Hoare triple {10007#true} call ULTIMATE.init(); {10007#true} is VALID [2018-11-14 18:56:18,874 INFO L273 TraceCheckUtils]: 1: Hoare triple {10007#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10007#true} is VALID [2018-11-14 18:56:18,874 INFO L273 TraceCheckUtils]: 2: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,875 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10007#true} {10007#true} #69#return; {10007#true} is VALID [2018-11-14 18:56:18,875 INFO L256 TraceCheckUtils]: 4: Hoare triple {10007#true} call #t~ret12 := main(); {10007#true} is VALID [2018-11-14 18:56:18,875 INFO L273 TraceCheckUtils]: 5: Hoare triple {10007#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10007#true} is VALID [2018-11-14 18:56:18,875 INFO L273 TraceCheckUtils]: 6: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,875 INFO L273 TraceCheckUtils]: 7: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,876 INFO L273 TraceCheckUtils]: 8: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,876 INFO L273 TraceCheckUtils]: 9: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,876 INFO L273 TraceCheckUtils]: 10: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,876 INFO L273 TraceCheckUtils]: 11: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,876 INFO L273 TraceCheckUtils]: 12: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 13: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 14: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 15: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 16: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 17: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 18: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 19: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 20: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,877 INFO L273 TraceCheckUtils]: 21: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 22: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 23: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 24: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 25: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 26: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 27: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 28: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 29: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,878 INFO L273 TraceCheckUtils]: 30: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 31: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 32: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 33: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 34: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 35: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 36: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 37: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,879 INFO L273 TraceCheckUtils]: 38: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,880 INFO L273 TraceCheckUtils]: 39: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,880 INFO L273 TraceCheckUtils]: 40: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,880 INFO L273 TraceCheckUtils]: 41: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,880 INFO L273 TraceCheckUtils]: 42: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,880 INFO L273 TraceCheckUtils]: 43: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,880 INFO L273 TraceCheckUtils]: 44: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,880 INFO L273 TraceCheckUtils]: 45: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,881 INFO L273 TraceCheckUtils]: 46: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,881 INFO L273 TraceCheckUtils]: 47: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,881 INFO L273 TraceCheckUtils]: 48: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,881 INFO L273 TraceCheckUtils]: 49: Hoare triple {10007#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10007#true} is VALID [2018-11-14 18:56:18,881 INFO L273 TraceCheckUtils]: 50: Hoare triple {10007#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10007#true} is VALID [2018-11-14 18:56:18,881 INFO L273 TraceCheckUtils]: 51: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,881 INFO L273 TraceCheckUtils]: 52: Hoare triple {10007#true} assume !(~i~1 < 10000); {10007#true} is VALID [2018-11-14 18:56:18,882 INFO L256 TraceCheckUtils]: 53: Hoare triple {10007#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:56:18,882 INFO L273 TraceCheckUtils]: 54: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:56:18,882 INFO L273 TraceCheckUtils]: 55: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,882 INFO L273 TraceCheckUtils]: 56: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,882 INFO L273 TraceCheckUtils]: 57: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,882 INFO L273 TraceCheckUtils]: 58: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,883 INFO L273 TraceCheckUtils]: 59: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,883 INFO L273 TraceCheckUtils]: 60: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,883 INFO L273 TraceCheckUtils]: 61: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,883 INFO L273 TraceCheckUtils]: 62: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,883 INFO L273 TraceCheckUtils]: 63: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,883 INFO L273 TraceCheckUtils]: 64: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,883 INFO L273 TraceCheckUtils]: 65: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,884 INFO L273 TraceCheckUtils]: 66: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,884 INFO L273 TraceCheckUtils]: 67: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,884 INFO L273 TraceCheckUtils]: 68: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,884 INFO L273 TraceCheckUtils]: 69: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,884 INFO L273 TraceCheckUtils]: 70: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,884 INFO L273 TraceCheckUtils]: 71: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 18:56:18,884 INFO L273 TraceCheckUtils]: 72: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:56:18,885 INFO L273 TraceCheckUtils]: 73: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,885 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10007#true} {10007#true} #73#return; {10007#true} is VALID [2018-11-14 18:56:18,885 INFO L273 TraceCheckUtils]: 75: Hoare triple {10007#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10007#true} is VALID [2018-11-14 18:56:18,885 INFO L256 TraceCheckUtils]: 76: Hoare triple {10007#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {10007#true} is VALID [2018-11-14 18:56:18,885 INFO L273 TraceCheckUtils]: 77: Hoare triple {10007#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10007#true} is VALID [2018-11-14 18:56:18,885 INFO L273 TraceCheckUtils]: 78: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,886 INFO L273 TraceCheckUtils]: 79: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,886 INFO L273 TraceCheckUtils]: 80: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,886 INFO L273 TraceCheckUtils]: 81: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,886 INFO L273 TraceCheckUtils]: 82: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,886 INFO L273 TraceCheckUtils]: 83: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,886 INFO L273 TraceCheckUtils]: 84: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,886 INFO L273 TraceCheckUtils]: 85: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,887 INFO L273 TraceCheckUtils]: 86: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,887 INFO L273 TraceCheckUtils]: 87: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,887 INFO L273 TraceCheckUtils]: 88: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,887 INFO L273 TraceCheckUtils]: 89: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,887 INFO L273 TraceCheckUtils]: 90: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,887 INFO L273 TraceCheckUtils]: 91: Hoare triple {10007#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10007#true} is VALID [2018-11-14 18:56:18,887 INFO L273 TraceCheckUtils]: 92: Hoare triple {10007#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10007#true} is VALID [2018-11-14 18:56:18,888 INFO L273 TraceCheckUtils]: 93: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,888 INFO L273 TraceCheckUtils]: 94: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 18:56:18,888 INFO L273 TraceCheckUtils]: 95: Hoare triple {10007#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10007#true} is VALID [2018-11-14 18:56:18,888 INFO L273 TraceCheckUtils]: 96: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 18:56:18,888 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {10007#true} {10007#true} #75#return; {10007#true} is VALID [2018-11-14 18:56:18,891 INFO L273 TraceCheckUtils]: 98: Hoare triple {10007#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10322#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:18,891 INFO L273 TraceCheckUtils]: 99: Hoare triple {10322#(<= main_~i~2 0)} assume true; {10322#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:18,892 INFO L273 TraceCheckUtils]: 100: Hoare triple {10322#(<= main_~i~2 0)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10322#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:18,892 INFO L273 TraceCheckUtils]: 101: Hoare triple {10322#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10332#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:18,893 INFO L273 TraceCheckUtils]: 102: Hoare triple {10332#(<= main_~i~2 1)} assume true; {10332#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:18,894 INFO L273 TraceCheckUtils]: 103: Hoare triple {10332#(<= main_~i~2 1)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10332#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:18,894 INFO L273 TraceCheckUtils]: 104: Hoare triple {10332#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10342#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:18,895 INFO L273 TraceCheckUtils]: 105: Hoare triple {10342#(<= main_~i~2 2)} assume true; {10342#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:18,896 INFO L273 TraceCheckUtils]: 106: Hoare triple {10342#(<= main_~i~2 2)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10342#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:18,897 INFO L273 TraceCheckUtils]: 107: Hoare triple {10342#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10352#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:18,897 INFO L273 TraceCheckUtils]: 108: Hoare triple {10352#(<= main_~i~2 3)} assume true; {10352#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:18,898 INFO L273 TraceCheckUtils]: 109: Hoare triple {10352#(<= main_~i~2 3)} assume !(~i~2 < 9999); {10008#false} is VALID [2018-11-14 18:56:18,898 INFO L273 TraceCheckUtils]: 110: Hoare triple {10008#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {10008#false} is VALID [2018-11-14 18:56:18,899 INFO L256 TraceCheckUtils]: 111: Hoare triple {10008#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {10008#false} is VALID [2018-11-14 18:56:18,899 INFO L273 TraceCheckUtils]: 112: Hoare triple {10008#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10008#false} is VALID [2018-11-14 18:56:18,899 INFO L273 TraceCheckUtils]: 113: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,900 INFO L273 TraceCheckUtils]: 114: Hoare triple {10008#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:56:18,900 INFO L273 TraceCheckUtils]: 115: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:56:18,900 INFO L273 TraceCheckUtils]: 116: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,900 INFO L273 TraceCheckUtils]: 117: Hoare triple {10008#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:56:18,901 INFO L273 TraceCheckUtils]: 118: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:56:18,901 INFO L273 TraceCheckUtils]: 119: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,901 INFO L273 TraceCheckUtils]: 120: Hoare triple {10008#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:56:18,901 INFO L273 TraceCheckUtils]: 121: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:56:18,902 INFO L273 TraceCheckUtils]: 122: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,902 INFO L273 TraceCheckUtils]: 123: Hoare triple {10008#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:56:18,902 INFO L273 TraceCheckUtils]: 124: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:56:18,902 INFO L273 TraceCheckUtils]: 125: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,902 INFO L273 TraceCheckUtils]: 126: Hoare triple {10008#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10008#false} is VALID [2018-11-14 18:56:18,903 INFO L273 TraceCheckUtils]: 127: Hoare triple {10008#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10008#false} is VALID [2018-11-14 18:56:18,903 INFO L273 TraceCheckUtils]: 128: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,903 INFO L273 TraceCheckUtils]: 129: Hoare triple {10008#false} assume !(~i~0 < 10000); {10008#false} is VALID [2018-11-14 18:56:18,903 INFO L273 TraceCheckUtils]: 130: Hoare triple {10008#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10008#false} is VALID [2018-11-14 18:56:18,903 INFO L273 TraceCheckUtils]: 131: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 18:56:18,903 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {10008#false} {10008#false} #77#return; {10008#false} is VALID [2018-11-14 18:56:18,904 INFO L273 TraceCheckUtils]: 133: Hoare triple {10008#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10008#false} is VALID [2018-11-14 18:56:18,904 INFO L273 TraceCheckUtils]: 134: Hoare triple {10008#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10008#false} is VALID [2018-11-14 18:56:18,904 INFO L273 TraceCheckUtils]: 135: Hoare triple {10008#false} assume !false; {10008#false} is VALID [2018-11-14 18:56:18,912 INFO L134 CoverageAnalysis]: Checked inductivity of 783 backedges. 202 proven. 15 refuted. 0 times theorem prover too weak. 566 trivial. 0 not checked. [2018-11-14 18:56:18,932 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:18,933 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 6] total 22 [2018-11-14 18:56:18,933 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2018-11-14 18:56:18,934 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:18,934 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-14 18:56:19,042 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:19,043 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-14 18:56:19,043 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-14 18:56:19,043 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=295, Unknown=0, NotChecked=0, Total=462 [2018-11-14 18:56:19,044 INFO L87 Difference]: Start difference. First operand 95 states and 99 transitions. Second operand 22 states. [2018-11-14 18:56:19,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:19,526 INFO L93 Difference]: Finished difference Result 145 states and 154 transitions. [2018-11-14 18:56:19,526 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-14 18:56:19,526 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2018-11-14 18:56:19,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:19,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-14 18:56:19,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 118 transitions. [2018-11-14 18:56:19,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-14 18:56:19,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 118 transitions. [2018-11-14 18:56:19,530 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 118 transitions. [2018-11-14 18:56:19,660 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:19,662 INFO L225 Difference]: With dead ends: 145 [2018-11-14 18:56:19,662 INFO L226 Difference]: Without dead ends: 103 [2018-11-14 18:56:19,663 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=167, Invalid=295, Unknown=0, NotChecked=0, Total=462 [2018-11-14 18:56:19,663 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2018-11-14 18:56:19,699 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 101. [2018-11-14 18:56:19,699 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:19,700 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand 101 states. [2018-11-14 18:56:19,700 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand 101 states. [2018-11-14 18:56:19,700 INFO L87 Difference]: Start difference. First operand 103 states. Second operand 101 states. [2018-11-14 18:56:19,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:19,703 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2018-11-14 18:56:19,703 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2018-11-14 18:56:19,704 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:19,704 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:19,704 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 103 states. [2018-11-14 18:56:19,704 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 103 states. [2018-11-14 18:56:19,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:19,706 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2018-11-14 18:56:19,706 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2018-11-14 18:56:19,707 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:19,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:19,707 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:19,707 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:19,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-14 18:56:19,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 105 transitions. [2018-11-14 18:56:19,709 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 105 transitions. Word has length 136 [2018-11-14 18:56:19,710 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:19,710 INFO L480 AbstractCegarLoop]: Abstraction has 101 states and 105 transitions. [2018-11-14 18:56:19,710 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-14 18:56:19,710 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 105 transitions. [2018-11-14 18:56:19,711 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 143 [2018-11-14 18:56:19,711 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:19,711 INFO L375 BasicCegarLoop]: trace histogram [18, 17, 16, 16, 15, 15, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:19,712 INFO L423 AbstractCegarLoop]: === Iteration 20 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:19,712 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:19,712 INFO L82 PathProgramCache]: Analyzing trace with hash -875378252, now seen corresponding path program 16 times [2018-11-14 18:56:19,712 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:19,712 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:19,713 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:19,713 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:19,713 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:19,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:20,351 INFO L256 TraceCheckUtils]: 0: Hoare triple {10974#true} call ULTIMATE.init(); {10974#true} is VALID [2018-11-14 18:56:20,351 INFO L273 TraceCheckUtils]: 1: Hoare triple {10974#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10974#true} is VALID [2018-11-14 18:56:20,351 INFO L273 TraceCheckUtils]: 2: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,352 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10974#true} {10974#true} #69#return; {10974#true} is VALID [2018-11-14 18:56:20,352 INFO L256 TraceCheckUtils]: 4: Hoare triple {10974#true} call #t~ret12 := main(); {10974#true} is VALID [2018-11-14 18:56:20,352 INFO L273 TraceCheckUtils]: 5: Hoare triple {10974#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10976#(= main_~i~1 0)} is VALID [2018-11-14 18:56:20,352 INFO L273 TraceCheckUtils]: 6: Hoare triple {10976#(= main_~i~1 0)} assume true; {10976#(= main_~i~1 0)} is VALID [2018-11-14 18:56:20,353 INFO L273 TraceCheckUtils]: 7: Hoare triple {10976#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10976#(= main_~i~1 0)} is VALID [2018-11-14 18:56:20,353 INFO L273 TraceCheckUtils]: 8: Hoare triple {10976#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10977#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:20,354 INFO L273 TraceCheckUtils]: 9: Hoare triple {10977#(<= main_~i~1 1)} assume true; {10977#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:20,354 INFO L273 TraceCheckUtils]: 10: Hoare triple {10977#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10977#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:20,354 INFO L273 TraceCheckUtils]: 11: Hoare triple {10977#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10978#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:20,355 INFO L273 TraceCheckUtils]: 12: Hoare triple {10978#(<= main_~i~1 2)} assume true; {10978#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:20,355 INFO L273 TraceCheckUtils]: 13: Hoare triple {10978#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10978#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:20,356 INFO L273 TraceCheckUtils]: 14: Hoare triple {10978#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10979#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:20,356 INFO L273 TraceCheckUtils]: 15: Hoare triple {10979#(<= main_~i~1 3)} assume true; {10979#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:20,357 INFO L273 TraceCheckUtils]: 16: Hoare triple {10979#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10979#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:20,357 INFO L273 TraceCheckUtils]: 17: Hoare triple {10979#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10980#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:20,358 INFO L273 TraceCheckUtils]: 18: Hoare triple {10980#(<= main_~i~1 4)} assume true; {10980#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:20,358 INFO L273 TraceCheckUtils]: 19: Hoare triple {10980#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10980#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:20,359 INFO L273 TraceCheckUtils]: 20: Hoare triple {10980#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10981#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:20,360 INFO L273 TraceCheckUtils]: 21: Hoare triple {10981#(<= main_~i~1 5)} assume true; {10981#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:20,360 INFO L273 TraceCheckUtils]: 22: Hoare triple {10981#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10981#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:20,361 INFO L273 TraceCheckUtils]: 23: Hoare triple {10981#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10982#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:20,362 INFO L273 TraceCheckUtils]: 24: Hoare triple {10982#(<= main_~i~1 6)} assume true; {10982#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:20,362 INFO L273 TraceCheckUtils]: 25: Hoare triple {10982#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10982#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:20,363 INFO L273 TraceCheckUtils]: 26: Hoare triple {10982#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10983#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:20,363 INFO L273 TraceCheckUtils]: 27: Hoare triple {10983#(<= main_~i~1 7)} assume true; {10983#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:20,364 INFO L273 TraceCheckUtils]: 28: Hoare triple {10983#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10983#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:20,365 INFO L273 TraceCheckUtils]: 29: Hoare triple {10983#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10984#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:20,365 INFO L273 TraceCheckUtils]: 30: Hoare triple {10984#(<= main_~i~1 8)} assume true; {10984#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:20,366 INFO L273 TraceCheckUtils]: 31: Hoare triple {10984#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10984#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:20,367 INFO L273 TraceCheckUtils]: 32: Hoare triple {10984#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10985#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:20,367 INFO L273 TraceCheckUtils]: 33: Hoare triple {10985#(<= main_~i~1 9)} assume true; {10985#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:20,368 INFO L273 TraceCheckUtils]: 34: Hoare triple {10985#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10985#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:20,368 INFO L273 TraceCheckUtils]: 35: Hoare triple {10985#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10986#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:20,369 INFO L273 TraceCheckUtils]: 36: Hoare triple {10986#(<= main_~i~1 10)} assume true; {10986#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:20,370 INFO L273 TraceCheckUtils]: 37: Hoare triple {10986#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10986#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:20,370 INFO L273 TraceCheckUtils]: 38: Hoare triple {10986#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10987#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:20,371 INFO L273 TraceCheckUtils]: 39: Hoare triple {10987#(<= main_~i~1 11)} assume true; {10987#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:20,372 INFO L273 TraceCheckUtils]: 40: Hoare triple {10987#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10987#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:20,372 INFO L273 TraceCheckUtils]: 41: Hoare triple {10987#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10988#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:20,373 INFO L273 TraceCheckUtils]: 42: Hoare triple {10988#(<= main_~i~1 12)} assume true; {10988#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:20,373 INFO L273 TraceCheckUtils]: 43: Hoare triple {10988#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10988#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:20,374 INFO L273 TraceCheckUtils]: 44: Hoare triple {10988#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10989#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:20,375 INFO L273 TraceCheckUtils]: 45: Hoare triple {10989#(<= main_~i~1 13)} assume true; {10989#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:20,375 INFO L273 TraceCheckUtils]: 46: Hoare triple {10989#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10989#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:20,376 INFO L273 TraceCheckUtils]: 47: Hoare triple {10989#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10990#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:20,376 INFO L273 TraceCheckUtils]: 48: Hoare triple {10990#(<= main_~i~1 14)} assume true; {10990#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:20,377 INFO L273 TraceCheckUtils]: 49: Hoare triple {10990#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10990#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:20,378 INFO L273 TraceCheckUtils]: 50: Hoare triple {10990#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10991#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:20,378 INFO L273 TraceCheckUtils]: 51: Hoare triple {10991#(<= main_~i~1 15)} assume true; {10991#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:20,379 INFO L273 TraceCheckUtils]: 52: Hoare triple {10991#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10991#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:20,380 INFO L273 TraceCheckUtils]: 53: Hoare triple {10991#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10992#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:20,380 INFO L273 TraceCheckUtils]: 54: Hoare triple {10992#(<= main_~i~1 16)} assume true; {10992#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:20,381 INFO L273 TraceCheckUtils]: 55: Hoare triple {10992#(<= main_~i~1 16)} assume !(~i~1 < 10000); {10975#false} is VALID [2018-11-14 18:56:20,381 INFO L256 TraceCheckUtils]: 56: Hoare triple {10975#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:56:20,381 INFO L273 TraceCheckUtils]: 57: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:56:20,381 INFO L273 TraceCheckUtils]: 58: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,382 INFO L273 TraceCheckUtils]: 59: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,382 INFO L273 TraceCheckUtils]: 60: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,382 INFO L273 TraceCheckUtils]: 61: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,382 INFO L273 TraceCheckUtils]: 62: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,382 INFO L273 TraceCheckUtils]: 63: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,383 INFO L273 TraceCheckUtils]: 64: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,383 INFO L273 TraceCheckUtils]: 65: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,383 INFO L273 TraceCheckUtils]: 66: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,383 INFO L273 TraceCheckUtils]: 67: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,383 INFO L273 TraceCheckUtils]: 68: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,384 INFO L273 TraceCheckUtils]: 69: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,384 INFO L273 TraceCheckUtils]: 70: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,384 INFO L273 TraceCheckUtils]: 71: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,384 INFO L273 TraceCheckUtils]: 72: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,384 INFO L273 TraceCheckUtils]: 73: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,384 INFO L273 TraceCheckUtils]: 74: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 18:56:20,385 INFO L273 TraceCheckUtils]: 75: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:56:20,385 INFO L273 TraceCheckUtils]: 76: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,385 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {10974#true} {10975#false} #73#return; {10975#false} is VALID [2018-11-14 18:56:20,385 INFO L273 TraceCheckUtils]: 78: Hoare triple {10975#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10975#false} is VALID [2018-11-14 18:56:20,385 INFO L256 TraceCheckUtils]: 79: Hoare triple {10975#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:56:20,385 INFO L273 TraceCheckUtils]: 80: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:56:20,385 INFO L273 TraceCheckUtils]: 81: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,385 INFO L273 TraceCheckUtils]: 82: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 83: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 84: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 85: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 86: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 87: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 88: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 89: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 90: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,386 INFO L273 TraceCheckUtils]: 91: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 92: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 93: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 94: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 95: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 96: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 97: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 98: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:56:20,387 INFO L273 TraceCheckUtils]: 99: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,388 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {10974#true} {10975#false} #75#return; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 101: Hoare triple {10975#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 102: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 103: Hoare triple {10975#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 104: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 105: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 106: Hoare triple {10975#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 107: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:56:20,388 INFO L273 TraceCheckUtils]: 108: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 109: Hoare triple {10975#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 110: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 111: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 112: Hoare triple {10975#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 113: Hoare triple {10975#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 114: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 115: Hoare triple {10975#false} assume !(~i~2 < 9999); {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L273 TraceCheckUtils]: 116: Hoare triple {10975#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {10975#false} is VALID [2018-11-14 18:56:20,389 INFO L256 TraceCheckUtils]: 117: Hoare triple {10975#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 118: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 119: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 120: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 121: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 122: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 123: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 124: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 125: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,390 INFO L273 TraceCheckUtils]: 126: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 127: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 128: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 129: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 130: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 131: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 132: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 133: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 134: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,391 INFO L273 TraceCheckUtils]: 135: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 18:56:20,392 INFO L273 TraceCheckUtils]: 136: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:56:20,392 INFO L273 TraceCheckUtils]: 137: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,392 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {10974#true} {10975#false} #77#return; {10975#false} is VALID [2018-11-14 18:56:20,392 INFO L273 TraceCheckUtils]: 139: Hoare triple {10975#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10975#false} is VALID [2018-11-14 18:56:20,392 INFO L273 TraceCheckUtils]: 140: Hoare triple {10975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10975#false} is VALID [2018-11-14 18:56:20,392 INFO L273 TraceCheckUtils]: 141: Hoare triple {10975#false} assume !false; {10975#false} is VALID [2018-11-14 18:56:20,401 INFO L134 CoverageAnalysis]: Checked inductivity of 841 backedges. 0 proven. 392 refuted. 0 times theorem prover too weak. 449 trivial. 0 not checked. [2018-11-14 18:56:20,402 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:20,402 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:20,412 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:56:20,484 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:56:20,484 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:20,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:20,512 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:20,740 INFO L256 TraceCheckUtils]: 0: Hoare triple {10974#true} call ULTIMATE.init(); {10974#true} is VALID [2018-11-14 18:56:20,740 INFO L273 TraceCheckUtils]: 1: Hoare triple {10974#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10974#true} is VALID [2018-11-14 18:56:20,741 INFO L273 TraceCheckUtils]: 2: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,741 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10974#true} {10974#true} #69#return; {10974#true} is VALID [2018-11-14 18:56:20,741 INFO L256 TraceCheckUtils]: 4: Hoare triple {10974#true} call #t~ret12 := main(); {10974#true} is VALID [2018-11-14 18:56:20,741 INFO L273 TraceCheckUtils]: 5: Hoare triple {10974#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10974#true} is VALID [2018-11-14 18:56:20,741 INFO L273 TraceCheckUtils]: 6: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 7: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 8: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 9: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 10: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 11: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 12: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 13: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,742 INFO L273 TraceCheckUtils]: 14: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 15: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 16: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 17: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 18: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 19: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 20: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 21: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,743 INFO L273 TraceCheckUtils]: 22: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 23: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 24: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 25: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 26: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 27: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 28: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 29: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 30: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,744 INFO L273 TraceCheckUtils]: 31: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 32: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 33: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 34: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 35: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 36: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 37: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 38: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 39: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,745 INFO L273 TraceCheckUtils]: 40: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 41: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 42: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 43: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 44: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 45: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 46: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 47: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 48: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,746 INFO L273 TraceCheckUtils]: 49: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L273 TraceCheckUtils]: 50: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L273 TraceCheckUtils]: 51: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L273 TraceCheckUtils]: 52: Hoare triple {10974#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L273 TraceCheckUtils]: 53: Hoare triple {10974#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L273 TraceCheckUtils]: 54: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L273 TraceCheckUtils]: 55: Hoare triple {10974#true} assume !(~i~1 < 10000); {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L256 TraceCheckUtils]: 56: Hoare triple {10974#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:56:20,747 INFO L273 TraceCheckUtils]: 57: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 58: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 59: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 60: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 61: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 62: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 63: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 64: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 65: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,748 INFO L273 TraceCheckUtils]: 66: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 67: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 68: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 69: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 70: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 71: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 72: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 73: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 74: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 18:56:20,749 INFO L273 TraceCheckUtils]: 75: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L273 TraceCheckUtils]: 76: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {10974#true} {10974#true} #73#return; {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L273 TraceCheckUtils]: 78: Hoare triple {10974#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L256 TraceCheckUtils]: 79: Hoare triple {10974#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L273 TraceCheckUtils]: 80: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L273 TraceCheckUtils]: 81: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L273 TraceCheckUtils]: 82: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L273 TraceCheckUtils]: 83: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,750 INFO L273 TraceCheckUtils]: 84: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 85: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 86: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 87: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 88: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 89: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 90: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 91: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,751 INFO L273 TraceCheckUtils]: 92: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,752 INFO L273 TraceCheckUtils]: 93: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,752 INFO L273 TraceCheckUtils]: 94: Hoare triple {10974#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {10974#true} is VALID [2018-11-14 18:56:20,752 INFO L273 TraceCheckUtils]: 95: Hoare triple {10974#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {10974#true} is VALID [2018-11-14 18:56:20,752 INFO L273 TraceCheckUtils]: 96: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,752 INFO L273 TraceCheckUtils]: 97: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 18:56:20,752 INFO L273 TraceCheckUtils]: 98: Hoare triple {10974#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10974#true} is VALID [2018-11-14 18:56:20,753 INFO L273 TraceCheckUtils]: 99: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,753 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {10974#true} {10974#true} #75#return; {10974#true} is VALID [2018-11-14 18:56:20,753 INFO L273 TraceCheckUtils]: 101: Hoare triple {10974#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {10974#true} is VALID [2018-11-14 18:56:20,753 INFO L273 TraceCheckUtils]: 102: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,753 INFO L273 TraceCheckUtils]: 103: Hoare triple {10974#true} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:56:20,753 INFO L273 TraceCheckUtils]: 104: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:56:20,754 INFO L273 TraceCheckUtils]: 105: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,754 INFO L273 TraceCheckUtils]: 106: Hoare triple {10974#true} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:56:20,754 INFO L273 TraceCheckUtils]: 107: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:56:20,754 INFO L273 TraceCheckUtils]: 108: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,754 INFO L273 TraceCheckUtils]: 109: Hoare triple {10974#true} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:56:20,755 INFO L273 TraceCheckUtils]: 110: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:56:20,755 INFO L273 TraceCheckUtils]: 111: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,755 INFO L273 TraceCheckUtils]: 112: Hoare triple {10974#true} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {10974#true} is VALID [2018-11-14 18:56:20,755 INFO L273 TraceCheckUtils]: 113: Hoare triple {10974#true} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {10974#true} is VALID [2018-11-14 18:56:20,755 INFO L273 TraceCheckUtils]: 114: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 18:56:20,755 INFO L273 TraceCheckUtils]: 115: Hoare triple {10974#true} assume !(~i~2 < 9999); {10974#true} is VALID [2018-11-14 18:56:20,756 INFO L273 TraceCheckUtils]: 116: Hoare triple {10974#true} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {10974#true} is VALID [2018-11-14 18:56:20,756 INFO L256 TraceCheckUtils]: 117: Hoare triple {10974#true} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {10974#true} is VALID [2018-11-14 18:56:20,779 INFO L273 TraceCheckUtils]: 118: Hoare triple {10974#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11350#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:20,794 INFO L273 TraceCheckUtils]: 119: Hoare triple {11350#(<= mapavg_~i~0 0)} assume true; {11350#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:20,803 INFO L273 TraceCheckUtils]: 120: Hoare triple {11350#(<= mapavg_~i~0 0)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11350#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:20,817 INFO L273 TraceCheckUtils]: 121: Hoare triple {11350#(<= mapavg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11360#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:20,826 INFO L273 TraceCheckUtils]: 122: Hoare triple {11360#(<= mapavg_~i~0 1)} assume true; {11360#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:20,840 INFO L273 TraceCheckUtils]: 123: Hoare triple {11360#(<= mapavg_~i~0 1)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11360#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:20,854 INFO L273 TraceCheckUtils]: 124: Hoare triple {11360#(<= mapavg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11370#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:20,863 INFO L273 TraceCheckUtils]: 125: Hoare triple {11370#(<= mapavg_~i~0 2)} assume true; {11370#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:20,876 INFO L273 TraceCheckUtils]: 126: Hoare triple {11370#(<= mapavg_~i~0 2)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11370#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:20,885 INFO L273 TraceCheckUtils]: 127: Hoare triple {11370#(<= mapavg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11380#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:20,899 INFO L273 TraceCheckUtils]: 128: Hoare triple {11380#(<= mapavg_~i~0 3)} assume true; {11380#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:20,908 INFO L273 TraceCheckUtils]: 129: Hoare triple {11380#(<= mapavg_~i~0 3)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11380#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:20,920 INFO L273 TraceCheckUtils]: 130: Hoare triple {11380#(<= mapavg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11390#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:20,935 INFO L273 TraceCheckUtils]: 131: Hoare triple {11390#(<= mapavg_~i~0 4)} assume true; {11390#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:20,944 INFO L273 TraceCheckUtils]: 132: Hoare triple {11390#(<= mapavg_~i~0 4)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11390#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:20,956 INFO L273 TraceCheckUtils]: 133: Hoare triple {11390#(<= mapavg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11400#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:20,969 INFO L273 TraceCheckUtils]: 134: Hoare triple {11400#(<= mapavg_~i~0 5)} assume true; {11400#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:20,985 INFO L273 TraceCheckUtils]: 135: Hoare triple {11400#(<= mapavg_~i~0 5)} assume !(~i~0 < 10000); {10975#false} is VALID [2018-11-14 18:56:20,985 INFO L273 TraceCheckUtils]: 136: Hoare triple {10975#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {10975#false} is VALID [2018-11-14 18:56:20,985 INFO L273 TraceCheckUtils]: 137: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 18:56:20,986 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {10975#false} {10974#true} #77#return; {10975#false} is VALID [2018-11-14 18:56:20,986 INFO L273 TraceCheckUtils]: 139: Hoare triple {10975#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {10975#false} is VALID [2018-11-14 18:56:20,986 INFO L273 TraceCheckUtils]: 140: Hoare triple {10975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10975#false} is VALID [2018-11-14 18:56:20,986 INFO L273 TraceCheckUtils]: 141: Hoare triple {10975#false} assume !false; {10975#false} is VALID [2018-11-14 18:56:20,999 INFO L134 CoverageAnalysis]: Checked inductivity of 841 backedges. 200 proven. 40 refuted. 0 times theorem prover too weak. 601 trivial. 0 not checked. [2018-11-14 18:56:21,031 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:21,031 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 8] total 25 [2018-11-14 18:56:21,032 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 142 [2018-11-14 18:56:21,032 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:21,032 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states. [2018-11-14 18:56:21,196 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:21,196 INFO L459 AbstractCegarLoop]: Interpolant automaton has 25 states [2018-11-14 18:56:21,197 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2018-11-14 18:56:21,197 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=198, Invalid=402, Unknown=0, NotChecked=0, Total=600 [2018-11-14 18:56:21,197 INFO L87 Difference]: Start difference. First operand 101 states and 105 transitions. Second operand 25 states. [2018-11-14 18:56:22,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:22,463 INFO L93 Difference]: Finished difference Result 154 states and 166 transitions. [2018-11-14 18:56:22,463 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-14 18:56:22,463 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 142 [2018-11-14 18:56:22,464 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:22,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-14 18:56:22,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 130 transitions. [2018-11-14 18:56:22,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-14 18:56:22,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 130 transitions. [2018-11-14 18:56:22,467 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 130 transitions. [2018-11-14 18:56:22,657 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:22,659 INFO L225 Difference]: With dead ends: 154 [2018-11-14 18:56:22,659 INFO L226 Difference]: Without dead ends: 109 [2018-11-14 18:56:22,660 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 137 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 96 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=198, Invalid=402, Unknown=0, NotChecked=0, Total=600 [2018-11-14 18:56:22,660 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109 states. [2018-11-14 18:56:22,759 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109 to 107. [2018-11-14 18:56:22,759 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:22,759 INFO L82 GeneralOperation]: Start isEquivalent. First operand 109 states. Second operand 107 states. [2018-11-14 18:56:22,759 INFO L74 IsIncluded]: Start isIncluded. First operand 109 states. Second operand 107 states. [2018-11-14 18:56:22,759 INFO L87 Difference]: Start difference. First operand 109 states. Second operand 107 states. [2018-11-14 18:56:22,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:22,761 INFO L93 Difference]: Finished difference Result 109 states and 113 transitions. [2018-11-14 18:56:22,762 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 113 transitions. [2018-11-14 18:56:22,762 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:22,762 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:22,762 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand 109 states. [2018-11-14 18:56:22,762 INFO L87 Difference]: Start difference. First operand 107 states. Second operand 109 states. [2018-11-14 18:56:22,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:22,765 INFO L93 Difference]: Finished difference Result 109 states and 113 transitions. [2018-11-14 18:56:22,765 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 113 transitions. [2018-11-14 18:56:22,765 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:22,765 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:22,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:22,766 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:22,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 107 states. [2018-11-14 18:56:22,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 111 transitions. [2018-11-14 18:56:22,768 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 111 transitions. Word has length 142 [2018-11-14 18:56:22,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:22,768 INFO L480 AbstractCegarLoop]: Abstraction has 107 states and 111 transitions. [2018-11-14 18:56:22,768 INFO L481 AbstractCegarLoop]: Interpolant automaton has 25 states. [2018-11-14 18:56:22,768 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 111 transitions. [2018-11-14 18:56:22,769 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2018-11-14 18:56:22,769 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:22,770 INFO L375 BasicCegarLoop]: trace histogram [21, 18, 18, 18, 17, 17, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:22,770 INFO L423 AbstractCegarLoop]: === Iteration 21 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:22,770 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:22,770 INFO L82 PathProgramCache]: Analyzing trace with hash 2015263464, now seen corresponding path program 17 times [2018-11-14 18:56:22,770 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:22,771 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:22,771 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:22,771 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:22,772 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:22,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:23,264 INFO L256 TraceCheckUtils]: 0: Hoare triple {11994#true} call ULTIMATE.init(); {11994#true} is VALID [2018-11-14 18:56:23,264 INFO L273 TraceCheckUtils]: 1: Hoare triple {11994#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11994#true} is VALID [2018-11-14 18:56:23,264 INFO L273 TraceCheckUtils]: 2: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,265 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11994#true} {11994#true} #69#return; {11994#true} is VALID [2018-11-14 18:56:23,265 INFO L256 TraceCheckUtils]: 4: Hoare triple {11994#true} call #t~ret12 := main(); {11994#true} is VALID [2018-11-14 18:56:23,265 INFO L273 TraceCheckUtils]: 5: Hoare triple {11994#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {11996#(= main_~i~1 0)} is VALID [2018-11-14 18:56:23,265 INFO L273 TraceCheckUtils]: 6: Hoare triple {11996#(= main_~i~1 0)} assume true; {11996#(= main_~i~1 0)} is VALID [2018-11-14 18:56:23,266 INFO L273 TraceCheckUtils]: 7: Hoare triple {11996#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11996#(= main_~i~1 0)} is VALID [2018-11-14 18:56:23,266 INFO L273 TraceCheckUtils]: 8: Hoare triple {11996#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11997#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:23,266 INFO L273 TraceCheckUtils]: 9: Hoare triple {11997#(<= main_~i~1 1)} assume true; {11997#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:23,267 INFO L273 TraceCheckUtils]: 10: Hoare triple {11997#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11997#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:23,267 INFO L273 TraceCheckUtils]: 11: Hoare triple {11997#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11998#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:23,267 INFO L273 TraceCheckUtils]: 12: Hoare triple {11998#(<= main_~i~1 2)} assume true; {11998#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:23,268 INFO L273 TraceCheckUtils]: 13: Hoare triple {11998#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11998#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:23,269 INFO L273 TraceCheckUtils]: 14: Hoare triple {11998#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11999#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:23,269 INFO L273 TraceCheckUtils]: 15: Hoare triple {11999#(<= main_~i~1 3)} assume true; {11999#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:23,270 INFO L273 TraceCheckUtils]: 16: Hoare triple {11999#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11999#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:23,270 INFO L273 TraceCheckUtils]: 17: Hoare triple {11999#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12000#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:23,271 INFO L273 TraceCheckUtils]: 18: Hoare triple {12000#(<= main_~i~1 4)} assume true; {12000#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:23,271 INFO L273 TraceCheckUtils]: 19: Hoare triple {12000#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12000#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:23,272 INFO L273 TraceCheckUtils]: 20: Hoare triple {12000#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12001#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:23,273 INFO L273 TraceCheckUtils]: 21: Hoare triple {12001#(<= main_~i~1 5)} assume true; {12001#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:23,273 INFO L273 TraceCheckUtils]: 22: Hoare triple {12001#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12001#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:23,274 INFO L273 TraceCheckUtils]: 23: Hoare triple {12001#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12002#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:23,274 INFO L273 TraceCheckUtils]: 24: Hoare triple {12002#(<= main_~i~1 6)} assume true; {12002#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:23,275 INFO L273 TraceCheckUtils]: 25: Hoare triple {12002#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12002#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:23,276 INFO L273 TraceCheckUtils]: 26: Hoare triple {12002#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12003#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:23,276 INFO L273 TraceCheckUtils]: 27: Hoare triple {12003#(<= main_~i~1 7)} assume true; {12003#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:23,277 INFO L273 TraceCheckUtils]: 28: Hoare triple {12003#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12003#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:23,277 INFO L273 TraceCheckUtils]: 29: Hoare triple {12003#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12004#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:23,278 INFO L273 TraceCheckUtils]: 30: Hoare triple {12004#(<= main_~i~1 8)} assume true; {12004#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:23,278 INFO L273 TraceCheckUtils]: 31: Hoare triple {12004#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12004#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:23,279 INFO L273 TraceCheckUtils]: 32: Hoare triple {12004#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12005#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:23,280 INFO L273 TraceCheckUtils]: 33: Hoare triple {12005#(<= main_~i~1 9)} assume true; {12005#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:23,280 INFO L273 TraceCheckUtils]: 34: Hoare triple {12005#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12005#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:23,281 INFO L273 TraceCheckUtils]: 35: Hoare triple {12005#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12006#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:23,282 INFO L273 TraceCheckUtils]: 36: Hoare triple {12006#(<= main_~i~1 10)} assume true; {12006#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:23,283 INFO L273 TraceCheckUtils]: 37: Hoare triple {12006#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12006#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:23,283 INFO L273 TraceCheckUtils]: 38: Hoare triple {12006#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12007#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:23,284 INFO L273 TraceCheckUtils]: 39: Hoare triple {12007#(<= main_~i~1 11)} assume true; {12007#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:23,284 INFO L273 TraceCheckUtils]: 40: Hoare triple {12007#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12007#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:23,285 INFO L273 TraceCheckUtils]: 41: Hoare triple {12007#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12008#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:23,286 INFO L273 TraceCheckUtils]: 42: Hoare triple {12008#(<= main_~i~1 12)} assume true; {12008#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:23,286 INFO L273 TraceCheckUtils]: 43: Hoare triple {12008#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12008#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:23,287 INFO L273 TraceCheckUtils]: 44: Hoare triple {12008#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12009#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:23,287 INFO L273 TraceCheckUtils]: 45: Hoare triple {12009#(<= main_~i~1 13)} assume true; {12009#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:23,288 INFO L273 TraceCheckUtils]: 46: Hoare triple {12009#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12009#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:23,289 INFO L273 TraceCheckUtils]: 47: Hoare triple {12009#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12010#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:23,289 INFO L273 TraceCheckUtils]: 48: Hoare triple {12010#(<= main_~i~1 14)} assume true; {12010#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:23,290 INFO L273 TraceCheckUtils]: 49: Hoare triple {12010#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12010#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:23,290 INFO L273 TraceCheckUtils]: 50: Hoare triple {12010#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12011#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:23,291 INFO L273 TraceCheckUtils]: 51: Hoare triple {12011#(<= main_~i~1 15)} assume true; {12011#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:23,291 INFO L273 TraceCheckUtils]: 52: Hoare triple {12011#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12011#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:23,292 INFO L273 TraceCheckUtils]: 53: Hoare triple {12011#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12012#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:23,293 INFO L273 TraceCheckUtils]: 54: Hoare triple {12012#(<= main_~i~1 16)} assume true; {12012#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:23,293 INFO L273 TraceCheckUtils]: 55: Hoare triple {12012#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {12012#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:23,294 INFO L273 TraceCheckUtils]: 56: Hoare triple {12012#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {12013#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:23,294 INFO L273 TraceCheckUtils]: 57: Hoare triple {12013#(<= main_~i~1 17)} assume true; {12013#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:23,295 INFO L273 TraceCheckUtils]: 58: Hoare triple {12013#(<= main_~i~1 17)} assume !(~i~1 < 10000); {11995#false} is VALID [2018-11-14 18:56:23,295 INFO L256 TraceCheckUtils]: 59: Hoare triple {11995#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:56:23,295 INFO L273 TraceCheckUtils]: 60: Hoare triple {11994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11994#true} is VALID [2018-11-14 18:56:23,296 INFO L273 TraceCheckUtils]: 61: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,296 INFO L273 TraceCheckUtils]: 62: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,296 INFO L273 TraceCheckUtils]: 63: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,296 INFO L273 TraceCheckUtils]: 64: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,296 INFO L273 TraceCheckUtils]: 65: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,297 INFO L273 TraceCheckUtils]: 66: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,297 INFO L273 TraceCheckUtils]: 67: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,297 INFO L273 TraceCheckUtils]: 68: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,297 INFO L273 TraceCheckUtils]: 69: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,297 INFO L273 TraceCheckUtils]: 70: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,298 INFO L273 TraceCheckUtils]: 71: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,298 INFO L273 TraceCheckUtils]: 72: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,298 INFO L273 TraceCheckUtils]: 73: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,298 INFO L273 TraceCheckUtils]: 74: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,298 INFO L273 TraceCheckUtils]: 75: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 76: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 77: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 78: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 79: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 80: Hoare triple {11994#true} assume !(~i~0 < 10000); {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 81: Hoare triple {11994#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 82: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,299 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {11994#true} {11995#false} #73#return; {11995#false} is VALID [2018-11-14 18:56:23,299 INFO L273 TraceCheckUtils]: 84: Hoare triple {11995#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {11995#false} is VALID [2018-11-14 18:56:23,300 INFO L256 TraceCheckUtils]: 85: Hoare triple {11995#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 86: Hoare triple {11994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 87: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 88: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 89: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 90: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 91: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 92: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,300 INFO L273 TraceCheckUtils]: 93: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 94: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 95: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 96: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 97: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 98: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 99: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 100: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 101: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,301 INFO L273 TraceCheckUtils]: 102: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 103: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 104: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 105: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 106: Hoare triple {11994#true} assume !(~i~0 < 10000); {11994#true} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 107: Hoare triple {11994#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {11994#true} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 108: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,302 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {11994#true} {11995#false} #75#return; {11995#false} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 110: Hoare triple {11995#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {11995#false} is VALID [2018-11-14 18:56:23,302 INFO L273 TraceCheckUtils]: 111: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 112: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 113: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 114: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 115: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 116: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 117: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 118: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 119: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 120: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:23,303 INFO L273 TraceCheckUtils]: 121: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 122: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 123: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 124: Hoare triple {11995#false} assume !(~i~2 < 9999); {11995#false} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 125: Hoare triple {11995#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {11995#false} is VALID [2018-11-14 18:56:23,304 INFO L256 TraceCheckUtils]: 126: Hoare triple {11995#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 127: Hoare triple {11994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11994#true} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 128: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 129: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,304 INFO L273 TraceCheckUtils]: 130: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 131: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 132: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 133: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 134: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 135: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 136: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 137: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 138: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,305 INFO L273 TraceCheckUtils]: 139: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 140: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 141: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 142: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 143: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 144: Hoare triple {11994#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 145: Hoare triple {11994#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 146: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 147: Hoare triple {11994#true} assume !(~i~0 < 10000); {11994#true} is VALID [2018-11-14 18:56:23,306 INFO L273 TraceCheckUtils]: 148: Hoare triple {11994#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {11994#true} is VALID [2018-11-14 18:56:23,307 INFO L273 TraceCheckUtils]: 149: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:23,307 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {11994#true} {11995#false} #77#return; {11995#false} is VALID [2018-11-14 18:56:23,307 INFO L273 TraceCheckUtils]: 151: Hoare triple {11995#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {11995#false} is VALID [2018-11-14 18:56:23,307 INFO L273 TraceCheckUtils]: 152: Hoare triple {11995#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11995#false} is VALID [2018-11-14 18:56:23,307 INFO L273 TraceCheckUtils]: 153: Hoare triple {11995#false} assume !false; {11995#false} is VALID [2018-11-14 18:56:23,320 INFO L134 CoverageAnalysis]: Checked inductivity of 1053 backedges. 0 proven. 442 refuted. 0 times theorem prover too weak. 611 trivial. 0 not checked. [2018-11-14 18:56:23,321 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:23,321 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:23,331 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:56:24,036 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 17 check-sat command(s) [2018-11-14 18:56:24,037 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:24,075 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:24,077 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:24,289 INFO L256 TraceCheckUtils]: 0: Hoare triple {11994#true} call ULTIMATE.init(); {11994#true} is VALID [2018-11-14 18:56:24,289 INFO L273 TraceCheckUtils]: 1: Hoare triple {11994#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11994#true} is VALID [2018-11-14 18:56:24,289 INFO L273 TraceCheckUtils]: 2: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,289 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11994#true} {11994#true} #69#return; {11994#true} is VALID [2018-11-14 18:56:24,290 INFO L256 TraceCheckUtils]: 4: Hoare triple {11994#true} call #t~ret12 := main(); {11994#true} is VALID [2018-11-14 18:56:24,290 INFO L273 TraceCheckUtils]: 5: Hoare triple {11994#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {11994#true} is VALID [2018-11-14 18:56:24,290 INFO L273 TraceCheckUtils]: 6: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,290 INFO L273 TraceCheckUtils]: 7: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,291 INFO L273 TraceCheckUtils]: 8: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,291 INFO L273 TraceCheckUtils]: 9: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,291 INFO L273 TraceCheckUtils]: 10: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,292 INFO L273 TraceCheckUtils]: 11: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,292 INFO L273 TraceCheckUtils]: 12: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,292 INFO L273 TraceCheckUtils]: 13: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,292 INFO L273 TraceCheckUtils]: 14: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,292 INFO L273 TraceCheckUtils]: 15: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,292 INFO L273 TraceCheckUtils]: 16: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,293 INFO L273 TraceCheckUtils]: 17: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,293 INFO L273 TraceCheckUtils]: 18: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,293 INFO L273 TraceCheckUtils]: 19: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,293 INFO L273 TraceCheckUtils]: 20: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,293 INFO L273 TraceCheckUtils]: 21: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,293 INFO L273 TraceCheckUtils]: 22: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,294 INFO L273 TraceCheckUtils]: 23: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,294 INFO L273 TraceCheckUtils]: 24: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,294 INFO L273 TraceCheckUtils]: 25: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,294 INFO L273 TraceCheckUtils]: 26: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,294 INFO L273 TraceCheckUtils]: 27: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,294 INFO L273 TraceCheckUtils]: 28: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,295 INFO L273 TraceCheckUtils]: 29: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,295 INFO L273 TraceCheckUtils]: 30: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,295 INFO L273 TraceCheckUtils]: 31: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,295 INFO L273 TraceCheckUtils]: 32: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,295 INFO L273 TraceCheckUtils]: 33: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,295 INFO L273 TraceCheckUtils]: 34: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,296 INFO L273 TraceCheckUtils]: 35: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,296 INFO L273 TraceCheckUtils]: 36: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,296 INFO L273 TraceCheckUtils]: 37: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,296 INFO L273 TraceCheckUtils]: 38: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,296 INFO L273 TraceCheckUtils]: 39: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,296 INFO L273 TraceCheckUtils]: 40: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,297 INFO L273 TraceCheckUtils]: 41: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,297 INFO L273 TraceCheckUtils]: 42: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,297 INFO L273 TraceCheckUtils]: 43: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,297 INFO L273 TraceCheckUtils]: 44: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,297 INFO L273 TraceCheckUtils]: 45: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,297 INFO L273 TraceCheckUtils]: 46: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,298 INFO L273 TraceCheckUtils]: 47: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,298 INFO L273 TraceCheckUtils]: 48: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,298 INFO L273 TraceCheckUtils]: 49: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,298 INFO L273 TraceCheckUtils]: 50: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,298 INFO L273 TraceCheckUtils]: 51: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,298 INFO L273 TraceCheckUtils]: 52: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,299 INFO L273 TraceCheckUtils]: 53: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,299 INFO L273 TraceCheckUtils]: 54: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,299 INFO L273 TraceCheckUtils]: 55: Hoare triple {11994#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {11994#true} is VALID [2018-11-14 18:56:24,299 INFO L273 TraceCheckUtils]: 56: Hoare triple {11994#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {11994#true} is VALID [2018-11-14 18:56:24,299 INFO L273 TraceCheckUtils]: 57: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 18:56:24,299 INFO L273 TraceCheckUtils]: 58: Hoare triple {11994#true} assume !(~i~1 < 10000); {11994#true} is VALID [2018-11-14 18:56:24,299 INFO L256 TraceCheckUtils]: 59: Hoare triple {11994#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {11994#true} is VALID [2018-11-14 18:56:24,314 INFO L273 TraceCheckUtils]: 60: Hoare triple {11994#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {12197#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:24,322 INFO L273 TraceCheckUtils]: 61: Hoare triple {12197#(<= mapavg_~i~0 0)} assume true; {12197#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:24,327 INFO L273 TraceCheckUtils]: 62: Hoare triple {12197#(<= mapavg_~i~0 0)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {12197#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:24,336 INFO L273 TraceCheckUtils]: 63: Hoare triple {12197#(<= mapavg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12207#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:24,336 INFO L273 TraceCheckUtils]: 64: Hoare triple {12207#(<= mapavg_~i~0 1)} assume true; {12207#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:24,338 INFO L273 TraceCheckUtils]: 65: Hoare triple {12207#(<= mapavg_~i~0 1)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {12207#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:24,338 INFO L273 TraceCheckUtils]: 66: Hoare triple {12207#(<= mapavg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12217#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:24,338 INFO L273 TraceCheckUtils]: 67: Hoare triple {12217#(<= mapavg_~i~0 2)} assume true; {12217#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:24,340 INFO L273 TraceCheckUtils]: 68: Hoare triple {12217#(<= mapavg_~i~0 2)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {12217#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:24,340 INFO L273 TraceCheckUtils]: 69: Hoare triple {12217#(<= mapavg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12227#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:24,342 INFO L273 TraceCheckUtils]: 70: Hoare triple {12227#(<= mapavg_~i~0 3)} assume true; {12227#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:24,342 INFO L273 TraceCheckUtils]: 71: Hoare triple {12227#(<= mapavg_~i~0 3)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {12227#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:24,344 INFO L273 TraceCheckUtils]: 72: Hoare triple {12227#(<= mapavg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12237#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:24,344 INFO L273 TraceCheckUtils]: 73: Hoare triple {12237#(<= mapavg_~i~0 4)} assume true; {12237#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:24,346 INFO L273 TraceCheckUtils]: 74: Hoare triple {12237#(<= mapavg_~i~0 4)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {12237#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:24,346 INFO L273 TraceCheckUtils]: 75: Hoare triple {12237#(<= mapavg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12247#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:24,346 INFO L273 TraceCheckUtils]: 76: Hoare triple {12247#(<= mapavg_~i~0 5)} assume true; {12247#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:24,347 INFO L273 TraceCheckUtils]: 77: Hoare triple {12247#(<= mapavg_~i~0 5)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {12247#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:24,347 INFO L273 TraceCheckUtils]: 78: Hoare triple {12247#(<= mapavg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {12257#(<= mapavg_~i~0 6)} is VALID [2018-11-14 18:56:24,347 INFO L273 TraceCheckUtils]: 79: Hoare triple {12257#(<= mapavg_~i~0 6)} assume true; {12257#(<= mapavg_~i~0 6)} is VALID [2018-11-14 18:56:24,348 INFO L273 TraceCheckUtils]: 80: Hoare triple {12257#(<= mapavg_~i~0 6)} assume !(~i~0 < 10000); {11995#false} is VALID [2018-11-14 18:56:24,348 INFO L273 TraceCheckUtils]: 81: Hoare triple {11995#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {11995#false} is VALID [2018-11-14 18:56:24,348 INFO L273 TraceCheckUtils]: 82: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,348 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {11995#false} {11994#true} #73#return; {11995#false} is VALID [2018-11-14 18:56:24,348 INFO L273 TraceCheckUtils]: 84: Hoare triple {11995#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {11995#false} is VALID [2018-11-14 18:56:24,348 INFO L256 TraceCheckUtils]: 85: Hoare triple {11995#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 86: Hoare triple {11995#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 87: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 88: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 89: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 90: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 91: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 92: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 93: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,349 INFO L273 TraceCheckUtils]: 94: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 95: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 96: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 97: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 98: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 99: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 100: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 101: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 102: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 103: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,350 INFO L273 TraceCheckUtils]: 104: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 105: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 106: Hoare triple {11995#false} assume !(~i~0 < 10000); {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 107: Hoare triple {11995#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 108: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {11995#false} {11995#false} #75#return; {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 110: Hoare triple {11995#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 111: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 112: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:24,351 INFO L273 TraceCheckUtils]: 113: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 114: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 115: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 116: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 117: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 118: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 119: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 120: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 121: Hoare triple {11995#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {11995#false} is VALID [2018-11-14 18:56:24,352 INFO L273 TraceCheckUtils]: 122: Hoare triple {11995#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 123: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 124: Hoare triple {11995#false} assume !(~i~2 < 9999); {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 125: Hoare triple {11995#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L256 TraceCheckUtils]: 126: Hoare triple {11995#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 127: Hoare triple {11995#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 128: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 129: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 130: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,353 INFO L273 TraceCheckUtils]: 131: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 132: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 133: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 134: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 135: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 136: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 137: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 138: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 139: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,354 INFO L273 TraceCheckUtils]: 140: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 141: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 142: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 143: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 144: Hoare triple {11995#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 145: Hoare triple {11995#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 146: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 147: Hoare triple {11995#false} assume !(~i~0 < 10000); {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 148: Hoare triple {11995#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {11995#false} is VALID [2018-11-14 18:56:24,355 INFO L273 TraceCheckUtils]: 149: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 18:56:24,356 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {11995#false} {11995#false} #77#return; {11995#false} is VALID [2018-11-14 18:56:24,356 INFO L273 TraceCheckUtils]: 151: Hoare triple {11995#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {11995#false} is VALID [2018-11-14 18:56:24,356 INFO L273 TraceCheckUtils]: 152: Hoare triple {11995#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11995#false} is VALID [2018-11-14 18:56:24,356 INFO L273 TraceCheckUtils]: 153: Hoare triple {11995#false} assume !false; {11995#false} is VALID [2018-11-14 18:56:24,365 INFO L134 CoverageAnalysis]: Checked inductivity of 1053 backedges. 270 proven. 57 refuted. 0 times theorem prover too weak. 726 trivial. 0 not checked. [2018-11-14 18:56:24,386 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:24,387 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 9] total 27 [2018-11-14 18:56:24,387 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 154 [2018-11-14 18:56:24,388 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:24,388 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-14 18:56:24,501 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:24,501 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-14 18:56:24,501 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-14 18:56:24,502 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=225, Invalid=477, Unknown=0, NotChecked=0, Total=702 [2018-11-14 18:56:24,502 INFO L87 Difference]: Start difference. First operand 107 states and 111 transitions. Second operand 27 states. [2018-11-14 18:56:25,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:25,377 INFO L93 Difference]: Finished difference Result 163 states and 175 transitions. [2018-11-14 18:56:25,377 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2018-11-14 18:56:25,377 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 154 [2018-11-14 18:56:25,377 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:25,377 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 18:56:25,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 136 transitions. [2018-11-14 18:56:25,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 18:56:25,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 136 transitions. [2018-11-14 18:56:25,380 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 136 transitions. [2018-11-14 18:56:25,528 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:25,531 INFO L225 Difference]: With dead ends: 163 [2018-11-14 18:56:25,531 INFO L226 Difference]: Without dead ends: 115 [2018-11-14 18:56:25,532 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 148 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 119 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=225, Invalid=477, Unknown=0, NotChecked=0, Total=702 [2018-11-14 18:56:25,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2018-11-14 18:56:25,566 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 113. [2018-11-14 18:56:25,566 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:25,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 115 states. Second operand 113 states. [2018-11-14 18:56:25,566 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand 113 states. [2018-11-14 18:56:25,567 INFO L87 Difference]: Start difference. First operand 115 states. Second operand 113 states. [2018-11-14 18:56:25,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:25,569 INFO L93 Difference]: Finished difference Result 115 states and 119 transitions. [2018-11-14 18:56:25,569 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 119 transitions. [2018-11-14 18:56:25,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:25,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:25,570 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 115 states. [2018-11-14 18:56:25,570 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 115 states. [2018-11-14 18:56:25,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:25,572 INFO L93 Difference]: Finished difference Result 115 states and 119 transitions. [2018-11-14 18:56:25,572 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 119 transitions. [2018-11-14 18:56:25,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:25,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:25,573 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:25,573 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:25,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 113 states. [2018-11-14 18:56:25,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 117 transitions. [2018-11-14 18:56:25,575 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 117 transitions. Word has length 154 [2018-11-14 18:56:25,575 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:25,576 INFO L480 AbstractCegarLoop]: Abstraction has 113 states and 117 transitions. [2018-11-14 18:56:25,576 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-14 18:56:25,576 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 117 transitions. [2018-11-14 18:56:25,577 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 167 [2018-11-14 18:56:25,577 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:25,577 INFO L375 BasicCegarLoop]: trace histogram [24, 21, 21, 19, 18, 18, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:25,578 INFO L423 AbstractCegarLoop]: === Iteration 22 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:25,578 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:25,578 INFO L82 PathProgramCache]: Analyzing trace with hash 764858548, now seen corresponding path program 18 times [2018-11-14 18:56:25,578 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:25,578 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:25,579 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:25,579 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:25,579 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:25,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:26,324 INFO L256 TraceCheckUtils]: 0: Hoare triple {13084#true} call ULTIMATE.init(); {13084#true} is VALID [2018-11-14 18:56:26,324 INFO L273 TraceCheckUtils]: 1: Hoare triple {13084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {13084#true} is VALID [2018-11-14 18:56:26,324 INFO L273 TraceCheckUtils]: 2: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,324 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13084#true} {13084#true} #69#return; {13084#true} is VALID [2018-11-14 18:56:26,325 INFO L256 TraceCheckUtils]: 4: Hoare triple {13084#true} call #t~ret12 := main(); {13084#true} is VALID [2018-11-14 18:56:26,325 INFO L273 TraceCheckUtils]: 5: Hoare triple {13084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {13086#(= main_~i~1 0)} is VALID [2018-11-14 18:56:26,326 INFO L273 TraceCheckUtils]: 6: Hoare triple {13086#(= main_~i~1 0)} assume true; {13086#(= main_~i~1 0)} is VALID [2018-11-14 18:56:26,326 INFO L273 TraceCheckUtils]: 7: Hoare triple {13086#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13086#(= main_~i~1 0)} is VALID [2018-11-14 18:56:26,327 INFO L273 TraceCheckUtils]: 8: Hoare triple {13086#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:26,327 INFO L273 TraceCheckUtils]: 9: Hoare triple {13087#(<= main_~i~1 1)} assume true; {13087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:26,328 INFO L273 TraceCheckUtils]: 10: Hoare triple {13087#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13087#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:26,328 INFO L273 TraceCheckUtils]: 11: Hoare triple {13087#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:26,328 INFO L273 TraceCheckUtils]: 12: Hoare triple {13088#(<= main_~i~1 2)} assume true; {13088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:26,329 INFO L273 TraceCheckUtils]: 13: Hoare triple {13088#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13088#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:26,329 INFO L273 TraceCheckUtils]: 14: Hoare triple {13088#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:26,329 INFO L273 TraceCheckUtils]: 15: Hoare triple {13089#(<= main_~i~1 3)} assume true; {13089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:26,330 INFO L273 TraceCheckUtils]: 16: Hoare triple {13089#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13089#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:26,330 INFO L273 TraceCheckUtils]: 17: Hoare triple {13089#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:26,331 INFO L273 TraceCheckUtils]: 18: Hoare triple {13090#(<= main_~i~1 4)} assume true; {13090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:26,331 INFO L273 TraceCheckUtils]: 19: Hoare triple {13090#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13090#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:26,332 INFO L273 TraceCheckUtils]: 20: Hoare triple {13090#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:26,333 INFO L273 TraceCheckUtils]: 21: Hoare triple {13091#(<= main_~i~1 5)} assume true; {13091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:26,333 INFO L273 TraceCheckUtils]: 22: Hoare triple {13091#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13091#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:26,334 INFO L273 TraceCheckUtils]: 23: Hoare triple {13091#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:26,334 INFO L273 TraceCheckUtils]: 24: Hoare triple {13092#(<= main_~i~1 6)} assume true; {13092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:26,335 INFO L273 TraceCheckUtils]: 25: Hoare triple {13092#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13092#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:26,335 INFO L273 TraceCheckUtils]: 26: Hoare triple {13092#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:26,336 INFO L273 TraceCheckUtils]: 27: Hoare triple {13093#(<= main_~i~1 7)} assume true; {13093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:26,336 INFO L273 TraceCheckUtils]: 28: Hoare triple {13093#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13093#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:26,337 INFO L273 TraceCheckUtils]: 29: Hoare triple {13093#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:26,338 INFO L273 TraceCheckUtils]: 30: Hoare triple {13094#(<= main_~i~1 8)} assume true; {13094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:26,338 INFO L273 TraceCheckUtils]: 31: Hoare triple {13094#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13094#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:26,339 INFO L273 TraceCheckUtils]: 32: Hoare triple {13094#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:26,339 INFO L273 TraceCheckUtils]: 33: Hoare triple {13095#(<= main_~i~1 9)} assume true; {13095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:26,340 INFO L273 TraceCheckUtils]: 34: Hoare triple {13095#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13095#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:26,340 INFO L273 TraceCheckUtils]: 35: Hoare triple {13095#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:26,341 INFO L273 TraceCheckUtils]: 36: Hoare triple {13096#(<= main_~i~1 10)} assume true; {13096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:26,341 INFO L273 TraceCheckUtils]: 37: Hoare triple {13096#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13096#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:26,342 INFO L273 TraceCheckUtils]: 38: Hoare triple {13096#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:26,342 INFO L273 TraceCheckUtils]: 39: Hoare triple {13097#(<= main_~i~1 11)} assume true; {13097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:26,364 INFO L273 TraceCheckUtils]: 40: Hoare triple {13097#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13097#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:26,379 INFO L273 TraceCheckUtils]: 41: Hoare triple {13097#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:26,388 INFO L273 TraceCheckUtils]: 42: Hoare triple {13098#(<= main_~i~1 12)} assume true; {13098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:26,391 INFO L273 TraceCheckUtils]: 43: Hoare triple {13098#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13098#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:26,391 INFO L273 TraceCheckUtils]: 44: Hoare triple {13098#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:26,391 INFO L273 TraceCheckUtils]: 45: Hoare triple {13099#(<= main_~i~1 13)} assume true; {13099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:26,392 INFO L273 TraceCheckUtils]: 46: Hoare triple {13099#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13099#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:26,392 INFO L273 TraceCheckUtils]: 47: Hoare triple {13099#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13100#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:26,393 INFO L273 TraceCheckUtils]: 48: Hoare triple {13100#(<= main_~i~1 14)} assume true; {13100#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:26,393 INFO L273 TraceCheckUtils]: 49: Hoare triple {13100#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13100#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:26,393 INFO L273 TraceCheckUtils]: 50: Hoare triple {13100#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13101#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:26,394 INFO L273 TraceCheckUtils]: 51: Hoare triple {13101#(<= main_~i~1 15)} assume true; {13101#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:26,394 INFO L273 TraceCheckUtils]: 52: Hoare triple {13101#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13101#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:26,394 INFO L273 TraceCheckUtils]: 53: Hoare triple {13101#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13102#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:26,395 INFO L273 TraceCheckUtils]: 54: Hoare triple {13102#(<= main_~i~1 16)} assume true; {13102#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:26,395 INFO L273 TraceCheckUtils]: 55: Hoare triple {13102#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13102#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:26,396 INFO L273 TraceCheckUtils]: 56: Hoare triple {13102#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13103#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:26,396 INFO L273 TraceCheckUtils]: 57: Hoare triple {13103#(<= main_~i~1 17)} assume true; {13103#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:26,397 INFO L273 TraceCheckUtils]: 58: Hoare triple {13103#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13103#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:26,398 INFO L273 TraceCheckUtils]: 59: Hoare triple {13103#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13104#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:26,398 INFO L273 TraceCheckUtils]: 60: Hoare triple {13104#(<= main_~i~1 18)} assume true; {13104#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:26,399 INFO L273 TraceCheckUtils]: 61: Hoare triple {13104#(<= main_~i~1 18)} assume !(~i~1 < 10000); {13085#false} is VALID [2018-11-14 18:56:26,399 INFO L256 TraceCheckUtils]: 62: Hoare triple {13085#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:56:26,399 INFO L273 TraceCheckUtils]: 63: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:56:26,400 INFO L273 TraceCheckUtils]: 64: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,400 INFO L273 TraceCheckUtils]: 65: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,400 INFO L273 TraceCheckUtils]: 66: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,400 INFO L273 TraceCheckUtils]: 67: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,400 INFO L273 TraceCheckUtils]: 68: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,400 INFO L273 TraceCheckUtils]: 69: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,401 INFO L273 TraceCheckUtils]: 70: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,401 INFO L273 TraceCheckUtils]: 71: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,401 INFO L273 TraceCheckUtils]: 72: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,401 INFO L273 TraceCheckUtils]: 73: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,401 INFO L273 TraceCheckUtils]: 74: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 75: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 76: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 77: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 78: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 79: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 80: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 81: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 82: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,402 INFO L273 TraceCheckUtils]: 83: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 84: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 85: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 86: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 87: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 88: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {13084#true} {13085#false} #73#return; {13085#false} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 90: Hoare triple {13085#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {13085#false} is VALID [2018-11-14 18:56:26,403 INFO L256 TraceCheckUtils]: 91: Hoare triple {13085#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 92: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:56:26,403 INFO L273 TraceCheckUtils]: 93: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 94: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 95: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 96: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 97: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 98: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 99: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 100: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 101: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,404 INFO L273 TraceCheckUtils]: 102: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 103: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 104: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 105: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 106: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 107: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 108: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 109: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 110: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 111: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,405 INFO L273 TraceCheckUtils]: 112: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 113: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 114: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 115: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 116: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 117: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,406 INFO L268 TraceCheckUtils]: 118: Hoare quadruple {13084#true} {13085#false} #75#return; {13085#false} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 119: Hoare triple {13085#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {13085#false} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 120: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:26,406 INFO L273 TraceCheckUtils]: 121: Hoare triple {13085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 122: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 123: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 124: Hoare triple {13085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 125: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 126: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 127: Hoare triple {13085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 128: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 129: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 130: Hoare triple {13085#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13085#false} is VALID [2018-11-14 18:56:26,407 INFO L273 TraceCheckUtils]: 131: Hoare triple {13085#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13085#false} is VALID [2018-11-14 18:56:26,408 INFO L273 TraceCheckUtils]: 132: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:26,408 INFO L273 TraceCheckUtils]: 133: Hoare triple {13085#false} assume !(~i~2 < 9999); {13085#false} is VALID [2018-11-14 18:56:26,408 INFO L273 TraceCheckUtils]: 134: Hoare triple {13085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {13085#false} is VALID [2018-11-14 18:56:26,408 INFO L256 TraceCheckUtils]: 135: Hoare triple {13085#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:56:26,408 INFO L273 TraceCheckUtils]: 136: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:56:26,408 INFO L273 TraceCheckUtils]: 137: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,409 INFO L273 TraceCheckUtils]: 138: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,409 INFO L273 TraceCheckUtils]: 139: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,409 INFO L273 TraceCheckUtils]: 140: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,409 INFO L273 TraceCheckUtils]: 141: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,409 INFO L273 TraceCheckUtils]: 142: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,409 INFO L273 TraceCheckUtils]: 143: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,409 INFO L273 TraceCheckUtils]: 144: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,410 INFO L273 TraceCheckUtils]: 145: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,410 INFO L273 TraceCheckUtils]: 146: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,410 INFO L273 TraceCheckUtils]: 147: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,410 INFO L273 TraceCheckUtils]: 148: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,410 INFO L273 TraceCheckUtils]: 149: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,410 INFO L273 TraceCheckUtils]: 150: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,411 INFO L273 TraceCheckUtils]: 151: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,411 INFO L273 TraceCheckUtils]: 152: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,411 INFO L273 TraceCheckUtils]: 153: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,411 INFO L273 TraceCheckUtils]: 154: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,411 INFO L273 TraceCheckUtils]: 155: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,411 INFO L273 TraceCheckUtils]: 156: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:26,411 INFO L273 TraceCheckUtils]: 157: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:26,412 INFO L273 TraceCheckUtils]: 158: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,412 INFO L273 TraceCheckUtils]: 159: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 18:56:26,412 INFO L273 TraceCheckUtils]: 160: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:56:26,412 INFO L273 TraceCheckUtils]: 161: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:26,412 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {13084#true} {13085#false} #77#return; {13085#false} is VALID [2018-11-14 18:56:26,412 INFO L273 TraceCheckUtils]: 163: Hoare triple {13085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {13085#false} is VALID [2018-11-14 18:56:26,412 INFO L273 TraceCheckUtils]: 164: Hoare triple {13085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13085#false} is VALID [2018-11-14 18:56:26,413 INFO L273 TraceCheckUtils]: 165: Hoare triple {13085#false} assume !false; {13085#false} is VALID [2018-11-14 18:56:26,435 INFO L134 CoverageAnalysis]: Checked inductivity of 1295 backedges. 0 proven. 495 refuted. 0 times theorem prover too weak. 800 trivial. 0 not checked. [2018-11-14 18:56:26,435 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:26,435 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 20 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 20 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:26,444 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:56:26,983 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 11 check-sat command(s) [2018-11-14 18:56:26,983 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:27,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:27,017 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:27,236 INFO L256 TraceCheckUtils]: 0: Hoare triple {13084#true} call ULTIMATE.init(); {13084#true} is VALID [2018-11-14 18:56:27,237 INFO L273 TraceCheckUtils]: 1: Hoare triple {13084#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {13084#true} is VALID [2018-11-14 18:56:27,237 INFO L273 TraceCheckUtils]: 2: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,237 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13084#true} {13084#true} #69#return; {13084#true} is VALID [2018-11-14 18:56:27,237 INFO L256 TraceCheckUtils]: 4: Hoare triple {13084#true} call #t~ret12 := main(); {13084#true} is VALID [2018-11-14 18:56:27,238 INFO L273 TraceCheckUtils]: 5: Hoare triple {13084#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {13084#true} is VALID [2018-11-14 18:56:27,238 INFO L273 TraceCheckUtils]: 6: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,238 INFO L273 TraceCheckUtils]: 7: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,238 INFO L273 TraceCheckUtils]: 8: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,239 INFO L273 TraceCheckUtils]: 9: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,239 INFO L273 TraceCheckUtils]: 10: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,239 INFO L273 TraceCheckUtils]: 11: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,239 INFO L273 TraceCheckUtils]: 12: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,240 INFO L273 TraceCheckUtils]: 13: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,240 INFO L273 TraceCheckUtils]: 14: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,240 INFO L273 TraceCheckUtils]: 15: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,240 INFO L273 TraceCheckUtils]: 16: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,241 INFO L273 TraceCheckUtils]: 17: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,241 INFO L273 TraceCheckUtils]: 18: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,241 INFO L273 TraceCheckUtils]: 19: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,241 INFO L273 TraceCheckUtils]: 20: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,241 INFO L273 TraceCheckUtils]: 21: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 22: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 23: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 24: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 25: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 26: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 27: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 28: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,242 INFO L273 TraceCheckUtils]: 29: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,243 INFO L273 TraceCheckUtils]: 30: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,243 INFO L273 TraceCheckUtils]: 31: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,243 INFO L273 TraceCheckUtils]: 32: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,243 INFO L273 TraceCheckUtils]: 33: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,243 INFO L273 TraceCheckUtils]: 34: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,243 INFO L273 TraceCheckUtils]: 35: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,243 INFO L273 TraceCheckUtils]: 36: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,244 INFO L273 TraceCheckUtils]: 37: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,244 INFO L273 TraceCheckUtils]: 38: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,244 INFO L273 TraceCheckUtils]: 39: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,244 INFO L273 TraceCheckUtils]: 40: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,244 INFO L273 TraceCheckUtils]: 41: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,244 INFO L273 TraceCheckUtils]: 42: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,245 INFO L273 TraceCheckUtils]: 43: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,245 INFO L273 TraceCheckUtils]: 44: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,245 INFO L273 TraceCheckUtils]: 45: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,245 INFO L273 TraceCheckUtils]: 46: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,245 INFO L273 TraceCheckUtils]: 47: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,246 INFO L273 TraceCheckUtils]: 48: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,246 INFO L273 TraceCheckUtils]: 49: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,246 INFO L273 TraceCheckUtils]: 50: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,246 INFO L273 TraceCheckUtils]: 51: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,246 INFO L273 TraceCheckUtils]: 52: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,246 INFO L273 TraceCheckUtils]: 53: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,247 INFO L273 TraceCheckUtils]: 54: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,247 INFO L273 TraceCheckUtils]: 55: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,247 INFO L273 TraceCheckUtils]: 56: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,247 INFO L273 TraceCheckUtils]: 57: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,247 INFO L273 TraceCheckUtils]: 58: Hoare triple {13084#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L273 TraceCheckUtils]: 59: Hoare triple {13084#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L273 TraceCheckUtils]: 60: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L273 TraceCheckUtils]: 61: Hoare triple {13084#true} assume !(~i~1 < 10000); {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L256 TraceCheckUtils]: 62: Hoare triple {13084#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L273 TraceCheckUtils]: 63: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L273 TraceCheckUtils]: 64: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L273 TraceCheckUtils]: 65: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,248 INFO L273 TraceCheckUtils]: 66: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,249 INFO L273 TraceCheckUtils]: 67: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,249 INFO L273 TraceCheckUtils]: 68: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,249 INFO L273 TraceCheckUtils]: 69: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,249 INFO L273 TraceCheckUtils]: 70: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,249 INFO L273 TraceCheckUtils]: 71: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,249 INFO L273 TraceCheckUtils]: 72: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,249 INFO L273 TraceCheckUtils]: 73: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,250 INFO L273 TraceCheckUtils]: 74: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,250 INFO L273 TraceCheckUtils]: 75: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,250 INFO L273 TraceCheckUtils]: 76: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,250 INFO L273 TraceCheckUtils]: 77: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,250 INFO L273 TraceCheckUtils]: 78: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,250 INFO L273 TraceCheckUtils]: 79: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,250 INFO L273 TraceCheckUtils]: 80: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,251 INFO L273 TraceCheckUtils]: 81: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,251 INFO L273 TraceCheckUtils]: 82: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,251 INFO L273 TraceCheckUtils]: 83: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,251 INFO L273 TraceCheckUtils]: 84: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,251 INFO L273 TraceCheckUtils]: 85: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,251 INFO L273 TraceCheckUtils]: 86: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 18:56:27,251 INFO L273 TraceCheckUtils]: 87: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:56:27,252 INFO L273 TraceCheckUtils]: 88: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,252 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {13084#true} {13084#true} #73#return; {13084#true} is VALID [2018-11-14 18:56:27,252 INFO L273 TraceCheckUtils]: 90: Hoare triple {13084#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {13084#true} is VALID [2018-11-14 18:56:27,252 INFO L256 TraceCheckUtils]: 91: Hoare triple {13084#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {13084#true} is VALID [2018-11-14 18:56:27,252 INFO L273 TraceCheckUtils]: 92: Hoare triple {13084#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13084#true} is VALID [2018-11-14 18:56:27,252 INFO L273 TraceCheckUtils]: 93: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,252 INFO L273 TraceCheckUtils]: 94: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 95: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 96: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 97: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 98: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 99: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 100: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 101: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,253 INFO L273 TraceCheckUtils]: 102: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,254 INFO L273 TraceCheckUtils]: 103: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,254 INFO L273 TraceCheckUtils]: 104: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,254 INFO L273 TraceCheckUtils]: 105: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,254 INFO L273 TraceCheckUtils]: 106: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,254 INFO L273 TraceCheckUtils]: 107: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,254 INFO L273 TraceCheckUtils]: 108: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,254 INFO L273 TraceCheckUtils]: 109: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,255 INFO L273 TraceCheckUtils]: 110: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,255 INFO L273 TraceCheckUtils]: 111: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,255 INFO L273 TraceCheckUtils]: 112: Hoare triple {13084#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13084#true} is VALID [2018-11-14 18:56:27,255 INFO L273 TraceCheckUtils]: 113: Hoare triple {13084#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13084#true} is VALID [2018-11-14 18:56:27,255 INFO L273 TraceCheckUtils]: 114: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,255 INFO L273 TraceCheckUtils]: 115: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 18:56:27,255 INFO L273 TraceCheckUtils]: 116: Hoare triple {13084#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {13084#true} is VALID [2018-11-14 18:56:27,256 INFO L273 TraceCheckUtils]: 117: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 18:56:27,256 INFO L268 TraceCheckUtils]: 118: Hoare quadruple {13084#true} {13084#true} #75#return; {13084#true} is VALID [2018-11-14 18:56:27,258 INFO L273 TraceCheckUtils]: 119: Hoare triple {13084#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {13465#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:27,258 INFO L273 TraceCheckUtils]: 120: Hoare triple {13465#(<= main_~i~2 0)} assume true; {13465#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:27,260 INFO L273 TraceCheckUtils]: 121: Hoare triple {13465#(<= main_~i~2 0)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13465#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:27,261 INFO L273 TraceCheckUtils]: 122: Hoare triple {13465#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13475#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:27,261 INFO L273 TraceCheckUtils]: 123: Hoare triple {13475#(<= main_~i~2 1)} assume true; {13475#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:27,262 INFO L273 TraceCheckUtils]: 124: Hoare triple {13475#(<= main_~i~2 1)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13475#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:27,262 INFO L273 TraceCheckUtils]: 125: Hoare triple {13475#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13485#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:27,262 INFO L273 TraceCheckUtils]: 126: Hoare triple {13485#(<= main_~i~2 2)} assume true; {13485#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:27,264 INFO L273 TraceCheckUtils]: 127: Hoare triple {13485#(<= main_~i~2 2)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13485#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:27,264 INFO L273 TraceCheckUtils]: 128: Hoare triple {13485#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13495#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:27,265 INFO L273 TraceCheckUtils]: 129: Hoare triple {13495#(<= main_~i~2 3)} assume true; {13495#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:27,266 INFO L273 TraceCheckUtils]: 130: Hoare triple {13495#(<= main_~i~2 3)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {13495#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:27,287 INFO L273 TraceCheckUtils]: 131: Hoare triple {13495#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {13505#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:27,292 INFO L273 TraceCheckUtils]: 132: Hoare triple {13505#(<= main_~i~2 4)} assume true; {13505#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:27,292 INFO L273 TraceCheckUtils]: 133: Hoare triple {13505#(<= main_~i~2 4)} assume !(~i~2 < 9999); {13085#false} is VALID [2018-11-14 18:56:27,292 INFO L273 TraceCheckUtils]: 134: Hoare triple {13085#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {13085#false} is VALID [2018-11-14 18:56:27,292 INFO L256 TraceCheckUtils]: 135: Hoare triple {13085#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {13085#false} is VALID [2018-11-14 18:56:27,292 INFO L273 TraceCheckUtils]: 136: Hoare triple {13085#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 137: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 138: Hoare triple {13085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 139: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 140: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 141: Hoare triple {13085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 142: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 143: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 144: Hoare triple {13085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:56:27,293 INFO L273 TraceCheckUtils]: 145: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 146: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 147: Hoare triple {13085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 148: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 149: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 150: Hoare triple {13085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 151: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 152: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 153: Hoare triple {13085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:56:27,294 INFO L273 TraceCheckUtils]: 154: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:56:27,295 INFO L273 TraceCheckUtils]: 155: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,295 INFO L273 TraceCheckUtils]: 156: Hoare triple {13085#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {13085#false} is VALID [2018-11-14 18:56:27,295 INFO L273 TraceCheckUtils]: 157: Hoare triple {13085#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {13085#false} is VALID [2018-11-14 18:56:27,295 INFO L273 TraceCheckUtils]: 158: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,295 INFO L273 TraceCheckUtils]: 159: Hoare triple {13085#false} assume !(~i~0 < 10000); {13085#false} is VALID [2018-11-14 18:56:27,295 INFO L273 TraceCheckUtils]: 160: Hoare triple {13085#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {13085#false} is VALID [2018-11-14 18:56:27,296 INFO L273 TraceCheckUtils]: 161: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 18:56:27,296 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {13085#false} {13085#false} #77#return; {13085#false} is VALID [2018-11-14 18:56:27,296 INFO L273 TraceCheckUtils]: 163: Hoare triple {13085#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {13085#false} is VALID [2018-11-14 18:56:27,296 INFO L273 TraceCheckUtils]: 164: Hoare triple {13085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13085#false} is VALID [2018-11-14 18:56:27,296 INFO L273 TraceCheckUtils]: 165: Hoare triple {13085#false} assume !false; {13085#false} is VALID [2018-11-14 18:56:27,307 INFO L134 CoverageAnalysis]: Checked inductivity of 1295 backedges. 362 proven. 26 refuted. 0 times theorem prover too weak. 907 trivial. 0 not checked. [2018-11-14 18:56:27,327 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:27,328 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 7] total 26 [2018-11-14 18:56:27,328 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 166 [2018-11-14 18:56:27,328 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:27,329 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-14 18:56:27,440 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-14 18:56:27,440 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-14 18:56:27,441 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-14 18:56:27,441 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-14 18:56:27,441 INFO L87 Difference]: Start difference. First operand 113 states and 117 transitions. Second operand 26 states. [2018-11-14 18:56:28,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:28,295 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2018-11-14 18:56:28,295 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2018-11-14 18:56:28,295 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 166 [2018-11-14 18:56:28,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:28,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 18:56:28,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 130 transitions. [2018-11-14 18:56:28,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 18:56:28,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 130 transitions. [2018-11-14 18:56:28,297 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 130 transitions. [2018-11-14 18:56:28,426 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:28,429 INFO L225 Difference]: With dead ends: 172 [2018-11-14 18:56:28,429 INFO L226 Difference]: Without dead ends: 121 [2018-11-14 18:56:28,430 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 186 GetRequests, 162 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 90 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-14 18:56:28,430 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2018-11-14 18:56:28,479 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 119. [2018-11-14 18:56:28,480 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:28,480 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand 119 states. [2018-11-14 18:56:28,480 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 119 states. [2018-11-14 18:56:28,480 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 119 states. [2018-11-14 18:56:28,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:28,482 INFO L93 Difference]: Finished difference Result 121 states and 125 transitions. [2018-11-14 18:56:28,482 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 125 transitions. [2018-11-14 18:56:28,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:28,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:28,483 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 121 states. [2018-11-14 18:56:28,483 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 121 states. [2018-11-14 18:56:28,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:28,485 INFO L93 Difference]: Finished difference Result 121 states and 125 transitions. [2018-11-14 18:56:28,485 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 125 transitions. [2018-11-14 18:56:28,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:28,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:28,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:28,486 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:28,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 119 states. [2018-11-14 18:56:28,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 119 states and 123 transitions. [2018-11-14 18:56:28,488 INFO L78 Accepts]: Start accepts. Automaton has 119 states and 123 transitions. Word has length 166 [2018-11-14 18:56:28,489 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:28,489 INFO L480 AbstractCegarLoop]: Abstraction has 119 states and 123 transitions. [2018-11-14 18:56:28,489 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-14 18:56:28,489 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 123 transitions. [2018-11-14 18:56:28,490 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 173 [2018-11-14 18:56:28,490 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:28,490 INFO L375 BasicCegarLoop]: trace histogram [24, 21, 21, 20, 19, 19, 6, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:28,490 INFO L423 AbstractCegarLoop]: === Iteration 23 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:28,491 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:28,491 INFO L82 PathProgramCache]: Analyzing trace with hash -79584708, now seen corresponding path program 19 times [2018-11-14 18:56:28,491 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:28,491 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:28,492 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:28,492 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:28,492 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:28,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:29,059 INFO L256 TraceCheckUtils]: 0: Hoare triple {14241#true} call ULTIMATE.init(); {14241#true} is VALID [2018-11-14 18:56:29,060 INFO L273 TraceCheckUtils]: 1: Hoare triple {14241#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {14241#true} is VALID [2018-11-14 18:56:29,060 INFO L273 TraceCheckUtils]: 2: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,060 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14241#true} {14241#true} #69#return; {14241#true} is VALID [2018-11-14 18:56:29,060 INFO L256 TraceCheckUtils]: 4: Hoare triple {14241#true} call #t~ret12 := main(); {14241#true} is VALID [2018-11-14 18:56:29,061 INFO L273 TraceCheckUtils]: 5: Hoare triple {14241#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {14243#(= main_~i~1 0)} is VALID [2018-11-14 18:56:29,061 INFO L273 TraceCheckUtils]: 6: Hoare triple {14243#(= main_~i~1 0)} assume true; {14243#(= main_~i~1 0)} is VALID [2018-11-14 18:56:29,062 INFO L273 TraceCheckUtils]: 7: Hoare triple {14243#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14243#(= main_~i~1 0)} is VALID [2018-11-14 18:56:29,062 INFO L273 TraceCheckUtils]: 8: Hoare triple {14243#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:29,062 INFO L273 TraceCheckUtils]: 9: Hoare triple {14244#(<= main_~i~1 1)} assume true; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:29,063 INFO L273 TraceCheckUtils]: 10: Hoare triple {14244#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:29,063 INFO L273 TraceCheckUtils]: 11: Hoare triple {14244#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:29,063 INFO L273 TraceCheckUtils]: 12: Hoare triple {14245#(<= main_~i~1 2)} assume true; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:29,064 INFO L273 TraceCheckUtils]: 13: Hoare triple {14245#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:29,064 INFO L273 TraceCheckUtils]: 14: Hoare triple {14245#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:29,065 INFO L273 TraceCheckUtils]: 15: Hoare triple {14246#(<= main_~i~1 3)} assume true; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:29,065 INFO L273 TraceCheckUtils]: 16: Hoare triple {14246#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:29,066 INFO L273 TraceCheckUtils]: 17: Hoare triple {14246#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:29,066 INFO L273 TraceCheckUtils]: 18: Hoare triple {14247#(<= main_~i~1 4)} assume true; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:29,068 INFO L273 TraceCheckUtils]: 19: Hoare triple {14247#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:29,069 INFO L273 TraceCheckUtils]: 20: Hoare triple {14247#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:29,069 INFO L273 TraceCheckUtils]: 21: Hoare triple {14248#(<= main_~i~1 5)} assume true; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:29,070 INFO L273 TraceCheckUtils]: 22: Hoare triple {14248#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:29,070 INFO L273 TraceCheckUtils]: 23: Hoare triple {14248#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:29,071 INFO L273 TraceCheckUtils]: 24: Hoare triple {14249#(<= main_~i~1 6)} assume true; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:29,071 INFO L273 TraceCheckUtils]: 25: Hoare triple {14249#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:29,072 INFO L273 TraceCheckUtils]: 26: Hoare triple {14249#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:29,073 INFO L273 TraceCheckUtils]: 27: Hoare triple {14250#(<= main_~i~1 7)} assume true; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:29,073 INFO L273 TraceCheckUtils]: 28: Hoare triple {14250#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:29,074 INFO L273 TraceCheckUtils]: 29: Hoare triple {14250#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:29,074 INFO L273 TraceCheckUtils]: 30: Hoare triple {14251#(<= main_~i~1 8)} assume true; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:29,075 INFO L273 TraceCheckUtils]: 31: Hoare triple {14251#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:29,076 INFO L273 TraceCheckUtils]: 32: Hoare triple {14251#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:29,076 INFO L273 TraceCheckUtils]: 33: Hoare triple {14252#(<= main_~i~1 9)} assume true; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:29,077 INFO L273 TraceCheckUtils]: 34: Hoare triple {14252#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:29,077 INFO L273 TraceCheckUtils]: 35: Hoare triple {14252#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:29,078 INFO L273 TraceCheckUtils]: 36: Hoare triple {14253#(<= main_~i~1 10)} assume true; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:29,078 INFO L273 TraceCheckUtils]: 37: Hoare triple {14253#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:29,079 INFO L273 TraceCheckUtils]: 38: Hoare triple {14253#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:29,080 INFO L273 TraceCheckUtils]: 39: Hoare triple {14254#(<= main_~i~1 11)} assume true; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:29,080 INFO L273 TraceCheckUtils]: 40: Hoare triple {14254#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:29,081 INFO L273 TraceCheckUtils]: 41: Hoare triple {14254#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:29,081 INFO L273 TraceCheckUtils]: 42: Hoare triple {14255#(<= main_~i~1 12)} assume true; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:29,082 INFO L273 TraceCheckUtils]: 43: Hoare triple {14255#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:29,086 INFO L273 TraceCheckUtils]: 44: Hoare triple {14255#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:29,087 INFO L273 TraceCheckUtils]: 45: Hoare triple {14256#(<= main_~i~1 13)} assume true; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:29,087 INFO L273 TraceCheckUtils]: 46: Hoare triple {14256#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:29,088 INFO L273 TraceCheckUtils]: 47: Hoare triple {14256#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:29,088 INFO L273 TraceCheckUtils]: 48: Hoare triple {14257#(<= main_~i~1 14)} assume true; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:29,088 INFO L273 TraceCheckUtils]: 49: Hoare triple {14257#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:29,089 INFO L273 TraceCheckUtils]: 50: Hoare triple {14257#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:29,089 INFO L273 TraceCheckUtils]: 51: Hoare triple {14258#(<= main_~i~1 15)} assume true; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:29,089 INFO L273 TraceCheckUtils]: 52: Hoare triple {14258#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:29,090 INFO L273 TraceCheckUtils]: 53: Hoare triple {14258#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:29,090 INFO L273 TraceCheckUtils]: 54: Hoare triple {14259#(<= main_~i~1 16)} assume true; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:29,091 INFO L273 TraceCheckUtils]: 55: Hoare triple {14259#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:29,091 INFO L273 TraceCheckUtils]: 56: Hoare triple {14259#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:29,092 INFO L273 TraceCheckUtils]: 57: Hoare triple {14260#(<= main_~i~1 17)} assume true; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:29,093 INFO L273 TraceCheckUtils]: 58: Hoare triple {14260#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:29,093 INFO L273 TraceCheckUtils]: 59: Hoare triple {14260#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:29,094 INFO L273 TraceCheckUtils]: 60: Hoare triple {14261#(<= main_~i~1 18)} assume true; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:29,094 INFO L273 TraceCheckUtils]: 61: Hoare triple {14261#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:29,095 INFO L273 TraceCheckUtils]: 62: Hoare triple {14261#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:29,096 INFO L273 TraceCheckUtils]: 63: Hoare triple {14262#(<= main_~i~1 19)} assume true; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:29,096 INFO L273 TraceCheckUtils]: 64: Hoare triple {14262#(<= main_~i~1 19)} assume !(~i~1 < 10000); {14242#false} is VALID [2018-11-14 18:56:29,096 INFO L256 TraceCheckUtils]: 65: Hoare triple {14242#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {14241#true} is VALID [2018-11-14 18:56:29,097 INFO L273 TraceCheckUtils]: 66: Hoare triple {14241#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14241#true} is VALID [2018-11-14 18:56:29,097 INFO L273 TraceCheckUtils]: 67: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,097 INFO L273 TraceCheckUtils]: 68: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,097 INFO L273 TraceCheckUtils]: 69: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,097 INFO L273 TraceCheckUtils]: 70: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,097 INFO L273 TraceCheckUtils]: 71: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,098 INFO L273 TraceCheckUtils]: 72: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,098 INFO L273 TraceCheckUtils]: 73: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,098 INFO L273 TraceCheckUtils]: 74: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,098 INFO L273 TraceCheckUtils]: 75: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,098 INFO L273 TraceCheckUtils]: 76: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 77: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 78: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 79: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 80: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 81: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 82: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 83: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 84: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,099 INFO L273 TraceCheckUtils]: 85: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,100 INFO L273 TraceCheckUtils]: 86: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,100 INFO L273 TraceCheckUtils]: 87: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,100 INFO L273 TraceCheckUtils]: 88: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,100 INFO L273 TraceCheckUtils]: 89: Hoare triple {14241#true} assume !(~i~0 < 10000); {14241#true} is VALID [2018-11-14 18:56:29,100 INFO L273 TraceCheckUtils]: 90: Hoare triple {14241#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {14241#true} is VALID [2018-11-14 18:56:29,100 INFO L273 TraceCheckUtils]: 91: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,100 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {14241#true} {14242#false} #73#return; {14242#false} is VALID [2018-11-14 18:56:29,100 INFO L273 TraceCheckUtils]: 93: Hoare triple {14242#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {14242#false} is VALID [2018-11-14 18:56:29,100 INFO L256 TraceCheckUtils]: 94: Hoare triple {14242#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 95: Hoare triple {14241#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 96: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 97: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 98: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 99: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 100: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 101: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 102: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 103: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,101 INFO L273 TraceCheckUtils]: 104: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 105: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 106: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 107: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 108: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 109: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 110: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 111: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 112: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,102 INFO L273 TraceCheckUtils]: 113: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 114: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 115: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 116: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 117: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 118: Hoare triple {14241#true} assume !(~i~0 < 10000); {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 119: Hoare triple {14241#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 120: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,103 INFO L268 TraceCheckUtils]: 121: Hoare quadruple {14241#true} {14242#false} #75#return; {14242#false} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 122: Hoare triple {14242#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {14242#false} is VALID [2018-11-14 18:56:29,103 INFO L273 TraceCheckUtils]: 123: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 124: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 125: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 126: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 127: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 128: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 129: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 130: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 131: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,104 INFO L273 TraceCheckUtils]: 132: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 133: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 134: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 135: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 136: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 137: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 138: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 139: Hoare triple {14242#false} assume !(~i~2 < 9999); {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 140: Hoare triple {14242#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {14242#false} is VALID [2018-11-14 18:56:29,105 INFO L256 TraceCheckUtils]: 141: Hoare triple {14242#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {14241#true} is VALID [2018-11-14 18:56:29,105 INFO L273 TraceCheckUtils]: 142: Hoare triple {14241#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 143: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 144: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 145: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 146: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 147: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 148: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 149: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 150: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,106 INFO L273 TraceCheckUtils]: 151: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 152: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 153: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 154: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 155: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 156: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 157: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 158: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 159: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 160: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,107 INFO L273 TraceCheckUtils]: 161: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 162: Hoare triple {14241#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14241#true} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 163: Hoare triple {14241#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14241#true} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 164: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 165: Hoare triple {14241#true} assume !(~i~0 < 10000); {14241#true} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 166: Hoare triple {14241#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {14241#true} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 167: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,108 INFO L268 TraceCheckUtils]: 168: Hoare quadruple {14241#true} {14242#false} #77#return; {14242#false} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 169: Hoare triple {14242#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {14242#false} is VALID [2018-11-14 18:56:29,108 INFO L273 TraceCheckUtils]: 170: Hoare triple {14242#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14242#false} is VALID [2018-11-14 18:56:29,109 INFO L273 TraceCheckUtils]: 171: Hoare triple {14242#false} assume !false; {14242#false} is VALID [2018-11-14 18:56:29,122 INFO L134 CoverageAnalysis]: Checked inductivity of 1365 backedges. 0 proven. 551 refuted. 0 times theorem prover too weak. 814 trivial. 0 not checked. [2018-11-14 18:56:29,122 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:29,122 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 21 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 21 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:29,130 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:29,197 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:29,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:29,230 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:29,574 INFO L256 TraceCheckUtils]: 0: Hoare triple {14241#true} call ULTIMATE.init(); {14241#true} is VALID [2018-11-14 18:56:29,574 INFO L273 TraceCheckUtils]: 1: Hoare triple {14241#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {14241#true} is VALID [2018-11-14 18:56:29,575 INFO L273 TraceCheckUtils]: 2: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 18:56:29,575 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14241#true} {14241#true} #69#return; {14241#true} is VALID [2018-11-14 18:56:29,575 INFO L256 TraceCheckUtils]: 4: Hoare triple {14241#true} call #t~ret12 := main(); {14241#true} is VALID [2018-11-14 18:56:29,576 INFO L273 TraceCheckUtils]: 5: Hoare triple {14241#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {14281#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:29,576 INFO L273 TraceCheckUtils]: 6: Hoare triple {14281#(<= main_~i~1 0)} assume true; {14281#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:29,577 INFO L273 TraceCheckUtils]: 7: Hoare triple {14281#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14281#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:29,577 INFO L273 TraceCheckUtils]: 8: Hoare triple {14281#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:29,577 INFO L273 TraceCheckUtils]: 9: Hoare triple {14244#(<= main_~i~1 1)} assume true; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:29,578 INFO L273 TraceCheckUtils]: 10: Hoare triple {14244#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:29,578 INFO L273 TraceCheckUtils]: 11: Hoare triple {14244#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:29,578 INFO L273 TraceCheckUtils]: 12: Hoare triple {14245#(<= main_~i~1 2)} assume true; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:29,579 INFO L273 TraceCheckUtils]: 13: Hoare triple {14245#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:29,580 INFO L273 TraceCheckUtils]: 14: Hoare triple {14245#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:29,580 INFO L273 TraceCheckUtils]: 15: Hoare triple {14246#(<= main_~i~1 3)} assume true; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:29,581 INFO L273 TraceCheckUtils]: 16: Hoare triple {14246#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:29,581 INFO L273 TraceCheckUtils]: 17: Hoare triple {14246#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:29,582 INFO L273 TraceCheckUtils]: 18: Hoare triple {14247#(<= main_~i~1 4)} assume true; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:29,582 INFO L273 TraceCheckUtils]: 19: Hoare triple {14247#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:29,583 INFO L273 TraceCheckUtils]: 20: Hoare triple {14247#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:29,584 INFO L273 TraceCheckUtils]: 21: Hoare triple {14248#(<= main_~i~1 5)} assume true; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:29,584 INFO L273 TraceCheckUtils]: 22: Hoare triple {14248#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:29,585 INFO L273 TraceCheckUtils]: 23: Hoare triple {14248#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:29,585 INFO L273 TraceCheckUtils]: 24: Hoare triple {14249#(<= main_~i~1 6)} assume true; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:29,586 INFO L273 TraceCheckUtils]: 25: Hoare triple {14249#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:29,586 INFO L273 TraceCheckUtils]: 26: Hoare triple {14249#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:29,587 INFO L273 TraceCheckUtils]: 27: Hoare triple {14250#(<= main_~i~1 7)} assume true; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:29,587 INFO L273 TraceCheckUtils]: 28: Hoare triple {14250#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:29,588 INFO L273 TraceCheckUtils]: 29: Hoare triple {14250#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:29,589 INFO L273 TraceCheckUtils]: 30: Hoare triple {14251#(<= main_~i~1 8)} assume true; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:29,589 INFO L273 TraceCheckUtils]: 31: Hoare triple {14251#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:29,590 INFO L273 TraceCheckUtils]: 32: Hoare triple {14251#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:29,590 INFO L273 TraceCheckUtils]: 33: Hoare triple {14252#(<= main_~i~1 9)} assume true; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:29,591 INFO L273 TraceCheckUtils]: 34: Hoare triple {14252#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:29,591 INFO L273 TraceCheckUtils]: 35: Hoare triple {14252#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:29,592 INFO L273 TraceCheckUtils]: 36: Hoare triple {14253#(<= main_~i~1 10)} assume true; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:29,592 INFO L273 TraceCheckUtils]: 37: Hoare triple {14253#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:29,593 INFO L273 TraceCheckUtils]: 38: Hoare triple {14253#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:29,593 INFO L273 TraceCheckUtils]: 39: Hoare triple {14254#(<= main_~i~1 11)} assume true; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:29,594 INFO L273 TraceCheckUtils]: 40: Hoare triple {14254#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:29,595 INFO L273 TraceCheckUtils]: 41: Hoare triple {14254#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:29,595 INFO L273 TraceCheckUtils]: 42: Hoare triple {14255#(<= main_~i~1 12)} assume true; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:29,596 INFO L273 TraceCheckUtils]: 43: Hoare triple {14255#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:29,596 INFO L273 TraceCheckUtils]: 44: Hoare triple {14255#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:29,597 INFO L273 TraceCheckUtils]: 45: Hoare triple {14256#(<= main_~i~1 13)} assume true; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:29,597 INFO L273 TraceCheckUtils]: 46: Hoare triple {14256#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:29,598 INFO L273 TraceCheckUtils]: 47: Hoare triple {14256#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:29,598 INFO L273 TraceCheckUtils]: 48: Hoare triple {14257#(<= main_~i~1 14)} assume true; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:29,599 INFO L273 TraceCheckUtils]: 49: Hoare triple {14257#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:29,600 INFO L273 TraceCheckUtils]: 50: Hoare triple {14257#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:29,600 INFO L273 TraceCheckUtils]: 51: Hoare triple {14258#(<= main_~i~1 15)} assume true; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:29,601 INFO L273 TraceCheckUtils]: 52: Hoare triple {14258#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:29,601 INFO L273 TraceCheckUtils]: 53: Hoare triple {14258#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:29,602 INFO L273 TraceCheckUtils]: 54: Hoare triple {14259#(<= main_~i~1 16)} assume true; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:29,602 INFO L273 TraceCheckUtils]: 55: Hoare triple {14259#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:29,603 INFO L273 TraceCheckUtils]: 56: Hoare triple {14259#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:29,603 INFO L273 TraceCheckUtils]: 57: Hoare triple {14260#(<= main_~i~1 17)} assume true; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:29,604 INFO L273 TraceCheckUtils]: 58: Hoare triple {14260#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:29,605 INFO L273 TraceCheckUtils]: 59: Hoare triple {14260#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:29,605 INFO L273 TraceCheckUtils]: 60: Hoare triple {14261#(<= main_~i~1 18)} assume true; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:29,605 INFO L273 TraceCheckUtils]: 61: Hoare triple {14261#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:29,606 INFO L273 TraceCheckUtils]: 62: Hoare triple {14261#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:29,607 INFO L273 TraceCheckUtils]: 63: Hoare triple {14262#(<= main_~i~1 19)} assume true; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:29,607 INFO L273 TraceCheckUtils]: 64: Hoare triple {14262#(<= main_~i~1 19)} assume !(~i~1 < 10000); {14242#false} is VALID [2018-11-14 18:56:29,607 INFO L256 TraceCheckUtils]: 65: Hoare triple {14242#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {14242#false} is VALID [2018-11-14 18:56:29,608 INFO L273 TraceCheckUtils]: 66: Hoare triple {14242#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14242#false} is VALID [2018-11-14 18:56:29,608 INFO L273 TraceCheckUtils]: 67: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,608 INFO L273 TraceCheckUtils]: 68: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,608 INFO L273 TraceCheckUtils]: 69: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,608 INFO L273 TraceCheckUtils]: 70: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,608 INFO L273 TraceCheckUtils]: 71: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,609 INFO L273 TraceCheckUtils]: 72: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,609 INFO L273 TraceCheckUtils]: 73: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,609 INFO L273 TraceCheckUtils]: 74: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,609 INFO L273 TraceCheckUtils]: 75: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,609 INFO L273 TraceCheckUtils]: 76: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 77: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 78: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 79: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 80: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 81: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 82: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 83: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 84: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,610 INFO L273 TraceCheckUtils]: 85: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L273 TraceCheckUtils]: 86: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L273 TraceCheckUtils]: 87: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L273 TraceCheckUtils]: 88: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L273 TraceCheckUtils]: 89: Hoare triple {14242#false} assume !(~i~0 < 10000); {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L273 TraceCheckUtils]: 90: Hoare triple {14242#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L273 TraceCheckUtils]: 91: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {14242#false} {14242#false} #73#return; {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L273 TraceCheckUtils]: 93: Hoare triple {14242#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {14242#false} is VALID [2018-11-14 18:56:29,611 INFO L256 TraceCheckUtils]: 94: Hoare triple {14242#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 95: Hoare triple {14242#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 96: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 97: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 98: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 99: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 100: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 101: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 102: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 103: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,612 INFO L273 TraceCheckUtils]: 104: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 105: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 106: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 107: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 108: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 109: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 110: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 111: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 112: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,613 INFO L273 TraceCheckUtils]: 113: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 114: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 115: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 116: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 117: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 118: Hoare triple {14242#false} assume !(~i~0 < 10000); {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 119: Hoare triple {14242#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 120: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L268 TraceCheckUtils]: 121: Hoare quadruple {14242#false} {14242#false} #75#return; {14242#false} is VALID [2018-11-14 18:56:29,614 INFO L273 TraceCheckUtils]: 122: Hoare triple {14242#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 123: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 124: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 125: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 126: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 127: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 128: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 129: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 130: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 131: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,615 INFO L273 TraceCheckUtils]: 132: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 133: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 134: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 135: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 136: Hoare triple {14242#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 137: Hoare triple {14242#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 138: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 139: Hoare triple {14242#false} assume !(~i~2 < 9999); {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L273 TraceCheckUtils]: 140: Hoare triple {14242#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {14242#false} is VALID [2018-11-14 18:56:29,616 INFO L256 TraceCheckUtils]: 141: Hoare triple {14242#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 142: Hoare triple {14242#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 143: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 144: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 145: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 146: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 147: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 148: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 149: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 150: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,617 INFO L273 TraceCheckUtils]: 151: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 152: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 153: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 154: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 155: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 156: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 157: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 158: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 159: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,618 INFO L273 TraceCheckUtils]: 160: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 161: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 162: Hoare triple {14242#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 163: Hoare triple {14242#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 164: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 165: Hoare triple {14242#false} assume !(~i~0 < 10000); {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 166: Hoare triple {14242#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 167: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L268 TraceCheckUtils]: 168: Hoare quadruple {14242#false} {14242#false} #77#return; {14242#false} is VALID [2018-11-14 18:56:29,619 INFO L273 TraceCheckUtils]: 169: Hoare triple {14242#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {14242#false} is VALID [2018-11-14 18:56:29,620 INFO L273 TraceCheckUtils]: 170: Hoare triple {14242#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14242#false} is VALID [2018-11-14 18:56:29,620 INFO L273 TraceCheckUtils]: 171: Hoare triple {14242#false} assume !false; {14242#false} is VALID [2018-11-14 18:56:29,633 INFO L134 CoverageAnalysis]: Checked inductivity of 1365 backedges. 0 proven. 551 refuted. 0 times theorem prover too weak. 814 trivial. 0 not checked. [2018-11-14 18:56:29,655 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:29,655 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 22] total 23 [2018-11-14 18:56:29,655 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 172 [2018-11-14 18:56:29,656 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:29,656 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states. [2018-11-14 18:56:29,749 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:29,750 INFO L459 AbstractCegarLoop]: Interpolant automaton has 23 states [2018-11-14 18:56:29,750 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2018-11-14 18:56:29,750 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-14 18:56:29,751 INFO L87 Difference]: Start difference. First operand 119 states and 123 transitions. Second operand 23 states. [2018-11-14 18:56:30,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:30,596 INFO L93 Difference]: Finished difference Result 177 states and 185 transitions. [2018-11-14 18:56:30,596 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-14 18:56:30,596 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 172 [2018-11-14 18:56:30,596 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:30,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-14 18:56:30,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 117 transitions. [2018-11-14 18:56:30,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-14 18:56:30,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 117 transitions. [2018-11-14 18:56:30,598 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 117 transitions. [2018-11-14 18:56:30,705 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:30,708 INFO L225 Difference]: With dead ends: 177 [2018-11-14 18:56:30,708 INFO L226 Difference]: Without dead ends: 123 [2018-11-14 18:56:30,709 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 193 GetRequests, 172 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-14 18:56:30,709 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states. [2018-11-14 18:56:30,737 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 122. [2018-11-14 18:56:30,737 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:30,737 INFO L82 GeneralOperation]: Start isEquivalent. First operand 123 states. Second operand 122 states. [2018-11-14 18:56:30,738 INFO L74 IsIncluded]: Start isIncluded. First operand 123 states. Second operand 122 states. [2018-11-14 18:56:30,738 INFO L87 Difference]: Start difference. First operand 123 states. Second operand 122 states. [2018-11-14 18:56:30,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:30,741 INFO L93 Difference]: Finished difference Result 123 states and 127 transitions. [2018-11-14 18:56:30,741 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 127 transitions. [2018-11-14 18:56:30,742 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:30,742 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:30,742 INFO L74 IsIncluded]: Start isIncluded. First operand 122 states. Second operand 123 states. [2018-11-14 18:56:30,742 INFO L87 Difference]: Start difference. First operand 122 states. Second operand 123 states. [2018-11-14 18:56:30,744 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:30,744 INFO L93 Difference]: Finished difference Result 123 states and 127 transitions. [2018-11-14 18:56:30,744 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 127 transitions. [2018-11-14 18:56:30,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:30,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:30,745 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:30,745 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:30,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 122 states. [2018-11-14 18:56:30,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 126 transitions. [2018-11-14 18:56:30,747 INFO L78 Accepts]: Start accepts. Automaton has 122 states and 126 transitions. Word has length 172 [2018-11-14 18:56:30,748 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:30,748 INFO L480 AbstractCegarLoop]: Abstraction has 122 states and 126 transitions. [2018-11-14 18:56:30,748 INFO L481 AbstractCegarLoop]: Interpolant automaton has 23 states. [2018-11-14 18:56:30,748 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 126 transitions. [2018-11-14 18:56:30,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 176 [2018-11-14 18:56:30,749 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:30,749 INFO L375 BasicCegarLoop]: trace histogram [24, 21, 21, 21, 20, 20, 6, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:30,750 INFO L423 AbstractCegarLoop]: === Iteration 24 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:30,750 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:30,750 INFO L82 PathProgramCache]: Analyzing trace with hash -1295769913, now seen corresponding path program 20 times [2018-11-14 18:56:30,750 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:30,750 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:30,751 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:30,751 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:30,751 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:30,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:32,038 INFO L256 TraceCheckUtils]: 0: Hoare triple {15428#true} call ULTIMATE.init(); {15428#true} is VALID [2018-11-14 18:56:32,039 INFO L273 TraceCheckUtils]: 1: Hoare triple {15428#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {15428#true} is VALID [2018-11-14 18:56:32,039 INFO L273 TraceCheckUtils]: 2: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,039 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15428#true} {15428#true} #69#return; {15428#true} is VALID [2018-11-14 18:56:32,039 INFO L256 TraceCheckUtils]: 4: Hoare triple {15428#true} call #t~ret12 := main(); {15428#true} is VALID [2018-11-14 18:56:32,040 INFO L273 TraceCheckUtils]: 5: Hoare triple {15428#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {15430#(= main_~i~1 0)} is VALID [2018-11-14 18:56:32,040 INFO L273 TraceCheckUtils]: 6: Hoare triple {15430#(= main_~i~1 0)} assume true; {15430#(= main_~i~1 0)} is VALID [2018-11-14 18:56:32,041 INFO L273 TraceCheckUtils]: 7: Hoare triple {15430#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15430#(= main_~i~1 0)} is VALID [2018-11-14 18:56:32,042 INFO L273 TraceCheckUtils]: 8: Hoare triple {15430#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:32,042 INFO L273 TraceCheckUtils]: 9: Hoare triple {15431#(<= main_~i~1 1)} assume true; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:32,042 INFO L273 TraceCheckUtils]: 10: Hoare triple {15431#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:32,043 INFO L273 TraceCheckUtils]: 11: Hoare triple {15431#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:32,043 INFO L273 TraceCheckUtils]: 12: Hoare triple {15432#(<= main_~i~1 2)} assume true; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:32,043 INFO L273 TraceCheckUtils]: 13: Hoare triple {15432#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:32,044 INFO L273 TraceCheckUtils]: 14: Hoare triple {15432#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:32,044 INFO L273 TraceCheckUtils]: 15: Hoare triple {15433#(<= main_~i~1 3)} assume true; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:32,045 INFO L273 TraceCheckUtils]: 16: Hoare triple {15433#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:32,046 INFO L273 TraceCheckUtils]: 17: Hoare triple {15433#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:32,046 INFO L273 TraceCheckUtils]: 18: Hoare triple {15434#(<= main_~i~1 4)} assume true; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:32,047 INFO L273 TraceCheckUtils]: 19: Hoare triple {15434#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:32,047 INFO L273 TraceCheckUtils]: 20: Hoare triple {15434#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:32,048 INFO L273 TraceCheckUtils]: 21: Hoare triple {15435#(<= main_~i~1 5)} assume true; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:32,048 INFO L273 TraceCheckUtils]: 22: Hoare triple {15435#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:32,049 INFO L273 TraceCheckUtils]: 23: Hoare triple {15435#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:32,050 INFO L273 TraceCheckUtils]: 24: Hoare triple {15436#(<= main_~i~1 6)} assume true; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:32,050 INFO L273 TraceCheckUtils]: 25: Hoare triple {15436#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:32,051 INFO L273 TraceCheckUtils]: 26: Hoare triple {15436#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:32,051 INFO L273 TraceCheckUtils]: 27: Hoare triple {15437#(<= main_~i~1 7)} assume true; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:32,052 INFO L273 TraceCheckUtils]: 28: Hoare triple {15437#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:32,053 INFO L273 TraceCheckUtils]: 29: Hoare triple {15437#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:32,053 INFO L273 TraceCheckUtils]: 30: Hoare triple {15438#(<= main_~i~1 8)} assume true; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:32,054 INFO L273 TraceCheckUtils]: 31: Hoare triple {15438#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:32,059 INFO L273 TraceCheckUtils]: 32: Hoare triple {15438#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:32,059 INFO L273 TraceCheckUtils]: 33: Hoare triple {15439#(<= main_~i~1 9)} assume true; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:32,059 INFO L273 TraceCheckUtils]: 34: Hoare triple {15439#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:32,060 INFO L273 TraceCheckUtils]: 35: Hoare triple {15439#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:32,060 INFO L273 TraceCheckUtils]: 36: Hoare triple {15440#(<= main_~i~1 10)} assume true; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:32,060 INFO L273 TraceCheckUtils]: 37: Hoare triple {15440#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:32,061 INFO L273 TraceCheckUtils]: 38: Hoare triple {15440#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:32,061 INFO L273 TraceCheckUtils]: 39: Hoare triple {15441#(<= main_~i~1 11)} assume true; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:32,061 INFO L273 TraceCheckUtils]: 40: Hoare triple {15441#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:32,062 INFO L273 TraceCheckUtils]: 41: Hoare triple {15441#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:32,062 INFO L273 TraceCheckUtils]: 42: Hoare triple {15442#(<= main_~i~1 12)} assume true; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:32,063 INFO L273 TraceCheckUtils]: 43: Hoare triple {15442#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:32,063 INFO L273 TraceCheckUtils]: 44: Hoare triple {15442#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:32,064 INFO L273 TraceCheckUtils]: 45: Hoare triple {15443#(<= main_~i~1 13)} assume true; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:32,064 INFO L273 TraceCheckUtils]: 46: Hoare triple {15443#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:32,065 INFO L273 TraceCheckUtils]: 47: Hoare triple {15443#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:32,066 INFO L273 TraceCheckUtils]: 48: Hoare triple {15444#(<= main_~i~1 14)} assume true; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:32,066 INFO L273 TraceCheckUtils]: 49: Hoare triple {15444#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:32,067 INFO L273 TraceCheckUtils]: 50: Hoare triple {15444#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:32,067 INFO L273 TraceCheckUtils]: 51: Hoare triple {15445#(<= main_~i~1 15)} assume true; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:32,068 INFO L273 TraceCheckUtils]: 52: Hoare triple {15445#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:32,069 INFO L273 TraceCheckUtils]: 53: Hoare triple {15445#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:32,069 INFO L273 TraceCheckUtils]: 54: Hoare triple {15446#(<= main_~i~1 16)} assume true; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:32,070 INFO L273 TraceCheckUtils]: 55: Hoare triple {15446#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:32,070 INFO L273 TraceCheckUtils]: 56: Hoare triple {15446#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:32,071 INFO L273 TraceCheckUtils]: 57: Hoare triple {15447#(<= main_~i~1 17)} assume true; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:32,071 INFO L273 TraceCheckUtils]: 58: Hoare triple {15447#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:32,072 INFO L273 TraceCheckUtils]: 59: Hoare triple {15447#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:32,073 INFO L273 TraceCheckUtils]: 60: Hoare triple {15448#(<= main_~i~1 18)} assume true; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:32,073 INFO L273 TraceCheckUtils]: 61: Hoare triple {15448#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:32,074 INFO L273 TraceCheckUtils]: 62: Hoare triple {15448#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:32,074 INFO L273 TraceCheckUtils]: 63: Hoare triple {15449#(<= main_~i~1 19)} assume true; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:32,075 INFO L273 TraceCheckUtils]: 64: Hoare triple {15449#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:32,076 INFO L273 TraceCheckUtils]: 65: Hoare triple {15449#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15450#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:32,076 INFO L273 TraceCheckUtils]: 66: Hoare triple {15450#(<= main_~i~1 20)} assume true; {15450#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:32,077 INFO L273 TraceCheckUtils]: 67: Hoare triple {15450#(<= main_~i~1 20)} assume !(~i~1 < 10000); {15429#false} is VALID [2018-11-14 18:56:32,077 INFO L256 TraceCheckUtils]: 68: Hoare triple {15429#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {15428#true} is VALID [2018-11-14 18:56:32,077 INFO L273 TraceCheckUtils]: 69: Hoare triple {15428#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15428#true} is VALID [2018-11-14 18:56:32,077 INFO L273 TraceCheckUtils]: 70: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,078 INFO L273 TraceCheckUtils]: 71: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,078 INFO L273 TraceCheckUtils]: 72: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,078 INFO L273 TraceCheckUtils]: 73: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,078 INFO L273 TraceCheckUtils]: 74: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,078 INFO L273 TraceCheckUtils]: 75: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,078 INFO L273 TraceCheckUtils]: 76: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,079 INFO L273 TraceCheckUtils]: 77: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,079 INFO L273 TraceCheckUtils]: 78: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,079 INFO L273 TraceCheckUtils]: 79: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,079 INFO L273 TraceCheckUtils]: 80: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,079 INFO L273 TraceCheckUtils]: 81: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,079 INFO L273 TraceCheckUtils]: 82: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 83: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 84: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 85: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 86: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 87: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 88: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 89: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 90: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,080 INFO L273 TraceCheckUtils]: 91: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,081 INFO L273 TraceCheckUtils]: 92: Hoare triple {15428#true} assume !(~i~0 < 10000); {15428#true} is VALID [2018-11-14 18:56:32,081 INFO L273 TraceCheckUtils]: 93: Hoare triple {15428#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {15428#true} is VALID [2018-11-14 18:56:32,081 INFO L273 TraceCheckUtils]: 94: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,081 INFO L268 TraceCheckUtils]: 95: Hoare quadruple {15428#true} {15429#false} #73#return; {15429#false} is VALID [2018-11-14 18:56:32,081 INFO L273 TraceCheckUtils]: 96: Hoare triple {15429#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {15429#false} is VALID [2018-11-14 18:56:32,081 INFO L256 TraceCheckUtils]: 97: Hoare triple {15429#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {15428#true} is VALID [2018-11-14 18:56:32,081 INFO L273 TraceCheckUtils]: 98: Hoare triple {15428#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15428#true} is VALID [2018-11-14 18:56:32,081 INFO L273 TraceCheckUtils]: 99: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,081 INFO L273 TraceCheckUtils]: 100: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 101: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 102: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 103: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 104: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 105: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 106: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 107: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 108: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 109: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,082 INFO L273 TraceCheckUtils]: 110: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 111: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 112: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 113: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 114: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 115: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 116: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 117: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 118: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,083 INFO L273 TraceCheckUtils]: 119: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 120: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 121: Hoare triple {15428#true} assume !(~i~0 < 10000); {15428#true} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 122: Hoare triple {15428#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {15428#true} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 123: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,084 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {15428#true} {15429#false} #75#return; {15429#false} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 125: Hoare triple {15429#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {15429#false} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 126: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 127: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 128: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:32,084 INFO L273 TraceCheckUtils]: 129: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 130: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 131: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 132: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 133: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 134: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 135: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 136: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 137: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:32,085 INFO L273 TraceCheckUtils]: 138: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 139: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 140: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 141: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 142: Hoare triple {15429#false} assume !(~i~2 < 9999); {15429#false} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 143: Hoare triple {15429#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {15429#false} is VALID [2018-11-14 18:56:32,086 INFO L256 TraceCheckUtils]: 144: Hoare triple {15429#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {15428#true} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 145: Hoare triple {15428#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15428#true} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 146: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 147: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,086 INFO L273 TraceCheckUtils]: 148: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 149: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 150: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 151: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 152: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 153: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 154: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 155: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 156: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 157: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,087 INFO L273 TraceCheckUtils]: 158: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 159: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 160: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 161: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 162: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 163: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 164: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 165: Hoare triple {15428#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 166: Hoare triple {15428#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15428#true} is VALID [2018-11-14 18:56:32,088 INFO L273 TraceCheckUtils]: 167: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,089 INFO L273 TraceCheckUtils]: 168: Hoare triple {15428#true} assume !(~i~0 < 10000); {15428#true} is VALID [2018-11-14 18:56:32,089 INFO L273 TraceCheckUtils]: 169: Hoare triple {15428#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {15428#true} is VALID [2018-11-14 18:56:32,089 INFO L273 TraceCheckUtils]: 170: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:32,089 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {15428#true} {15429#false} #77#return; {15429#false} is VALID [2018-11-14 18:56:32,089 INFO L273 TraceCheckUtils]: 172: Hoare triple {15429#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {15429#false} is VALID [2018-11-14 18:56:32,089 INFO L273 TraceCheckUtils]: 173: Hoare triple {15429#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15429#false} is VALID [2018-11-14 18:56:32,089 INFO L273 TraceCheckUtils]: 174: Hoare triple {15429#false} assume !false; {15429#false} is VALID [2018-11-14 18:56:32,103 INFO L134 CoverageAnalysis]: Checked inductivity of 1424 backedges. 0 proven. 610 refuted. 0 times theorem prover too weak. 814 trivial. 0 not checked. [2018-11-14 18:56:32,103 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:32,103 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 22 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 22 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:32,111 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:56:32,175 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:56:32,175 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:32,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:32,229 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:33,657 INFO L256 TraceCheckUtils]: 0: Hoare triple {15428#true} call ULTIMATE.init(); {15428#true} is VALID [2018-11-14 18:56:33,657 INFO L273 TraceCheckUtils]: 1: Hoare triple {15428#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {15428#true} is VALID [2018-11-14 18:56:33,657 INFO L273 TraceCheckUtils]: 2: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 18:56:33,658 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15428#true} {15428#true} #69#return; {15428#true} is VALID [2018-11-14 18:56:33,658 INFO L256 TraceCheckUtils]: 4: Hoare triple {15428#true} call #t~ret12 := main(); {15428#true} is VALID [2018-11-14 18:56:33,659 INFO L273 TraceCheckUtils]: 5: Hoare triple {15428#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {15469#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:33,659 INFO L273 TraceCheckUtils]: 6: Hoare triple {15469#(<= main_~i~1 0)} assume true; {15469#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:33,659 INFO L273 TraceCheckUtils]: 7: Hoare triple {15469#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15469#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:33,660 INFO L273 TraceCheckUtils]: 8: Hoare triple {15469#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:33,660 INFO L273 TraceCheckUtils]: 9: Hoare triple {15431#(<= main_~i~1 1)} assume true; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:33,660 INFO L273 TraceCheckUtils]: 10: Hoare triple {15431#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:33,661 INFO L273 TraceCheckUtils]: 11: Hoare triple {15431#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:33,661 INFO L273 TraceCheckUtils]: 12: Hoare triple {15432#(<= main_~i~1 2)} assume true; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:33,662 INFO L273 TraceCheckUtils]: 13: Hoare triple {15432#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:33,662 INFO L273 TraceCheckUtils]: 14: Hoare triple {15432#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:33,663 INFO L273 TraceCheckUtils]: 15: Hoare triple {15433#(<= main_~i~1 3)} assume true; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:33,663 INFO L273 TraceCheckUtils]: 16: Hoare triple {15433#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:33,664 INFO L273 TraceCheckUtils]: 17: Hoare triple {15433#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:33,664 INFO L273 TraceCheckUtils]: 18: Hoare triple {15434#(<= main_~i~1 4)} assume true; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:33,665 INFO L273 TraceCheckUtils]: 19: Hoare triple {15434#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:33,666 INFO L273 TraceCheckUtils]: 20: Hoare triple {15434#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:33,666 INFO L273 TraceCheckUtils]: 21: Hoare triple {15435#(<= main_~i~1 5)} assume true; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:33,667 INFO L273 TraceCheckUtils]: 22: Hoare triple {15435#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:33,667 INFO L273 TraceCheckUtils]: 23: Hoare triple {15435#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:33,668 INFO L273 TraceCheckUtils]: 24: Hoare triple {15436#(<= main_~i~1 6)} assume true; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:33,668 INFO L273 TraceCheckUtils]: 25: Hoare triple {15436#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:33,669 INFO L273 TraceCheckUtils]: 26: Hoare triple {15436#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:33,669 INFO L273 TraceCheckUtils]: 27: Hoare triple {15437#(<= main_~i~1 7)} assume true; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:33,670 INFO L273 TraceCheckUtils]: 28: Hoare triple {15437#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:33,670 INFO L273 TraceCheckUtils]: 29: Hoare triple {15437#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:33,671 INFO L273 TraceCheckUtils]: 30: Hoare triple {15438#(<= main_~i~1 8)} assume true; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:33,671 INFO L273 TraceCheckUtils]: 31: Hoare triple {15438#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:33,672 INFO L273 TraceCheckUtils]: 32: Hoare triple {15438#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:33,673 INFO L273 TraceCheckUtils]: 33: Hoare triple {15439#(<= main_~i~1 9)} assume true; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:33,673 INFO L273 TraceCheckUtils]: 34: Hoare triple {15439#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:33,674 INFO L273 TraceCheckUtils]: 35: Hoare triple {15439#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:33,674 INFO L273 TraceCheckUtils]: 36: Hoare triple {15440#(<= main_~i~1 10)} assume true; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:33,675 INFO L273 TraceCheckUtils]: 37: Hoare triple {15440#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:33,675 INFO L273 TraceCheckUtils]: 38: Hoare triple {15440#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:33,676 INFO L273 TraceCheckUtils]: 39: Hoare triple {15441#(<= main_~i~1 11)} assume true; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:33,676 INFO L273 TraceCheckUtils]: 40: Hoare triple {15441#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:33,677 INFO L273 TraceCheckUtils]: 41: Hoare triple {15441#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:33,677 INFO L273 TraceCheckUtils]: 42: Hoare triple {15442#(<= main_~i~1 12)} assume true; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:33,678 INFO L273 TraceCheckUtils]: 43: Hoare triple {15442#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:33,679 INFO L273 TraceCheckUtils]: 44: Hoare triple {15442#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:33,679 INFO L273 TraceCheckUtils]: 45: Hoare triple {15443#(<= main_~i~1 13)} assume true; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:33,680 INFO L273 TraceCheckUtils]: 46: Hoare triple {15443#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:33,680 INFO L273 TraceCheckUtils]: 47: Hoare triple {15443#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:33,681 INFO L273 TraceCheckUtils]: 48: Hoare triple {15444#(<= main_~i~1 14)} assume true; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:33,681 INFO L273 TraceCheckUtils]: 49: Hoare triple {15444#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:33,682 INFO L273 TraceCheckUtils]: 50: Hoare triple {15444#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:33,682 INFO L273 TraceCheckUtils]: 51: Hoare triple {15445#(<= main_~i~1 15)} assume true; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:33,683 INFO L273 TraceCheckUtils]: 52: Hoare triple {15445#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:33,683 INFO L273 TraceCheckUtils]: 53: Hoare triple {15445#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:33,684 INFO L273 TraceCheckUtils]: 54: Hoare triple {15446#(<= main_~i~1 16)} assume true; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:33,684 INFO L273 TraceCheckUtils]: 55: Hoare triple {15446#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:33,685 INFO L273 TraceCheckUtils]: 56: Hoare triple {15446#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:33,686 INFO L273 TraceCheckUtils]: 57: Hoare triple {15447#(<= main_~i~1 17)} assume true; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:33,686 INFO L273 TraceCheckUtils]: 58: Hoare triple {15447#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:33,687 INFO L273 TraceCheckUtils]: 59: Hoare triple {15447#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:33,687 INFO L273 TraceCheckUtils]: 60: Hoare triple {15448#(<= main_~i~1 18)} assume true; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:33,688 INFO L273 TraceCheckUtils]: 61: Hoare triple {15448#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:33,688 INFO L273 TraceCheckUtils]: 62: Hoare triple {15448#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:33,689 INFO L273 TraceCheckUtils]: 63: Hoare triple {15449#(<= main_~i~1 19)} assume true; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:33,689 INFO L273 TraceCheckUtils]: 64: Hoare triple {15449#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:33,690 INFO L273 TraceCheckUtils]: 65: Hoare triple {15449#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {15450#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:33,691 INFO L273 TraceCheckUtils]: 66: Hoare triple {15450#(<= main_~i~1 20)} assume true; {15450#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:33,691 INFO L273 TraceCheckUtils]: 67: Hoare triple {15450#(<= main_~i~1 20)} assume !(~i~1 < 10000); {15429#false} is VALID [2018-11-14 18:56:33,691 INFO L256 TraceCheckUtils]: 68: Hoare triple {15429#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {15429#false} is VALID [2018-11-14 18:56:33,692 INFO L273 TraceCheckUtils]: 69: Hoare triple {15429#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15429#false} is VALID [2018-11-14 18:56:33,692 INFO L273 TraceCheckUtils]: 70: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,692 INFO L273 TraceCheckUtils]: 71: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,692 INFO L273 TraceCheckUtils]: 72: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,692 INFO L273 TraceCheckUtils]: 73: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,693 INFO L273 TraceCheckUtils]: 74: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,693 INFO L273 TraceCheckUtils]: 75: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,693 INFO L273 TraceCheckUtils]: 76: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,693 INFO L273 TraceCheckUtils]: 77: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,693 INFO L273 TraceCheckUtils]: 78: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,693 INFO L273 TraceCheckUtils]: 79: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,694 INFO L273 TraceCheckUtils]: 80: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,694 INFO L273 TraceCheckUtils]: 81: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,694 INFO L273 TraceCheckUtils]: 82: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,694 INFO L273 TraceCheckUtils]: 83: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,694 INFO L273 TraceCheckUtils]: 84: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,694 INFO L273 TraceCheckUtils]: 85: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,695 INFO L273 TraceCheckUtils]: 86: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,695 INFO L273 TraceCheckUtils]: 87: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,695 INFO L273 TraceCheckUtils]: 88: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,695 INFO L273 TraceCheckUtils]: 89: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,695 INFO L273 TraceCheckUtils]: 90: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,695 INFO L273 TraceCheckUtils]: 91: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L273 TraceCheckUtils]: 92: Hoare triple {15429#false} assume !(~i~0 < 10000); {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L273 TraceCheckUtils]: 93: Hoare triple {15429#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L273 TraceCheckUtils]: 94: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L268 TraceCheckUtils]: 95: Hoare quadruple {15429#false} {15429#false} #73#return; {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L273 TraceCheckUtils]: 96: Hoare triple {15429#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L256 TraceCheckUtils]: 97: Hoare triple {15429#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L273 TraceCheckUtils]: 98: Hoare triple {15429#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L273 TraceCheckUtils]: 99: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,696 INFO L273 TraceCheckUtils]: 100: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 101: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 102: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 103: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 104: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 105: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 106: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 107: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 108: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 109: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,697 INFO L273 TraceCheckUtils]: 110: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 111: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 112: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 113: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 114: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 115: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 116: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 117: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 118: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,698 INFO L273 TraceCheckUtils]: 119: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 120: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 121: Hoare triple {15429#false} assume !(~i~0 < 10000); {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 122: Hoare triple {15429#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 123: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {15429#false} {15429#false} #75#return; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 125: Hoare triple {15429#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 126: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 127: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 128: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:33,699 INFO L273 TraceCheckUtils]: 129: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 130: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 131: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 132: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 133: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 134: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 135: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 136: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 137: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:33,700 INFO L273 TraceCheckUtils]: 138: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 139: Hoare triple {15429#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 140: Hoare triple {15429#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 141: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 142: Hoare triple {15429#false} assume !(~i~2 < 9999); {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 143: Hoare triple {15429#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L256 TraceCheckUtils]: 144: Hoare triple {15429#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 145: Hoare triple {15429#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 146: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 147: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,701 INFO L273 TraceCheckUtils]: 148: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 149: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 150: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 151: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 152: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 153: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 154: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 155: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 156: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,702 INFO L273 TraceCheckUtils]: 157: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 158: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 159: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 160: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 161: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 162: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 163: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 164: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 165: Hoare triple {15429#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 166: Hoare triple {15429#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {15429#false} is VALID [2018-11-14 18:56:33,703 INFO L273 TraceCheckUtils]: 167: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,704 INFO L273 TraceCheckUtils]: 168: Hoare triple {15429#false} assume !(~i~0 < 10000); {15429#false} is VALID [2018-11-14 18:56:33,704 INFO L273 TraceCheckUtils]: 169: Hoare triple {15429#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {15429#false} is VALID [2018-11-14 18:56:33,704 INFO L273 TraceCheckUtils]: 170: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 18:56:33,704 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {15429#false} {15429#false} #77#return; {15429#false} is VALID [2018-11-14 18:56:33,704 INFO L273 TraceCheckUtils]: 172: Hoare triple {15429#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {15429#false} is VALID [2018-11-14 18:56:33,704 INFO L273 TraceCheckUtils]: 173: Hoare triple {15429#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15429#false} is VALID [2018-11-14 18:56:33,704 INFO L273 TraceCheckUtils]: 174: Hoare triple {15429#false} assume !false; {15429#false} is VALID [2018-11-14 18:56:33,718 INFO L134 CoverageAnalysis]: Checked inductivity of 1424 backedges. 0 proven. 610 refuted. 0 times theorem prover too weak. 814 trivial. 0 not checked. [2018-11-14 18:56:33,738 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:33,738 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 23] total 24 [2018-11-14 18:56:33,739 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 175 [2018-11-14 18:56:33,740 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:33,740 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states. [2018-11-14 18:56:33,837 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:33,837 INFO L459 AbstractCegarLoop]: Interpolant automaton has 24 states [2018-11-14 18:56:33,838 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2018-11-14 18:56:33,838 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=276, Invalid=276, Unknown=0, NotChecked=0, Total=552 [2018-11-14 18:56:33,838 INFO L87 Difference]: Start difference. First operand 122 states and 126 transitions. Second operand 24 states. [2018-11-14 18:56:34,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:34,544 INFO L93 Difference]: Finished difference Result 180 states and 188 transitions. [2018-11-14 18:56:34,544 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2018-11-14 18:56:34,544 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 175 [2018-11-14 18:56:34,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:34,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-14 18:56:34,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 120 transitions. [2018-11-14 18:56:34,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-14 18:56:34,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 120 transitions. [2018-11-14 18:56:34,547 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 120 transitions. [2018-11-14 18:56:34,678 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:34,679 INFO L225 Difference]: With dead ends: 180 [2018-11-14 18:56:34,679 INFO L226 Difference]: Without dead ends: 126 [2018-11-14 18:56:34,680 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=276, Invalid=276, Unknown=0, NotChecked=0, Total=552 [2018-11-14 18:56:34,680 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2018-11-14 18:56:34,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 125. [2018-11-14 18:56:34,728 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:34,728 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand 125 states. [2018-11-14 18:56:34,728 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand 125 states. [2018-11-14 18:56:34,728 INFO L87 Difference]: Start difference. First operand 126 states. Second operand 125 states. [2018-11-14 18:56:34,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:34,731 INFO L93 Difference]: Finished difference Result 126 states and 130 transitions. [2018-11-14 18:56:34,731 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 130 transitions. [2018-11-14 18:56:34,732 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:34,732 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:34,732 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand 126 states. [2018-11-14 18:56:34,732 INFO L87 Difference]: Start difference. First operand 125 states. Second operand 126 states. [2018-11-14 18:56:34,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:34,734 INFO L93 Difference]: Finished difference Result 126 states and 130 transitions. [2018-11-14 18:56:34,734 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 130 transitions. [2018-11-14 18:56:34,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:34,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:34,735 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:34,735 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:34,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 125 states. [2018-11-14 18:56:34,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 129 transitions. [2018-11-14 18:56:34,738 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 129 transitions. Word has length 175 [2018-11-14 18:56:34,738 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:34,738 INFO L480 AbstractCegarLoop]: Abstraction has 125 states and 129 transitions. [2018-11-14 18:56:34,738 INFO L481 AbstractCegarLoop]: Interpolant automaton has 24 states. [2018-11-14 18:56:34,738 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 129 transitions. [2018-11-14 18:56:34,739 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 179 [2018-11-14 18:56:34,739 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:34,740 INFO L375 BasicCegarLoop]: trace histogram [24, 22, 21, 21, 21, 21, 6, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:34,740 INFO L423 AbstractCegarLoop]: === Iteration 25 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:34,740 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:34,740 INFO L82 PathProgramCache]: Analyzing trace with hash -325103012, now seen corresponding path program 21 times [2018-11-14 18:56:34,740 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:34,740 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:34,741 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:34,741 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:34,741 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:34,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:35,204 INFO L256 TraceCheckUtils]: 0: Hoare triple {16639#true} call ULTIMATE.init(); {16639#true} is VALID [2018-11-14 18:56:35,204 INFO L273 TraceCheckUtils]: 1: Hoare triple {16639#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {16639#true} is VALID [2018-11-14 18:56:35,205 INFO L273 TraceCheckUtils]: 2: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,205 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16639#true} {16639#true} #69#return; {16639#true} is VALID [2018-11-14 18:56:35,205 INFO L256 TraceCheckUtils]: 4: Hoare triple {16639#true} call #t~ret12 := main(); {16639#true} is VALID [2018-11-14 18:56:35,208 INFO L273 TraceCheckUtils]: 5: Hoare triple {16639#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {16641#(= main_~i~1 0)} is VALID [2018-11-14 18:56:35,208 INFO L273 TraceCheckUtils]: 6: Hoare triple {16641#(= main_~i~1 0)} assume true; {16641#(= main_~i~1 0)} is VALID [2018-11-14 18:56:35,208 INFO L273 TraceCheckUtils]: 7: Hoare triple {16641#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16641#(= main_~i~1 0)} is VALID [2018-11-14 18:56:35,209 INFO L273 TraceCheckUtils]: 8: Hoare triple {16641#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16642#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:35,209 INFO L273 TraceCheckUtils]: 9: Hoare triple {16642#(<= main_~i~1 1)} assume true; {16642#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:35,209 INFO L273 TraceCheckUtils]: 10: Hoare triple {16642#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16642#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:35,210 INFO L273 TraceCheckUtils]: 11: Hoare triple {16642#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16643#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:35,210 INFO L273 TraceCheckUtils]: 12: Hoare triple {16643#(<= main_~i~1 2)} assume true; {16643#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:35,211 INFO L273 TraceCheckUtils]: 13: Hoare triple {16643#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16643#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:35,211 INFO L273 TraceCheckUtils]: 14: Hoare triple {16643#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16644#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:35,211 INFO L273 TraceCheckUtils]: 15: Hoare triple {16644#(<= main_~i~1 3)} assume true; {16644#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:35,212 INFO L273 TraceCheckUtils]: 16: Hoare triple {16644#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16644#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:35,212 INFO L273 TraceCheckUtils]: 17: Hoare triple {16644#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16645#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:35,212 INFO L273 TraceCheckUtils]: 18: Hoare triple {16645#(<= main_~i~1 4)} assume true; {16645#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:35,213 INFO L273 TraceCheckUtils]: 19: Hoare triple {16645#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16645#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:35,213 INFO L273 TraceCheckUtils]: 20: Hoare triple {16645#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16646#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:35,214 INFO L273 TraceCheckUtils]: 21: Hoare triple {16646#(<= main_~i~1 5)} assume true; {16646#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:35,214 INFO L273 TraceCheckUtils]: 22: Hoare triple {16646#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16646#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:35,215 INFO L273 TraceCheckUtils]: 23: Hoare triple {16646#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16647#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:35,216 INFO L273 TraceCheckUtils]: 24: Hoare triple {16647#(<= main_~i~1 6)} assume true; {16647#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:35,216 INFO L273 TraceCheckUtils]: 25: Hoare triple {16647#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16647#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:35,217 INFO L273 TraceCheckUtils]: 26: Hoare triple {16647#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16648#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:35,217 INFO L273 TraceCheckUtils]: 27: Hoare triple {16648#(<= main_~i~1 7)} assume true; {16648#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:35,218 INFO L273 TraceCheckUtils]: 28: Hoare triple {16648#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16648#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:35,218 INFO L273 TraceCheckUtils]: 29: Hoare triple {16648#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16649#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:35,219 INFO L273 TraceCheckUtils]: 30: Hoare triple {16649#(<= main_~i~1 8)} assume true; {16649#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:35,219 INFO L273 TraceCheckUtils]: 31: Hoare triple {16649#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16649#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:35,220 INFO L273 TraceCheckUtils]: 32: Hoare triple {16649#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16650#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:35,220 INFO L273 TraceCheckUtils]: 33: Hoare triple {16650#(<= main_~i~1 9)} assume true; {16650#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:35,221 INFO L273 TraceCheckUtils]: 34: Hoare triple {16650#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16650#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:35,222 INFO L273 TraceCheckUtils]: 35: Hoare triple {16650#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16651#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:35,222 INFO L273 TraceCheckUtils]: 36: Hoare triple {16651#(<= main_~i~1 10)} assume true; {16651#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:35,223 INFO L273 TraceCheckUtils]: 37: Hoare triple {16651#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16651#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:35,223 INFO L273 TraceCheckUtils]: 38: Hoare triple {16651#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16652#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:35,224 INFO L273 TraceCheckUtils]: 39: Hoare triple {16652#(<= main_~i~1 11)} assume true; {16652#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:35,224 INFO L273 TraceCheckUtils]: 40: Hoare triple {16652#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16652#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:35,225 INFO L273 TraceCheckUtils]: 41: Hoare triple {16652#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16653#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:35,225 INFO L273 TraceCheckUtils]: 42: Hoare triple {16653#(<= main_~i~1 12)} assume true; {16653#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:35,226 INFO L273 TraceCheckUtils]: 43: Hoare triple {16653#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16653#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:35,226 INFO L273 TraceCheckUtils]: 44: Hoare triple {16653#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16654#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:35,227 INFO L273 TraceCheckUtils]: 45: Hoare triple {16654#(<= main_~i~1 13)} assume true; {16654#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:35,227 INFO L273 TraceCheckUtils]: 46: Hoare triple {16654#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16654#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:35,228 INFO L273 TraceCheckUtils]: 47: Hoare triple {16654#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16655#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:35,229 INFO L273 TraceCheckUtils]: 48: Hoare triple {16655#(<= main_~i~1 14)} assume true; {16655#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:35,229 INFO L273 TraceCheckUtils]: 49: Hoare triple {16655#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16655#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:35,230 INFO L273 TraceCheckUtils]: 50: Hoare triple {16655#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16656#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:35,230 INFO L273 TraceCheckUtils]: 51: Hoare triple {16656#(<= main_~i~1 15)} assume true; {16656#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:35,231 INFO L273 TraceCheckUtils]: 52: Hoare triple {16656#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16656#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:35,231 INFO L273 TraceCheckUtils]: 53: Hoare triple {16656#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16657#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:35,232 INFO L273 TraceCheckUtils]: 54: Hoare triple {16657#(<= main_~i~1 16)} assume true; {16657#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:35,232 INFO L273 TraceCheckUtils]: 55: Hoare triple {16657#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16657#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:35,233 INFO L273 TraceCheckUtils]: 56: Hoare triple {16657#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16658#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:35,233 INFO L273 TraceCheckUtils]: 57: Hoare triple {16658#(<= main_~i~1 17)} assume true; {16658#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:35,234 INFO L273 TraceCheckUtils]: 58: Hoare triple {16658#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16658#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:35,235 INFO L273 TraceCheckUtils]: 59: Hoare triple {16658#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16659#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:35,235 INFO L273 TraceCheckUtils]: 60: Hoare triple {16659#(<= main_~i~1 18)} assume true; {16659#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:35,236 INFO L273 TraceCheckUtils]: 61: Hoare triple {16659#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16659#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:35,236 INFO L273 TraceCheckUtils]: 62: Hoare triple {16659#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16660#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:35,237 INFO L273 TraceCheckUtils]: 63: Hoare triple {16660#(<= main_~i~1 19)} assume true; {16660#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:35,237 INFO L273 TraceCheckUtils]: 64: Hoare triple {16660#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16660#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:35,238 INFO L273 TraceCheckUtils]: 65: Hoare triple {16660#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16661#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:35,238 INFO L273 TraceCheckUtils]: 66: Hoare triple {16661#(<= main_~i~1 20)} assume true; {16661#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:35,239 INFO L273 TraceCheckUtils]: 67: Hoare triple {16661#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16661#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:35,240 INFO L273 TraceCheckUtils]: 68: Hoare triple {16661#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16662#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:35,240 INFO L273 TraceCheckUtils]: 69: Hoare triple {16662#(<= main_~i~1 21)} assume true; {16662#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:35,241 INFO L273 TraceCheckUtils]: 70: Hoare triple {16662#(<= main_~i~1 21)} assume !(~i~1 < 10000); {16640#false} is VALID [2018-11-14 18:56:35,241 INFO L256 TraceCheckUtils]: 71: Hoare triple {16640#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {16639#true} is VALID [2018-11-14 18:56:35,241 INFO L273 TraceCheckUtils]: 72: Hoare triple {16639#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16639#true} is VALID [2018-11-14 18:56:35,241 INFO L273 TraceCheckUtils]: 73: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,242 INFO L273 TraceCheckUtils]: 74: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,242 INFO L273 TraceCheckUtils]: 75: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,242 INFO L273 TraceCheckUtils]: 76: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,242 INFO L273 TraceCheckUtils]: 77: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,242 INFO L273 TraceCheckUtils]: 78: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,242 INFO L273 TraceCheckUtils]: 79: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,243 INFO L273 TraceCheckUtils]: 80: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,243 INFO L273 TraceCheckUtils]: 81: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,243 INFO L273 TraceCheckUtils]: 82: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,243 INFO L273 TraceCheckUtils]: 83: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,243 INFO L273 TraceCheckUtils]: 84: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,243 INFO L273 TraceCheckUtils]: 85: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,244 INFO L273 TraceCheckUtils]: 86: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,244 INFO L273 TraceCheckUtils]: 87: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,244 INFO L273 TraceCheckUtils]: 88: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,244 INFO L273 TraceCheckUtils]: 89: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,244 INFO L273 TraceCheckUtils]: 90: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,244 INFO L273 TraceCheckUtils]: 91: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,245 INFO L273 TraceCheckUtils]: 92: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,245 INFO L273 TraceCheckUtils]: 93: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,245 INFO L273 TraceCheckUtils]: 94: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,245 INFO L273 TraceCheckUtils]: 95: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 18:56:35,245 INFO L273 TraceCheckUtils]: 96: Hoare triple {16639#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {16639#true} is VALID [2018-11-14 18:56:35,245 INFO L273 TraceCheckUtils]: 97: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L268 TraceCheckUtils]: 98: Hoare quadruple {16639#true} {16640#false} #73#return; {16640#false} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 99: Hoare triple {16640#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {16640#false} is VALID [2018-11-14 18:56:35,246 INFO L256 TraceCheckUtils]: 100: Hoare triple {16640#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 101: Hoare triple {16639#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 102: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 103: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 104: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 105: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 106: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,246 INFO L273 TraceCheckUtils]: 107: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 108: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 109: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 110: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 111: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 112: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 113: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 114: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 115: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,247 INFO L273 TraceCheckUtils]: 116: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 117: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 118: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 119: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 120: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 121: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 122: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 123: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 124: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 125: Hoare triple {16639#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {16639#true} is VALID [2018-11-14 18:56:35,248 INFO L273 TraceCheckUtils]: 126: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,249 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {16639#true} {16640#false} #75#return; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 128: Hoare triple {16640#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 129: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 130: Hoare triple {16640#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 131: Hoare triple {16640#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 132: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 133: Hoare triple {16640#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 134: Hoare triple {16640#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16640#false} is VALID [2018-11-14 18:56:35,249 INFO L273 TraceCheckUtils]: 135: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 136: Hoare triple {16640#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 137: Hoare triple {16640#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 138: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 139: Hoare triple {16640#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 140: Hoare triple {16640#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 141: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 142: Hoare triple {16640#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {16640#false} is VALID [2018-11-14 18:56:35,250 INFO L273 TraceCheckUtils]: 143: Hoare triple {16640#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {16640#false} is VALID [2018-11-14 18:56:35,251 INFO L273 TraceCheckUtils]: 144: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,251 INFO L273 TraceCheckUtils]: 145: Hoare triple {16640#false} assume !(~i~2 < 9999); {16640#false} is VALID [2018-11-14 18:56:35,251 INFO L273 TraceCheckUtils]: 146: Hoare triple {16640#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {16640#false} is VALID [2018-11-14 18:56:35,251 INFO L256 TraceCheckUtils]: 147: Hoare triple {16640#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {16639#true} is VALID [2018-11-14 18:56:35,251 INFO L273 TraceCheckUtils]: 148: Hoare triple {16639#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16639#true} is VALID [2018-11-14 18:56:35,251 INFO L273 TraceCheckUtils]: 149: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,252 INFO L273 TraceCheckUtils]: 150: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,252 INFO L273 TraceCheckUtils]: 151: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,252 INFO L273 TraceCheckUtils]: 152: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,252 INFO L273 TraceCheckUtils]: 153: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,252 INFO L273 TraceCheckUtils]: 154: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,252 INFO L273 TraceCheckUtils]: 155: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,253 INFO L273 TraceCheckUtils]: 156: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,253 INFO L273 TraceCheckUtils]: 157: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,253 INFO L273 TraceCheckUtils]: 158: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,253 INFO L273 TraceCheckUtils]: 159: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,253 INFO L273 TraceCheckUtils]: 160: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,253 INFO L273 TraceCheckUtils]: 161: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,254 INFO L273 TraceCheckUtils]: 162: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,254 INFO L273 TraceCheckUtils]: 163: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,254 INFO L273 TraceCheckUtils]: 164: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,254 INFO L273 TraceCheckUtils]: 165: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,254 INFO L273 TraceCheckUtils]: 166: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,254 INFO L273 TraceCheckUtils]: 167: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,254 INFO L273 TraceCheckUtils]: 168: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,255 INFO L273 TraceCheckUtils]: 169: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,255 INFO L273 TraceCheckUtils]: 170: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,255 INFO L273 TraceCheckUtils]: 171: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 18:56:35,255 INFO L273 TraceCheckUtils]: 172: Hoare triple {16639#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {16639#true} is VALID [2018-11-14 18:56:35,255 INFO L273 TraceCheckUtils]: 173: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,255 INFO L268 TraceCheckUtils]: 174: Hoare quadruple {16639#true} {16640#false} #77#return; {16640#false} is VALID [2018-11-14 18:56:35,256 INFO L273 TraceCheckUtils]: 175: Hoare triple {16640#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {16640#false} is VALID [2018-11-14 18:56:35,256 INFO L273 TraceCheckUtils]: 176: Hoare triple {16640#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16640#false} is VALID [2018-11-14 18:56:35,256 INFO L273 TraceCheckUtils]: 177: Hoare triple {16640#false} assume !false; {16640#false} is VALID [2018-11-14 18:56:35,275 INFO L134 CoverageAnalysis]: Checked inductivity of 1486 backedges. 0 proven. 672 refuted. 0 times theorem prover too weak. 814 trivial. 0 not checked. [2018-11-14 18:56:35,276 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:35,276 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 23 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 23 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:35,289 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:56:35,357 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-14 18:56:35,358 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:35,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:35,411 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:35,645 INFO L256 TraceCheckUtils]: 0: Hoare triple {16639#true} call ULTIMATE.init(); {16639#true} is VALID [2018-11-14 18:56:35,645 INFO L273 TraceCheckUtils]: 1: Hoare triple {16639#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {16639#true} is VALID [2018-11-14 18:56:35,645 INFO L273 TraceCheckUtils]: 2: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,645 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16639#true} {16639#true} #69#return; {16639#true} is VALID [2018-11-14 18:56:35,646 INFO L256 TraceCheckUtils]: 4: Hoare triple {16639#true} call #t~ret12 := main(); {16639#true} is VALID [2018-11-14 18:56:35,646 INFO L273 TraceCheckUtils]: 5: Hoare triple {16639#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {16639#true} is VALID [2018-11-14 18:56:35,646 INFO L273 TraceCheckUtils]: 6: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,646 INFO L273 TraceCheckUtils]: 7: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,646 INFO L273 TraceCheckUtils]: 8: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,646 INFO L273 TraceCheckUtils]: 9: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,647 INFO L273 TraceCheckUtils]: 10: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,647 INFO L273 TraceCheckUtils]: 11: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,647 INFO L273 TraceCheckUtils]: 12: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,647 INFO L273 TraceCheckUtils]: 13: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,647 INFO L273 TraceCheckUtils]: 14: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,648 INFO L273 TraceCheckUtils]: 15: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,648 INFO L273 TraceCheckUtils]: 16: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,648 INFO L273 TraceCheckUtils]: 17: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,648 INFO L273 TraceCheckUtils]: 18: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,648 INFO L273 TraceCheckUtils]: 19: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,648 INFO L273 TraceCheckUtils]: 20: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,648 INFO L273 TraceCheckUtils]: 21: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 22: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 23: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 24: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 25: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 26: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 27: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 28: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 29: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 30: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,649 INFO L273 TraceCheckUtils]: 31: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 32: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 33: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 34: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 35: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 36: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 37: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 38: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 39: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,650 INFO L273 TraceCheckUtils]: 40: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 41: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 42: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 43: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 44: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 45: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 46: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 47: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 48: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 49: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,651 INFO L273 TraceCheckUtils]: 50: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 51: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 52: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 53: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 54: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 55: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 56: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 57: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 58: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,652 INFO L273 TraceCheckUtils]: 59: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 60: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 61: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 62: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 63: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 64: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 65: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 66: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 67: Hoare triple {16639#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {16639#true} is VALID [2018-11-14 18:56:35,653 INFO L273 TraceCheckUtils]: 68: Hoare triple {16639#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 69: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 70: Hoare triple {16639#true} assume !(~i~1 < 10000); {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L256 TraceCheckUtils]: 71: Hoare triple {16639#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 72: Hoare triple {16639#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 73: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 74: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 75: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 76: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,654 INFO L273 TraceCheckUtils]: 77: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 78: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 79: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 80: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 81: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 82: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 83: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 84: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 85: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 86: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,655 INFO L273 TraceCheckUtils]: 87: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 88: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 89: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 90: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 91: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 92: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 93: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 94: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 95: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 18:56:35,656 INFO L273 TraceCheckUtils]: 96: Hoare triple {16639#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 97: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L268 TraceCheckUtils]: 98: Hoare quadruple {16639#true} {16639#true} #73#return; {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 99: Hoare triple {16639#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L256 TraceCheckUtils]: 100: Hoare triple {16639#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 101: Hoare triple {16639#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 102: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 103: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 104: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 105: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,657 INFO L273 TraceCheckUtils]: 106: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 107: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 108: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 109: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 110: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 111: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 112: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 113: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 114: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,658 INFO L273 TraceCheckUtils]: 115: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 116: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 117: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 118: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 119: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 120: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 121: Hoare triple {16639#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 122: Hoare triple {16639#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 123: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 124: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 18:56:35,659 INFO L273 TraceCheckUtils]: 125: Hoare triple {16639#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {16639#true} is VALID [2018-11-14 18:56:35,660 INFO L273 TraceCheckUtils]: 126: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 18:56:35,660 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {16639#true} {16639#true} #75#return; {16639#true} is VALID [2018-11-14 18:56:35,660 INFO L273 TraceCheckUtils]: 128: Hoare triple {16639#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {17050#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:35,661 INFO L273 TraceCheckUtils]: 129: Hoare triple {17050#(<= main_~i~2 0)} assume true; {17050#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:35,661 INFO L273 TraceCheckUtils]: 130: Hoare triple {17050#(<= main_~i~2 0)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17050#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:35,661 INFO L273 TraceCheckUtils]: 131: Hoare triple {17050#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17060#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:35,662 INFO L273 TraceCheckUtils]: 132: Hoare triple {17060#(<= main_~i~2 1)} assume true; {17060#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:35,662 INFO L273 TraceCheckUtils]: 133: Hoare triple {17060#(<= main_~i~2 1)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17060#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:35,663 INFO L273 TraceCheckUtils]: 134: Hoare triple {17060#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17070#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:35,663 INFO L273 TraceCheckUtils]: 135: Hoare triple {17070#(<= main_~i~2 2)} assume true; {17070#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:35,663 INFO L273 TraceCheckUtils]: 136: Hoare triple {17070#(<= main_~i~2 2)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17070#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:35,664 INFO L273 TraceCheckUtils]: 137: Hoare triple {17070#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17080#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:35,664 INFO L273 TraceCheckUtils]: 138: Hoare triple {17080#(<= main_~i~2 3)} assume true; {17080#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:35,664 INFO L273 TraceCheckUtils]: 139: Hoare triple {17080#(<= main_~i~2 3)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17080#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:35,665 INFO L273 TraceCheckUtils]: 140: Hoare triple {17080#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17090#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:35,666 INFO L273 TraceCheckUtils]: 141: Hoare triple {17090#(<= main_~i~2 4)} assume true; {17090#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:35,666 INFO L273 TraceCheckUtils]: 142: Hoare triple {17090#(<= main_~i~2 4)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17090#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:35,667 INFO L273 TraceCheckUtils]: 143: Hoare triple {17090#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17100#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:35,667 INFO L273 TraceCheckUtils]: 144: Hoare triple {17100#(<= main_~i~2 5)} assume true; {17100#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:35,668 INFO L273 TraceCheckUtils]: 145: Hoare triple {17100#(<= main_~i~2 5)} assume !(~i~2 < 9999); {16640#false} is VALID [2018-11-14 18:56:35,668 INFO L273 TraceCheckUtils]: 146: Hoare triple {16640#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {16640#false} is VALID [2018-11-14 18:56:35,668 INFO L256 TraceCheckUtils]: 147: Hoare triple {16640#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {16640#false} is VALID [2018-11-14 18:56:35,669 INFO L273 TraceCheckUtils]: 148: Hoare triple {16640#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16640#false} is VALID [2018-11-14 18:56:35,669 INFO L273 TraceCheckUtils]: 149: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,669 INFO L273 TraceCheckUtils]: 150: Hoare triple {16640#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16640#false} is VALID [2018-11-14 18:56:35,669 INFO L273 TraceCheckUtils]: 151: Hoare triple {16640#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16640#false} is VALID [2018-11-14 18:56:35,669 INFO L273 TraceCheckUtils]: 152: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,670 INFO L273 TraceCheckUtils]: 153: Hoare triple {16640#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16640#false} is VALID [2018-11-14 18:56:35,670 INFO L273 TraceCheckUtils]: 154: Hoare triple {16640#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16640#false} is VALID [2018-11-14 18:56:35,670 INFO L273 TraceCheckUtils]: 155: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,670 INFO L273 TraceCheckUtils]: 156: Hoare triple {16640#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16640#false} is VALID [2018-11-14 18:56:35,670 INFO L273 TraceCheckUtils]: 157: Hoare triple {16640#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 158: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 159: Hoare triple {16640#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 160: Hoare triple {16640#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 161: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 162: Hoare triple {16640#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 163: Hoare triple {16640#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 164: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,671 INFO L273 TraceCheckUtils]: 165: Hoare triple {16640#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 166: Hoare triple {16640#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 167: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 168: Hoare triple {16640#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 169: Hoare triple {16640#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 170: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 171: Hoare triple {16640#false} assume !(~i~0 < 10000); {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 172: Hoare triple {16640#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {16640#false} is VALID [2018-11-14 18:56:35,672 INFO L273 TraceCheckUtils]: 173: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 18:56:35,673 INFO L268 TraceCheckUtils]: 174: Hoare quadruple {16640#false} {16640#false} #77#return; {16640#false} is VALID [2018-11-14 18:56:35,673 INFO L273 TraceCheckUtils]: 175: Hoare triple {16640#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {16640#false} is VALID [2018-11-14 18:56:35,673 INFO L273 TraceCheckUtils]: 176: Hoare triple {16640#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16640#false} is VALID [2018-11-14 18:56:35,673 INFO L273 TraceCheckUtils]: 177: Hoare triple {16640#false} assume !false; {16640#false} is VALID [2018-11-14 18:56:35,686 INFO L134 CoverageAnalysis]: Checked inductivity of 1486 backedges. 362 proven. 40 refuted. 0 times theorem prover too weak. 1084 trivial. 0 not checked. [2018-11-14 18:56:35,707 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:35,707 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 8] total 30 [2018-11-14 18:56:35,707 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 178 [2018-11-14 18:56:35,708 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:35,708 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2018-11-14 18:56:35,831 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:35,831 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2018-11-14 18:56:35,832 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2018-11-14 18:56:35,832 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=303, Invalid=567, Unknown=0, NotChecked=0, Total=870 [2018-11-14 18:56:35,833 INFO L87 Difference]: Start difference. First operand 125 states and 129 transitions. Second operand 30 states. [2018-11-14 18:56:37,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:37,450 INFO L93 Difference]: Finished difference Result 187 states and 196 transitions. [2018-11-14 18:56:37,450 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2018-11-14 18:56:37,450 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 178 [2018-11-14 18:56:37,450 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:37,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 18:56:37,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 142 transitions. [2018-11-14 18:56:37,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 18:56:37,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 142 transitions. [2018-11-14 18:56:37,452 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states and 142 transitions. [2018-11-14 18:56:37,584 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:37,587 INFO L225 Difference]: With dead ends: 187 [2018-11-14 18:56:37,587 INFO L226 Difference]: Without dead ends: 133 [2018-11-14 18:56:37,588 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 201 GetRequests, 173 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 126 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=303, Invalid=567, Unknown=0, NotChecked=0, Total=870 [2018-11-14 18:56:37,588 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 133 states. [2018-11-14 18:56:37,632 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 133 to 131. [2018-11-14 18:56:37,632 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:37,632 INFO L82 GeneralOperation]: Start isEquivalent. First operand 133 states. Second operand 131 states. [2018-11-14 18:56:37,632 INFO L74 IsIncluded]: Start isIncluded. First operand 133 states. Second operand 131 states. [2018-11-14 18:56:37,633 INFO L87 Difference]: Start difference. First operand 133 states. Second operand 131 states. [2018-11-14 18:56:37,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:37,634 INFO L93 Difference]: Finished difference Result 133 states and 137 transitions. [2018-11-14 18:56:37,634 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 137 transitions. [2018-11-14 18:56:37,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:37,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:37,635 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand 133 states. [2018-11-14 18:56:37,635 INFO L87 Difference]: Start difference. First operand 131 states. Second operand 133 states. [2018-11-14 18:56:37,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:37,637 INFO L93 Difference]: Finished difference Result 133 states and 137 transitions. [2018-11-14 18:56:37,637 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 137 transitions. [2018-11-14 18:56:37,638 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:37,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:37,638 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:37,638 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:37,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 131 states. [2018-11-14 18:56:37,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 135 transitions. [2018-11-14 18:56:37,640 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 135 transitions. Word has length 178 [2018-11-14 18:56:37,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:37,640 INFO L480 AbstractCegarLoop]: Abstraction has 131 states and 135 transitions. [2018-11-14 18:56:37,640 INFO L481 AbstractCegarLoop]: Interpolant automaton has 30 states. [2018-11-14 18:56:37,640 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 135 transitions. [2018-11-14 18:56:37,641 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 185 [2018-11-14 18:56:37,641 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:37,641 INFO L375 BasicCegarLoop]: trace histogram [24, 23, 22, 22, 21, 21, 7, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:37,641 INFO L423 AbstractCegarLoop]: === Iteration 26 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:37,642 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:37,642 INFO L82 PathProgramCache]: Analyzing trace with hash 1320716308, now seen corresponding path program 22 times [2018-11-14 18:56:37,642 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:37,642 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:37,643 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:37,643 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:37,643 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:37,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:38,623 INFO L256 TraceCheckUtils]: 0: Hoare triple {17896#true} call ULTIMATE.init(); {17896#true} is VALID [2018-11-14 18:56:38,623 INFO L273 TraceCheckUtils]: 1: Hoare triple {17896#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {17896#true} is VALID [2018-11-14 18:56:38,623 INFO L273 TraceCheckUtils]: 2: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,623 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17896#true} {17896#true} #69#return; {17896#true} is VALID [2018-11-14 18:56:38,624 INFO L256 TraceCheckUtils]: 4: Hoare triple {17896#true} call #t~ret12 := main(); {17896#true} is VALID [2018-11-14 18:56:38,624 INFO L273 TraceCheckUtils]: 5: Hoare triple {17896#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {17898#(= main_~i~1 0)} is VALID [2018-11-14 18:56:38,625 INFO L273 TraceCheckUtils]: 6: Hoare triple {17898#(= main_~i~1 0)} assume true; {17898#(= main_~i~1 0)} is VALID [2018-11-14 18:56:38,625 INFO L273 TraceCheckUtils]: 7: Hoare triple {17898#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17898#(= main_~i~1 0)} is VALID [2018-11-14 18:56:38,625 INFO L273 TraceCheckUtils]: 8: Hoare triple {17898#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:38,626 INFO L273 TraceCheckUtils]: 9: Hoare triple {17899#(<= main_~i~1 1)} assume true; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:38,626 INFO L273 TraceCheckUtils]: 10: Hoare triple {17899#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:38,626 INFO L273 TraceCheckUtils]: 11: Hoare triple {17899#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:38,627 INFO L273 TraceCheckUtils]: 12: Hoare triple {17900#(<= main_~i~1 2)} assume true; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:38,627 INFO L273 TraceCheckUtils]: 13: Hoare triple {17900#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:38,627 INFO L273 TraceCheckUtils]: 14: Hoare triple {17900#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:38,628 INFO L273 TraceCheckUtils]: 15: Hoare triple {17901#(<= main_~i~1 3)} assume true; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:38,628 INFO L273 TraceCheckUtils]: 16: Hoare triple {17901#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:38,629 INFO L273 TraceCheckUtils]: 17: Hoare triple {17901#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:38,630 INFO L273 TraceCheckUtils]: 18: Hoare triple {17902#(<= main_~i~1 4)} assume true; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:38,630 INFO L273 TraceCheckUtils]: 19: Hoare triple {17902#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:38,631 INFO L273 TraceCheckUtils]: 20: Hoare triple {17902#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:38,631 INFO L273 TraceCheckUtils]: 21: Hoare triple {17903#(<= main_~i~1 5)} assume true; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:38,632 INFO L273 TraceCheckUtils]: 22: Hoare triple {17903#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:38,632 INFO L273 TraceCheckUtils]: 23: Hoare triple {17903#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:38,633 INFO L273 TraceCheckUtils]: 24: Hoare triple {17904#(<= main_~i~1 6)} assume true; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:38,633 INFO L273 TraceCheckUtils]: 25: Hoare triple {17904#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:38,634 INFO L273 TraceCheckUtils]: 26: Hoare triple {17904#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:38,635 INFO L273 TraceCheckUtils]: 27: Hoare triple {17905#(<= main_~i~1 7)} assume true; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:38,635 INFO L273 TraceCheckUtils]: 28: Hoare triple {17905#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:38,636 INFO L273 TraceCheckUtils]: 29: Hoare triple {17905#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:38,636 INFO L273 TraceCheckUtils]: 30: Hoare triple {17906#(<= main_~i~1 8)} assume true; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:38,637 INFO L273 TraceCheckUtils]: 31: Hoare triple {17906#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:38,638 INFO L273 TraceCheckUtils]: 32: Hoare triple {17906#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:38,638 INFO L273 TraceCheckUtils]: 33: Hoare triple {17907#(<= main_~i~1 9)} assume true; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:38,639 INFO L273 TraceCheckUtils]: 34: Hoare triple {17907#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:38,639 INFO L273 TraceCheckUtils]: 35: Hoare triple {17907#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:38,640 INFO L273 TraceCheckUtils]: 36: Hoare triple {17908#(<= main_~i~1 10)} assume true; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:38,640 INFO L273 TraceCheckUtils]: 37: Hoare triple {17908#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:38,641 INFO L273 TraceCheckUtils]: 38: Hoare triple {17908#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:38,642 INFO L273 TraceCheckUtils]: 39: Hoare triple {17909#(<= main_~i~1 11)} assume true; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:38,642 INFO L273 TraceCheckUtils]: 40: Hoare triple {17909#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:38,643 INFO L273 TraceCheckUtils]: 41: Hoare triple {17909#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:38,643 INFO L273 TraceCheckUtils]: 42: Hoare triple {17910#(<= main_~i~1 12)} assume true; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:38,644 INFO L273 TraceCheckUtils]: 43: Hoare triple {17910#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:38,645 INFO L273 TraceCheckUtils]: 44: Hoare triple {17910#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:38,645 INFO L273 TraceCheckUtils]: 45: Hoare triple {17911#(<= main_~i~1 13)} assume true; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:38,646 INFO L273 TraceCheckUtils]: 46: Hoare triple {17911#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:38,646 INFO L273 TraceCheckUtils]: 47: Hoare triple {17911#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:38,647 INFO L273 TraceCheckUtils]: 48: Hoare triple {17912#(<= main_~i~1 14)} assume true; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:38,647 INFO L273 TraceCheckUtils]: 49: Hoare triple {17912#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:38,648 INFO L273 TraceCheckUtils]: 50: Hoare triple {17912#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:38,649 INFO L273 TraceCheckUtils]: 51: Hoare triple {17913#(<= main_~i~1 15)} assume true; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:38,649 INFO L273 TraceCheckUtils]: 52: Hoare triple {17913#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:38,650 INFO L273 TraceCheckUtils]: 53: Hoare triple {17913#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:38,650 INFO L273 TraceCheckUtils]: 54: Hoare triple {17914#(<= main_~i~1 16)} assume true; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:38,651 INFO L273 TraceCheckUtils]: 55: Hoare triple {17914#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:38,652 INFO L273 TraceCheckUtils]: 56: Hoare triple {17914#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:38,652 INFO L273 TraceCheckUtils]: 57: Hoare triple {17915#(<= main_~i~1 17)} assume true; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:38,653 INFO L273 TraceCheckUtils]: 58: Hoare triple {17915#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:38,653 INFO L273 TraceCheckUtils]: 59: Hoare triple {17915#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:38,654 INFO L273 TraceCheckUtils]: 60: Hoare triple {17916#(<= main_~i~1 18)} assume true; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:38,654 INFO L273 TraceCheckUtils]: 61: Hoare triple {17916#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:38,655 INFO L273 TraceCheckUtils]: 62: Hoare triple {17916#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:38,656 INFO L273 TraceCheckUtils]: 63: Hoare triple {17917#(<= main_~i~1 19)} assume true; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:38,656 INFO L273 TraceCheckUtils]: 64: Hoare triple {17917#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:38,657 INFO L273 TraceCheckUtils]: 65: Hoare triple {17917#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:38,657 INFO L273 TraceCheckUtils]: 66: Hoare triple {17918#(<= main_~i~1 20)} assume true; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:38,658 INFO L273 TraceCheckUtils]: 67: Hoare triple {17918#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:38,659 INFO L273 TraceCheckUtils]: 68: Hoare triple {17918#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:38,659 INFO L273 TraceCheckUtils]: 69: Hoare triple {17919#(<= main_~i~1 21)} assume true; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:38,660 INFO L273 TraceCheckUtils]: 70: Hoare triple {17919#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:38,660 INFO L273 TraceCheckUtils]: 71: Hoare triple {17919#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17920#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:38,661 INFO L273 TraceCheckUtils]: 72: Hoare triple {17920#(<= main_~i~1 22)} assume true; {17920#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:38,661 INFO L273 TraceCheckUtils]: 73: Hoare triple {17920#(<= main_~i~1 22)} assume !(~i~1 < 10000); {17897#false} is VALID [2018-11-14 18:56:38,662 INFO L256 TraceCheckUtils]: 74: Hoare triple {17897#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {17896#true} is VALID [2018-11-14 18:56:38,662 INFO L273 TraceCheckUtils]: 75: Hoare triple {17896#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17896#true} is VALID [2018-11-14 18:56:38,662 INFO L273 TraceCheckUtils]: 76: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,662 INFO L273 TraceCheckUtils]: 77: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,662 INFO L273 TraceCheckUtils]: 78: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,663 INFO L273 TraceCheckUtils]: 79: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,663 INFO L273 TraceCheckUtils]: 80: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,663 INFO L273 TraceCheckUtils]: 81: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,663 INFO L273 TraceCheckUtils]: 82: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,663 INFO L273 TraceCheckUtils]: 83: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,664 INFO L273 TraceCheckUtils]: 84: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,664 INFO L273 TraceCheckUtils]: 85: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,664 INFO L273 TraceCheckUtils]: 86: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,664 INFO L273 TraceCheckUtils]: 87: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,664 INFO L273 TraceCheckUtils]: 88: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,664 INFO L273 TraceCheckUtils]: 89: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 90: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 91: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 92: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 93: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 94: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 95: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 96: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,665 INFO L273 TraceCheckUtils]: 97: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,666 INFO L273 TraceCheckUtils]: 98: Hoare triple {17896#true} assume !(~i~0 < 10000); {17896#true} is VALID [2018-11-14 18:56:38,666 INFO L273 TraceCheckUtils]: 99: Hoare triple {17896#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {17896#true} is VALID [2018-11-14 18:56:38,666 INFO L273 TraceCheckUtils]: 100: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,666 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {17896#true} {17897#false} #73#return; {17897#false} is VALID [2018-11-14 18:56:38,666 INFO L273 TraceCheckUtils]: 102: Hoare triple {17897#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {17897#false} is VALID [2018-11-14 18:56:38,666 INFO L256 TraceCheckUtils]: 103: Hoare triple {17897#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {17896#true} is VALID [2018-11-14 18:56:38,666 INFO L273 TraceCheckUtils]: 104: Hoare triple {17896#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17896#true} is VALID [2018-11-14 18:56:38,666 INFO L273 TraceCheckUtils]: 105: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,666 INFO L273 TraceCheckUtils]: 106: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 107: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 108: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 109: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 110: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 111: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 112: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 113: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 114: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 115: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,667 INFO L273 TraceCheckUtils]: 116: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 117: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 118: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 119: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 120: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 121: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 122: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 123: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 124: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,668 INFO L273 TraceCheckUtils]: 125: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 126: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 127: Hoare triple {17896#true} assume !(~i~0 < 10000); {17896#true} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 128: Hoare triple {17896#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {17896#true} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 129: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,669 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {17896#true} {17897#false} #75#return; {17897#false} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 131: Hoare triple {17897#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {17897#false} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 132: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 133: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 134: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:38,669 INFO L273 TraceCheckUtils]: 135: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 136: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 137: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 138: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 139: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 140: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 141: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 142: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 143: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:38,670 INFO L273 TraceCheckUtils]: 144: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 145: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 146: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 147: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 148: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 149: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 150: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 151: Hoare triple {17897#false} assume !(~i~2 < 9999); {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L273 TraceCheckUtils]: 152: Hoare triple {17897#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {17897#false} is VALID [2018-11-14 18:56:38,671 INFO L256 TraceCheckUtils]: 153: Hoare triple {17897#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 154: Hoare triple {17896#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 155: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 156: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 157: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 158: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 159: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 160: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 161: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 162: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,672 INFO L273 TraceCheckUtils]: 163: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 164: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 165: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 166: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 167: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 168: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 169: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 170: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 171: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,673 INFO L273 TraceCheckUtils]: 172: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 173: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 174: Hoare triple {17896#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 175: Hoare triple {17896#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 176: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 177: Hoare triple {17896#true} assume !(~i~0 < 10000); {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 178: Hoare triple {17896#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 179: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:38,674 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {17896#true} {17897#false} #77#return; {17897#false} is VALID [2018-11-14 18:56:38,674 INFO L273 TraceCheckUtils]: 181: Hoare triple {17897#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {17897#false} is VALID [2018-11-14 18:56:38,675 INFO L273 TraceCheckUtils]: 182: Hoare triple {17897#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {17897#false} is VALID [2018-11-14 18:56:38,675 INFO L273 TraceCheckUtils]: 183: Hoare triple {17897#false} assume !false; {17897#false} is VALID [2018-11-14 18:56:38,690 INFO L134 CoverageAnalysis]: Checked inductivity of 1568 backedges. 0 proven. 737 refuted. 0 times theorem prover too weak. 831 trivial. 0 not checked. [2018-11-14 18:56:38,690 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:38,690 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 24 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 24 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:38,698 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:56:38,767 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:56:38,767 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:38,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:38,801 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:39,039 INFO L256 TraceCheckUtils]: 0: Hoare triple {17896#true} call ULTIMATE.init(); {17896#true} is VALID [2018-11-14 18:56:39,039 INFO L273 TraceCheckUtils]: 1: Hoare triple {17896#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {17896#true} is VALID [2018-11-14 18:56:39,039 INFO L273 TraceCheckUtils]: 2: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 18:56:39,040 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17896#true} {17896#true} #69#return; {17896#true} is VALID [2018-11-14 18:56:39,040 INFO L256 TraceCheckUtils]: 4: Hoare triple {17896#true} call #t~ret12 := main(); {17896#true} is VALID [2018-11-14 18:56:39,041 INFO L273 TraceCheckUtils]: 5: Hoare triple {17896#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {17939#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:39,041 INFO L273 TraceCheckUtils]: 6: Hoare triple {17939#(<= main_~i~1 0)} assume true; {17939#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:39,041 INFO L273 TraceCheckUtils]: 7: Hoare triple {17939#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17939#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:39,042 INFO L273 TraceCheckUtils]: 8: Hoare triple {17939#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:39,042 INFO L273 TraceCheckUtils]: 9: Hoare triple {17899#(<= main_~i~1 1)} assume true; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:39,042 INFO L273 TraceCheckUtils]: 10: Hoare triple {17899#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:39,043 INFO L273 TraceCheckUtils]: 11: Hoare triple {17899#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:39,043 INFO L273 TraceCheckUtils]: 12: Hoare triple {17900#(<= main_~i~1 2)} assume true; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:39,043 INFO L273 TraceCheckUtils]: 13: Hoare triple {17900#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:39,044 INFO L273 TraceCheckUtils]: 14: Hoare triple {17900#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:39,044 INFO L273 TraceCheckUtils]: 15: Hoare triple {17901#(<= main_~i~1 3)} assume true; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:39,045 INFO L273 TraceCheckUtils]: 16: Hoare triple {17901#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:39,045 INFO L273 TraceCheckUtils]: 17: Hoare triple {17901#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:39,046 INFO L273 TraceCheckUtils]: 18: Hoare triple {17902#(<= main_~i~1 4)} assume true; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:39,046 INFO L273 TraceCheckUtils]: 19: Hoare triple {17902#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:39,047 INFO L273 TraceCheckUtils]: 20: Hoare triple {17902#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:39,048 INFO L273 TraceCheckUtils]: 21: Hoare triple {17903#(<= main_~i~1 5)} assume true; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:39,048 INFO L273 TraceCheckUtils]: 22: Hoare triple {17903#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:39,049 INFO L273 TraceCheckUtils]: 23: Hoare triple {17903#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:39,049 INFO L273 TraceCheckUtils]: 24: Hoare triple {17904#(<= main_~i~1 6)} assume true; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:39,050 INFO L273 TraceCheckUtils]: 25: Hoare triple {17904#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:39,050 INFO L273 TraceCheckUtils]: 26: Hoare triple {17904#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:39,051 INFO L273 TraceCheckUtils]: 27: Hoare triple {17905#(<= main_~i~1 7)} assume true; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:39,051 INFO L273 TraceCheckUtils]: 28: Hoare triple {17905#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:39,052 INFO L273 TraceCheckUtils]: 29: Hoare triple {17905#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:39,053 INFO L273 TraceCheckUtils]: 30: Hoare triple {17906#(<= main_~i~1 8)} assume true; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:39,053 INFO L273 TraceCheckUtils]: 31: Hoare triple {17906#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:39,054 INFO L273 TraceCheckUtils]: 32: Hoare triple {17906#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:39,054 INFO L273 TraceCheckUtils]: 33: Hoare triple {17907#(<= main_~i~1 9)} assume true; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:39,055 INFO L273 TraceCheckUtils]: 34: Hoare triple {17907#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:39,055 INFO L273 TraceCheckUtils]: 35: Hoare triple {17907#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:39,056 INFO L273 TraceCheckUtils]: 36: Hoare triple {17908#(<= main_~i~1 10)} assume true; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:39,056 INFO L273 TraceCheckUtils]: 37: Hoare triple {17908#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:39,057 INFO L273 TraceCheckUtils]: 38: Hoare triple {17908#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:39,058 INFO L273 TraceCheckUtils]: 39: Hoare triple {17909#(<= main_~i~1 11)} assume true; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:39,058 INFO L273 TraceCheckUtils]: 40: Hoare triple {17909#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:39,059 INFO L273 TraceCheckUtils]: 41: Hoare triple {17909#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:39,059 INFO L273 TraceCheckUtils]: 42: Hoare triple {17910#(<= main_~i~1 12)} assume true; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:39,060 INFO L273 TraceCheckUtils]: 43: Hoare triple {17910#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:39,060 INFO L273 TraceCheckUtils]: 44: Hoare triple {17910#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:39,061 INFO L273 TraceCheckUtils]: 45: Hoare triple {17911#(<= main_~i~1 13)} assume true; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:39,061 INFO L273 TraceCheckUtils]: 46: Hoare triple {17911#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:39,062 INFO L273 TraceCheckUtils]: 47: Hoare triple {17911#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:39,063 INFO L273 TraceCheckUtils]: 48: Hoare triple {17912#(<= main_~i~1 14)} assume true; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:39,063 INFO L273 TraceCheckUtils]: 49: Hoare triple {17912#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:39,064 INFO L273 TraceCheckUtils]: 50: Hoare triple {17912#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:39,064 INFO L273 TraceCheckUtils]: 51: Hoare triple {17913#(<= main_~i~1 15)} assume true; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:39,065 INFO L273 TraceCheckUtils]: 52: Hoare triple {17913#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:39,065 INFO L273 TraceCheckUtils]: 53: Hoare triple {17913#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:39,066 INFO L273 TraceCheckUtils]: 54: Hoare triple {17914#(<= main_~i~1 16)} assume true; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:39,066 INFO L273 TraceCheckUtils]: 55: Hoare triple {17914#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:39,067 INFO L273 TraceCheckUtils]: 56: Hoare triple {17914#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:39,068 INFO L273 TraceCheckUtils]: 57: Hoare triple {17915#(<= main_~i~1 17)} assume true; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:39,068 INFO L273 TraceCheckUtils]: 58: Hoare triple {17915#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:39,069 INFO L273 TraceCheckUtils]: 59: Hoare triple {17915#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:39,069 INFO L273 TraceCheckUtils]: 60: Hoare triple {17916#(<= main_~i~1 18)} assume true; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:39,070 INFO L273 TraceCheckUtils]: 61: Hoare triple {17916#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:39,070 INFO L273 TraceCheckUtils]: 62: Hoare triple {17916#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:39,071 INFO L273 TraceCheckUtils]: 63: Hoare triple {17917#(<= main_~i~1 19)} assume true; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:39,071 INFO L273 TraceCheckUtils]: 64: Hoare triple {17917#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:39,072 INFO L273 TraceCheckUtils]: 65: Hoare triple {17917#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:39,072 INFO L273 TraceCheckUtils]: 66: Hoare triple {17918#(<= main_~i~1 20)} assume true; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:39,073 INFO L273 TraceCheckUtils]: 67: Hoare triple {17918#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:39,074 INFO L273 TraceCheckUtils]: 68: Hoare triple {17918#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:39,074 INFO L273 TraceCheckUtils]: 69: Hoare triple {17919#(<= main_~i~1 21)} assume true; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:39,075 INFO L273 TraceCheckUtils]: 70: Hoare triple {17919#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:39,075 INFO L273 TraceCheckUtils]: 71: Hoare triple {17919#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {17920#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:39,076 INFO L273 TraceCheckUtils]: 72: Hoare triple {17920#(<= main_~i~1 22)} assume true; {17920#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:39,076 INFO L273 TraceCheckUtils]: 73: Hoare triple {17920#(<= main_~i~1 22)} assume !(~i~1 < 10000); {17897#false} is VALID [2018-11-14 18:56:39,077 INFO L256 TraceCheckUtils]: 74: Hoare triple {17897#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {17897#false} is VALID [2018-11-14 18:56:39,077 INFO L273 TraceCheckUtils]: 75: Hoare triple {17897#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17897#false} is VALID [2018-11-14 18:56:39,077 INFO L273 TraceCheckUtils]: 76: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,077 INFO L273 TraceCheckUtils]: 77: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,077 INFO L273 TraceCheckUtils]: 78: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,077 INFO L273 TraceCheckUtils]: 79: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,078 INFO L273 TraceCheckUtils]: 80: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,078 INFO L273 TraceCheckUtils]: 81: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,078 INFO L273 TraceCheckUtils]: 82: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,078 INFO L273 TraceCheckUtils]: 83: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,078 INFO L273 TraceCheckUtils]: 84: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,078 INFO L273 TraceCheckUtils]: 85: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,079 INFO L273 TraceCheckUtils]: 86: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,079 INFO L273 TraceCheckUtils]: 87: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,079 INFO L273 TraceCheckUtils]: 88: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,079 INFO L273 TraceCheckUtils]: 89: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,079 INFO L273 TraceCheckUtils]: 90: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,079 INFO L273 TraceCheckUtils]: 91: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,080 INFO L273 TraceCheckUtils]: 92: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,080 INFO L273 TraceCheckUtils]: 93: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,080 INFO L273 TraceCheckUtils]: 94: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,080 INFO L273 TraceCheckUtils]: 95: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,080 INFO L273 TraceCheckUtils]: 96: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,080 INFO L273 TraceCheckUtils]: 97: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,081 INFO L273 TraceCheckUtils]: 98: Hoare triple {17897#false} assume !(~i~0 < 10000); {17897#false} is VALID [2018-11-14 18:56:39,081 INFO L273 TraceCheckUtils]: 99: Hoare triple {17897#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {17897#false} is VALID [2018-11-14 18:56:39,081 INFO L273 TraceCheckUtils]: 100: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,081 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {17897#false} {17897#false} #73#return; {17897#false} is VALID [2018-11-14 18:56:39,081 INFO L273 TraceCheckUtils]: 102: Hoare triple {17897#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {17897#false} is VALID [2018-11-14 18:56:39,081 INFO L256 TraceCheckUtils]: 103: Hoare triple {17897#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 104: Hoare triple {17897#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 105: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 106: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 107: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 108: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 109: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 110: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 111: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,082 INFO L273 TraceCheckUtils]: 112: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 113: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 114: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 115: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 116: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 117: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 118: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 119: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 120: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,083 INFO L273 TraceCheckUtils]: 121: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 122: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 123: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 124: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 125: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 126: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 127: Hoare triple {17897#false} assume !(~i~0 < 10000); {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 128: Hoare triple {17897#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 129: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {17897#false} {17897#false} #75#return; {17897#false} is VALID [2018-11-14 18:56:39,084 INFO L273 TraceCheckUtils]: 131: Hoare triple {17897#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 132: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 133: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 134: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 135: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 136: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 137: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 138: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 139: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:39,085 INFO L273 TraceCheckUtils]: 140: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 141: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 142: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 143: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 144: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 145: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 146: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 147: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 148: Hoare triple {17897#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {17897#false} is VALID [2018-11-14 18:56:39,086 INFO L273 TraceCheckUtils]: 149: Hoare triple {17897#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 150: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 151: Hoare triple {17897#false} assume !(~i~2 < 9999); {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 152: Hoare triple {17897#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L256 TraceCheckUtils]: 153: Hoare triple {17897#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 154: Hoare triple {17897#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 155: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 156: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 157: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 158: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,087 INFO L273 TraceCheckUtils]: 159: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 160: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 161: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 162: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 163: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 164: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 165: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 166: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 167: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,088 INFO L273 TraceCheckUtils]: 168: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 169: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 170: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 171: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 172: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 173: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 174: Hoare triple {17897#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 175: Hoare triple {17897#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 176: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 177: Hoare triple {17897#false} assume !(~i~0 < 10000); {17897#false} is VALID [2018-11-14 18:56:39,089 INFO L273 TraceCheckUtils]: 178: Hoare triple {17897#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {17897#false} is VALID [2018-11-14 18:56:39,090 INFO L273 TraceCheckUtils]: 179: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 18:56:39,090 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {17897#false} {17897#false} #77#return; {17897#false} is VALID [2018-11-14 18:56:39,090 INFO L273 TraceCheckUtils]: 181: Hoare triple {17897#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {17897#false} is VALID [2018-11-14 18:56:39,090 INFO L273 TraceCheckUtils]: 182: Hoare triple {17897#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {17897#false} is VALID [2018-11-14 18:56:39,090 INFO L273 TraceCheckUtils]: 183: Hoare triple {17897#false} assume !false; {17897#false} is VALID [2018-11-14 18:56:39,111 INFO L134 CoverageAnalysis]: Checked inductivity of 1568 backedges. 0 proven. 737 refuted. 0 times theorem prover too weak. 831 trivial. 0 not checked. [2018-11-14 18:56:39,141 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:39,141 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 25] total 26 [2018-11-14 18:56:39,142 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 184 [2018-11-14 18:56:39,142 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:39,143 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-14 18:56:39,269 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-14 18:56:39,269 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-14 18:56:39,270 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-14 18:56:39,270 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=325, Invalid=325, Unknown=0, NotChecked=0, Total=650 [2018-11-14 18:56:39,270 INFO L87 Difference]: Start difference. First operand 131 states and 135 transitions. Second operand 26 states. [2018-11-14 18:56:39,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:39,488 INFO L93 Difference]: Finished difference Result 192 states and 200 transitions. [2018-11-14 18:56:39,488 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-14 18:56:39,488 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 184 [2018-11-14 18:56:39,488 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:39,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 18:56:39,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 126 transitions. [2018-11-14 18:56:39,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 18:56:39,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 126 transitions. [2018-11-14 18:56:39,490 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 126 transitions. [2018-11-14 18:56:39,602 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:39,605 INFO L225 Difference]: With dead ends: 192 [2018-11-14 18:56:39,605 INFO L226 Difference]: Without dead ends: 135 [2018-11-14 18:56:39,606 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 184 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=325, Invalid=325, Unknown=0, NotChecked=0, Total=650 [2018-11-14 18:56:39,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2018-11-14 18:56:39,637 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 134. [2018-11-14 18:56:39,637 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:39,638 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand 134 states. [2018-11-14 18:56:39,638 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand 134 states. [2018-11-14 18:56:39,638 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 134 states. [2018-11-14 18:56:39,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:39,640 INFO L93 Difference]: Finished difference Result 135 states and 139 transitions. [2018-11-14 18:56:39,640 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 139 transitions. [2018-11-14 18:56:39,640 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:39,640 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:39,641 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand 135 states. [2018-11-14 18:56:39,641 INFO L87 Difference]: Start difference. First operand 134 states. Second operand 135 states. [2018-11-14 18:56:39,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:39,643 INFO L93 Difference]: Finished difference Result 135 states and 139 transitions. [2018-11-14 18:56:39,644 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 139 transitions. [2018-11-14 18:56:39,644 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:39,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:39,644 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:39,644 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:39,645 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 134 states. [2018-11-14 18:56:39,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 134 states to 134 states and 138 transitions. [2018-11-14 18:56:39,647 INFO L78 Accepts]: Start accepts. Automaton has 134 states and 138 transitions. Word has length 184 [2018-11-14 18:56:39,647 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:39,647 INFO L480 AbstractCegarLoop]: Abstraction has 134 states and 138 transitions. [2018-11-14 18:56:39,648 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-14 18:56:39,648 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 138 transitions. [2018-11-14 18:56:39,649 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 188 [2018-11-14 18:56:39,649 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:39,649 INFO L375 BasicCegarLoop]: trace histogram [24, 24, 23, 23, 21, 21, 7, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:39,649 INFO L423 AbstractCegarLoop]: === Iteration 27 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:39,650 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:39,650 INFO L82 PathProgramCache]: Analyzing trace with hash -880440289, now seen corresponding path program 23 times [2018-11-14 18:56:39,650 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:39,650 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:39,651 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:39,651 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:39,651 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:39,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:40,261 INFO L256 TraceCheckUtils]: 0: Hoare triple {19182#true} call ULTIMATE.init(); {19182#true} is VALID [2018-11-14 18:56:40,261 INFO L273 TraceCheckUtils]: 1: Hoare triple {19182#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {19182#true} is VALID [2018-11-14 18:56:40,262 INFO L273 TraceCheckUtils]: 2: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,262 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19182#true} {19182#true} #69#return; {19182#true} is VALID [2018-11-14 18:56:40,262 INFO L256 TraceCheckUtils]: 4: Hoare triple {19182#true} call #t~ret12 := main(); {19182#true} is VALID [2018-11-14 18:56:40,263 INFO L273 TraceCheckUtils]: 5: Hoare triple {19182#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {19184#(= main_~i~1 0)} is VALID [2018-11-14 18:56:40,263 INFO L273 TraceCheckUtils]: 6: Hoare triple {19184#(= main_~i~1 0)} assume true; {19184#(= main_~i~1 0)} is VALID [2018-11-14 18:56:40,264 INFO L273 TraceCheckUtils]: 7: Hoare triple {19184#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19184#(= main_~i~1 0)} is VALID [2018-11-14 18:56:40,264 INFO L273 TraceCheckUtils]: 8: Hoare triple {19184#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19185#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:40,265 INFO L273 TraceCheckUtils]: 9: Hoare triple {19185#(<= main_~i~1 1)} assume true; {19185#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:40,265 INFO L273 TraceCheckUtils]: 10: Hoare triple {19185#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19185#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:40,265 INFO L273 TraceCheckUtils]: 11: Hoare triple {19185#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19186#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:40,266 INFO L273 TraceCheckUtils]: 12: Hoare triple {19186#(<= main_~i~1 2)} assume true; {19186#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:40,266 INFO L273 TraceCheckUtils]: 13: Hoare triple {19186#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19186#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:40,267 INFO L273 TraceCheckUtils]: 14: Hoare triple {19186#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19187#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:40,267 INFO L273 TraceCheckUtils]: 15: Hoare triple {19187#(<= main_~i~1 3)} assume true; {19187#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:40,268 INFO L273 TraceCheckUtils]: 16: Hoare triple {19187#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19187#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:40,268 INFO L273 TraceCheckUtils]: 17: Hoare triple {19187#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19188#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:40,269 INFO L273 TraceCheckUtils]: 18: Hoare triple {19188#(<= main_~i~1 4)} assume true; {19188#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:40,269 INFO L273 TraceCheckUtils]: 19: Hoare triple {19188#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19188#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:40,270 INFO L273 TraceCheckUtils]: 20: Hoare triple {19188#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19189#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:40,271 INFO L273 TraceCheckUtils]: 21: Hoare triple {19189#(<= main_~i~1 5)} assume true; {19189#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:40,273 INFO L273 TraceCheckUtils]: 22: Hoare triple {19189#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19189#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:40,274 INFO L273 TraceCheckUtils]: 23: Hoare triple {19189#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19190#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:40,274 INFO L273 TraceCheckUtils]: 24: Hoare triple {19190#(<= main_~i~1 6)} assume true; {19190#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:40,275 INFO L273 TraceCheckUtils]: 25: Hoare triple {19190#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19190#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:40,275 INFO L273 TraceCheckUtils]: 26: Hoare triple {19190#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19191#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:40,275 INFO L273 TraceCheckUtils]: 27: Hoare triple {19191#(<= main_~i~1 7)} assume true; {19191#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:40,276 INFO L273 TraceCheckUtils]: 28: Hoare triple {19191#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19191#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:40,276 INFO L273 TraceCheckUtils]: 29: Hoare triple {19191#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19192#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:40,276 INFO L273 TraceCheckUtils]: 30: Hoare triple {19192#(<= main_~i~1 8)} assume true; {19192#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:40,277 INFO L273 TraceCheckUtils]: 31: Hoare triple {19192#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19192#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:40,277 INFO L273 TraceCheckUtils]: 32: Hoare triple {19192#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19193#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:40,278 INFO L273 TraceCheckUtils]: 33: Hoare triple {19193#(<= main_~i~1 9)} assume true; {19193#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:40,278 INFO L273 TraceCheckUtils]: 34: Hoare triple {19193#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19193#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:40,279 INFO L273 TraceCheckUtils]: 35: Hoare triple {19193#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19194#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:40,279 INFO L273 TraceCheckUtils]: 36: Hoare triple {19194#(<= main_~i~1 10)} assume true; {19194#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:40,280 INFO L273 TraceCheckUtils]: 37: Hoare triple {19194#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19194#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:40,280 INFO L273 TraceCheckUtils]: 38: Hoare triple {19194#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19195#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:40,281 INFO L273 TraceCheckUtils]: 39: Hoare triple {19195#(<= main_~i~1 11)} assume true; {19195#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:40,281 INFO L273 TraceCheckUtils]: 40: Hoare triple {19195#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19195#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:40,282 INFO L273 TraceCheckUtils]: 41: Hoare triple {19195#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19196#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:40,283 INFO L273 TraceCheckUtils]: 42: Hoare triple {19196#(<= main_~i~1 12)} assume true; {19196#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:40,283 INFO L273 TraceCheckUtils]: 43: Hoare triple {19196#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19196#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:40,284 INFO L273 TraceCheckUtils]: 44: Hoare triple {19196#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19197#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:40,284 INFO L273 TraceCheckUtils]: 45: Hoare triple {19197#(<= main_~i~1 13)} assume true; {19197#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:40,285 INFO L273 TraceCheckUtils]: 46: Hoare triple {19197#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19197#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:40,286 INFO L273 TraceCheckUtils]: 47: Hoare triple {19197#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19198#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:40,286 INFO L273 TraceCheckUtils]: 48: Hoare triple {19198#(<= main_~i~1 14)} assume true; {19198#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:40,287 INFO L273 TraceCheckUtils]: 49: Hoare triple {19198#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19198#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:40,287 INFO L273 TraceCheckUtils]: 50: Hoare triple {19198#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19199#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:40,288 INFO L273 TraceCheckUtils]: 51: Hoare triple {19199#(<= main_~i~1 15)} assume true; {19199#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:40,288 INFO L273 TraceCheckUtils]: 52: Hoare triple {19199#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19199#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:40,289 INFO L273 TraceCheckUtils]: 53: Hoare triple {19199#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19200#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:40,289 INFO L273 TraceCheckUtils]: 54: Hoare triple {19200#(<= main_~i~1 16)} assume true; {19200#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:40,290 INFO L273 TraceCheckUtils]: 55: Hoare triple {19200#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19200#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:40,291 INFO L273 TraceCheckUtils]: 56: Hoare triple {19200#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19201#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:40,291 INFO L273 TraceCheckUtils]: 57: Hoare triple {19201#(<= main_~i~1 17)} assume true; {19201#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:40,292 INFO L273 TraceCheckUtils]: 58: Hoare triple {19201#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19201#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:40,292 INFO L273 TraceCheckUtils]: 59: Hoare triple {19201#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19202#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:40,293 INFO L273 TraceCheckUtils]: 60: Hoare triple {19202#(<= main_~i~1 18)} assume true; {19202#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:40,293 INFO L273 TraceCheckUtils]: 61: Hoare triple {19202#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19202#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:40,294 INFO L273 TraceCheckUtils]: 62: Hoare triple {19202#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19203#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:40,295 INFO L273 TraceCheckUtils]: 63: Hoare triple {19203#(<= main_~i~1 19)} assume true; {19203#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:40,295 INFO L273 TraceCheckUtils]: 64: Hoare triple {19203#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19203#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:40,296 INFO L273 TraceCheckUtils]: 65: Hoare triple {19203#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19204#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:40,297 INFO L273 TraceCheckUtils]: 66: Hoare triple {19204#(<= main_~i~1 20)} assume true; {19204#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:40,297 INFO L273 TraceCheckUtils]: 67: Hoare triple {19204#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19204#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:40,298 INFO L273 TraceCheckUtils]: 68: Hoare triple {19204#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19205#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:40,298 INFO L273 TraceCheckUtils]: 69: Hoare triple {19205#(<= main_~i~1 21)} assume true; {19205#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:40,299 INFO L273 TraceCheckUtils]: 70: Hoare triple {19205#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19205#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:40,299 INFO L273 TraceCheckUtils]: 71: Hoare triple {19205#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19206#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:40,300 INFO L273 TraceCheckUtils]: 72: Hoare triple {19206#(<= main_~i~1 22)} assume true; {19206#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:40,300 INFO L273 TraceCheckUtils]: 73: Hoare triple {19206#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19206#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:40,301 INFO L273 TraceCheckUtils]: 74: Hoare triple {19206#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19207#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:40,302 INFO L273 TraceCheckUtils]: 75: Hoare triple {19207#(<= main_~i~1 23)} assume true; {19207#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:40,302 INFO L273 TraceCheckUtils]: 76: Hoare triple {19207#(<= main_~i~1 23)} assume !(~i~1 < 10000); {19183#false} is VALID [2018-11-14 18:56:40,303 INFO L256 TraceCheckUtils]: 77: Hoare triple {19183#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {19182#true} is VALID [2018-11-14 18:56:40,303 INFO L273 TraceCheckUtils]: 78: Hoare triple {19182#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19182#true} is VALID [2018-11-14 18:56:40,303 INFO L273 TraceCheckUtils]: 79: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,303 INFO L273 TraceCheckUtils]: 80: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,303 INFO L273 TraceCheckUtils]: 81: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,304 INFO L273 TraceCheckUtils]: 82: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,304 INFO L273 TraceCheckUtils]: 83: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,304 INFO L273 TraceCheckUtils]: 84: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,304 INFO L273 TraceCheckUtils]: 85: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,304 INFO L273 TraceCheckUtils]: 86: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,305 INFO L273 TraceCheckUtils]: 87: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,305 INFO L273 TraceCheckUtils]: 88: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,305 INFO L273 TraceCheckUtils]: 89: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,305 INFO L273 TraceCheckUtils]: 90: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,305 INFO L273 TraceCheckUtils]: 91: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,305 INFO L273 TraceCheckUtils]: 92: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 93: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 94: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 95: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 96: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 97: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 98: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 99: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,306 INFO L273 TraceCheckUtils]: 100: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,307 INFO L273 TraceCheckUtils]: 101: Hoare triple {19182#true} assume !(~i~0 < 10000); {19182#true} is VALID [2018-11-14 18:56:40,307 INFO L273 TraceCheckUtils]: 102: Hoare triple {19182#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {19182#true} is VALID [2018-11-14 18:56:40,307 INFO L273 TraceCheckUtils]: 103: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,307 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {19182#true} {19183#false} #73#return; {19183#false} is VALID [2018-11-14 18:56:40,307 INFO L273 TraceCheckUtils]: 105: Hoare triple {19183#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {19183#false} is VALID [2018-11-14 18:56:40,307 INFO L256 TraceCheckUtils]: 106: Hoare triple {19183#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {19182#true} is VALID [2018-11-14 18:56:40,307 INFO L273 TraceCheckUtils]: 107: Hoare triple {19182#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19182#true} is VALID [2018-11-14 18:56:40,307 INFO L273 TraceCheckUtils]: 108: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,307 INFO L273 TraceCheckUtils]: 109: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 110: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 111: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 112: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 113: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 114: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 115: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 116: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 117: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 118: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,308 INFO L273 TraceCheckUtils]: 119: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 120: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 121: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 122: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 123: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 124: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 125: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 126: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 127: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 128: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,309 INFO L273 TraceCheckUtils]: 129: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 130: Hoare triple {19182#true} assume !(~i~0 < 10000); {19182#true} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 131: Hoare triple {19182#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {19182#true} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 132: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,310 INFO L268 TraceCheckUtils]: 133: Hoare quadruple {19182#true} {19183#false} #75#return; {19183#false} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 134: Hoare triple {19183#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {19183#false} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 135: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 136: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 137: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:40,310 INFO L273 TraceCheckUtils]: 138: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 139: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 140: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 141: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 142: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 143: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 144: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 145: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 146: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 147: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:40,311 INFO L273 TraceCheckUtils]: 148: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:40,312 INFO L273 TraceCheckUtils]: 149: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:40,312 INFO L273 TraceCheckUtils]: 150: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:40,312 INFO L273 TraceCheckUtils]: 151: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:40,312 INFO L273 TraceCheckUtils]: 152: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:40,312 INFO L273 TraceCheckUtils]: 153: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:40,312 INFO L273 TraceCheckUtils]: 154: Hoare triple {19183#false} assume !(~i~2 < 9999); {19183#false} is VALID [2018-11-14 18:56:40,312 INFO L273 TraceCheckUtils]: 155: Hoare triple {19183#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {19183#false} is VALID [2018-11-14 18:56:40,313 INFO L256 TraceCheckUtils]: 156: Hoare triple {19183#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {19182#true} is VALID [2018-11-14 18:56:40,313 INFO L273 TraceCheckUtils]: 157: Hoare triple {19182#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19182#true} is VALID [2018-11-14 18:56:40,313 INFO L273 TraceCheckUtils]: 158: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,313 INFO L273 TraceCheckUtils]: 159: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,313 INFO L273 TraceCheckUtils]: 160: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,313 INFO L273 TraceCheckUtils]: 161: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,313 INFO L273 TraceCheckUtils]: 162: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 163: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 164: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 165: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 166: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 167: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 168: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 169: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 170: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 171: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,314 INFO L273 TraceCheckUtils]: 172: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 173: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 174: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 175: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 176: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 177: Hoare triple {19182#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 178: Hoare triple {19182#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 179: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 180: Hoare triple {19182#true} assume !(~i~0 < 10000); {19182#true} is VALID [2018-11-14 18:56:40,315 INFO L273 TraceCheckUtils]: 181: Hoare triple {19182#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {19182#true} is VALID [2018-11-14 18:56:40,316 INFO L273 TraceCheckUtils]: 182: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:40,316 INFO L268 TraceCheckUtils]: 183: Hoare quadruple {19182#true} {19183#false} #77#return; {19183#false} is VALID [2018-11-14 18:56:40,316 INFO L273 TraceCheckUtils]: 184: Hoare triple {19183#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {19183#false} is VALID [2018-11-14 18:56:40,316 INFO L273 TraceCheckUtils]: 185: Hoare triple {19183#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19183#false} is VALID [2018-11-14 18:56:40,316 INFO L273 TraceCheckUtils]: 186: Hoare triple {19183#false} assume !false; {19183#false} is VALID [2018-11-14 18:56:40,337 INFO L134 CoverageAnalysis]: Checked inductivity of 1636 backedges. 0 proven. 805 refuted. 0 times theorem prover too weak. 831 trivial. 0 not checked. [2018-11-14 18:56:40,337 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:40,337 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 25 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 25 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:40,346 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 18:56:43,123 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 23 check-sat command(s) [2018-11-14 18:56:43,124 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:43,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:43,180 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:43,845 INFO L256 TraceCheckUtils]: 0: Hoare triple {19182#true} call ULTIMATE.init(); {19182#true} is VALID [2018-11-14 18:56:43,845 INFO L273 TraceCheckUtils]: 1: Hoare triple {19182#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {19182#true} is VALID [2018-11-14 18:56:43,846 INFO L273 TraceCheckUtils]: 2: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,846 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19182#true} {19182#true} #69#return; {19182#true} is VALID [2018-11-14 18:56:43,846 INFO L256 TraceCheckUtils]: 4: Hoare triple {19182#true} call #t~ret12 := main(); {19182#true} is VALID [2018-11-14 18:56:43,846 INFO L273 TraceCheckUtils]: 5: Hoare triple {19182#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {19182#true} is VALID [2018-11-14 18:56:43,846 INFO L273 TraceCheckUtils]: 6: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,846 INFO L273 TraceCheckUtils]: 7: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,847 INFO L273 TraceCheckUtils]: 8: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,847 INFO L273 TraceCheckUtils]: 9: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,847 INFO L273 TraceCheckUtils]: 10: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,847 INFO L273 TraceCheckUtils]: 11: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,847 INFO L273 TraceCheckUtils]: 12: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 13: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 14: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 15: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 16: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 17: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 18: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 19: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 20: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 21: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,848 INFO L273 TraceCheckUtils]: 22: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 23: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 24: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 25: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 26: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 27: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 28: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 29: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 30: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,849 INFO L273 TraceCheckUtils]: 31: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 32: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 33: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 34: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 35: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 36: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 37: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 38: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 39: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 40: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,850 INFO L273 TraceCheckUtils]: 41: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 42: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 43: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 44: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 45: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 46: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 47: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 48: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 49: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 50: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,851 INFO L273 TraceCheckUtils]: 51: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 52: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 53: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 54: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 55: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 56: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 57: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 58: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 59: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 60: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,852 INFO L273 TraceCheckUtils]: 61: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 62: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 63: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 64: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 65: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 66: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 67: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 68: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,853 INFO L273 TraceCheckUtils]: 69: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,854 INFO L273 TraceCheckUtils]: 70: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,854 INFO L273 TraceCheckUtils]: 71: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,854 INFO L273 TraceCheckUtils]: 72: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,854 INFO L273 TraceCheckUtils]: 73: Hoare triple {19182#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {19182#true} is VALID [2018-11-14 18:56:43,854 INFO L273 TraceCheckUtils]: 74: Hoare triple {19182#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {19182#true} is VALID [2018-11-14 18:56:43,854 INFO L273 TraceCheckUtils]: 75: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 18:56:43,855 INFO L273 TraceCheckUtils]: 76: Hoare triple {19182#true} assume !(~i~1 < 10000); {19182#true} is VALID [2018-11-14 18:56:43,855 INFO L256 TraceCheckUtils]: 77: Hoare triple {19182#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {19182#true} is VALID [2018-11-14 18:56:43,874 INFO L273 TraceCheckUtils]: 78: Hoare triple {19182#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19445#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:43,889 INFO L273 TraceCheckUtils]: 79: Hoare triple {19445#(<= mapavg_~i~0 0)} assume true; {19445#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:43,897 INFO L273 TraceCheckUtils]: 80: Hoare triple {19445#(<= mapavg_~i~0 0)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19445#(<= mapavg_~i~0 0)} is VALID [2018-11-14 18:56:43,904 INFO L273 TraceCheckUtils]: 81: Hoare triple {19445#(<= mapavg_~i~0 0)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19455#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:43,904 INFO L273 TraceCheckUtils]: 82: Hoare triple {19455#(<= mapavg_~i~0 1)} assume true; {19455#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:43,905 INFO L273 TraceCheckUtils]: 83: Hoare triple {19455#(<= mapavg_~i~0 1)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19455#(<= mapavg_~i~0 1)} is VALID [2018-11-14 18:56:43,905 INFO L273 TraceCheckUtils]: 84: Hoare triple {19455#(<= mapavg_~i~0 1)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19465#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:43,905 INFO L273 TraceCheckUtils]: 85: Hoare triple {19465#(<= mapavg_~i~0 2)} assume true; {19465#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:43,906 INFO L273 TraceCheckUtils]: 86: Hoare triple {19465#(<= mapavg_~i~0 2)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19465#(<= mapavg_~i~0 2)} is VALID [2018-11-14 18:56:43,906 INFO L273 TraceCheckUtils]: 87: Hoare triple {19465#(<= mapavg_~i~0 2)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19475#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:43,906 INFO L273 TraceCheckUtils]: 88: Hoare triple {19475#(<= mapavg_~i~0 3)} assume true; {19475#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:43,907 INFO L273 TraceCheckUtils]: 89: Hoare triple {19475#(<= mapavg_~i~0 3)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19475#(<= mapavg_~i~0 3)} is VALID [2018-11-14 18:56:43,907 INFO L273 TraceCheckUtils]: 90: Hoare triple {19475#(<= mapavg_~i~0 3)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19485#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:43,907 INFO L273 TraceCheckUtils]: 91: Hoare triple {19485#(<= mapavg_~i~0 4)} assume true; {19485#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:43,908 INFO L273 TraceCheckUtils]: 92: Hoare triple {19485#(<= mapavg_~i~0 4)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19485#(<= mapavg_~i~0 4)} is VALID [2018-11-14 18:56:43,908 INFO L273 TraceCheckUtils]: 93: Hoare triple {19485#(<= mapavg_~i~0 4)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19495#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:43,909 INFO L273 TraceCheckUtils]: 94: Hoare triple {19495#(<= mapavg_~i~0 5)} assume true; {19495#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:43,909 INFO L273 TraceCheckUtils]: 95: Hoare triple {19495#(<= mapavg_~i~0 5)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19495#(<= mapavg_~i~0 5)} is VALID [2018-11-14 18:56:43,910 INFO L273 TraceCheckUtils]: 96: Hoare triple {19495#(<= mapavg_~i~0 5)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19505#(<= mapavg_~i~0 6)} is VALID [2018-11-14 18:56:43,911 INFO L273 TraceCheckUtils]: 97: Hoare triple {19505#(<= mapavg_~i~0 6)} assume true; {19505#(<= mapavg_~i~0 6)} is VALID [2018-11-14 18:56:43,911 INFO L273 TraceCheckUtils]: 98: Hoare triple {19505#(<= mapavg_~i~0 6)} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19505#(<= mapavg_~i~0 6)} is VALID [2018-11-14 18:56:43,912 INFO L273 TraceCheckUtils]: 99: Hoare triple {19505#(<= mapavg_~i~0 6)} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19515#(<= mapavg_~i~0 7)} is VALID [2018-11-14 18:56:43,912 INFO L273 TraceCheckUtils]: 100: Hoare triple {19515#(<= mapavg_~i~0 7)} assume true; {19515#(<= mapavg_~i~0 7)} is VALID [2018-11-14 18:56:43,913 INFO L273 TraceCheckUtils]: 101: Hoare triple {19515#(<= mapavg_~i~0 7)} assume !(~i~0 < 10000); {19183#false} is VALID [2018-11-14 18:56:43,913 INFO L273 TraceCheckUtils]: 102: Hoare triple {19183#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {19183#false} is VALID [2018-11-14 18:56:43,913 INFO L273 TraceCheckUtils]: 103: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,914 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {19183#false} {19182#true} #73#return; {19183#false} is VALID [2018-11-14 18:56:43,914 INFO L273 TraceCheckUtils]: 105: Hoare triple {19183#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {19183#false} is VALID [2018-11-14 18:56:43,914 INFO L256 TraceCheckUtils]: 106: Hoare triple {19183#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {19183#false} is VALID [2018-11-14 18:56:43,914 INFO L273 TraceCheckUtils]: 107: Hoare triple {19183#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19183#false} is VALID [2018-11-14 18:56:43,914 INFO L273 TraceCheckUtils]: 108: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,914 INFO L273 TraceCheckUtils]: 109: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,916 INFO L273 TraceCheckUtils]: 110: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,916 INFO L273 TraceCheckUtils]: 111: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,916 INFO L273 TraceCheckUtils]: 112: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,916 INFO L273 TraceCheckUtils]: 113: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,916 INFO L273 TraceCheckUtils]: 114: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,917 INFO L273 TraceCheckUtils]: 115: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,917 INFO L273 TraceCheckUtils]: 116: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,917 INFO L273 TraceCheckUtils]: 117: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,917 INFO L273 TraceCheckUtils]: 118: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,917 INFO L273 TraceCheckUtils]: 119: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,917 INFO L273 TraceCheckUtils]: 120: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,917 INFO L273 TraceCheckUtils]: 121: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,918 INFO L273 TraceCheckUtils]: 122: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,918 INFO L273 TraceCheckUtils]: 123: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,918 INFO L273 TraceCheckUtils]: 124: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,918 INFO L273 TraceCheckUtils]: 125: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,918 INFO L273 TraceCheckUtils]: 126: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,918 INFO L273 TraceCheckUtils]: 127: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,918 INFO L273 TraceCheckUtils]: 128: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,919 INFO L273 TraceCheckUtils]: 129: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,919 INFO L273 TraceCheckUtils]: 130: Hoare triple {19183#false} assume !(~i~0 < 10000); {19183#false} is VALID [2018-11-14 18:56:43,919 INFO L273 TraceCheckUtils]: 131: Hoare triple {19183#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {19183#false} is VALID [2018-11-14 18:56:43,919 INFO L273 TraceCheckUtils]: 132: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,919 INFO L268 TraceCheckUtils]: 133: Hoare quadruple {19183#false} {19183#false} #75#return; {19183#false} is VALID [2018-11-14 18:56:43,919 INFO L273 TraceCheckUtils]: 134: Hoare triple {19183#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {19183#false} is VALID [2018-11-14 18:56:43,919 INFO L273 TraceCheckUtils]: 135: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,920 INFO L273 TraceCheckUtils]: 136: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:43,920 INFO L273 TraceCheckUtils]: 137: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:43,920 INFO L273 TraceCheckUtils]: 138: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,920 INFO L273 TraceCheckUtils]: 139: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:43,920 INFO L273 TraceCheckUtils]: 140: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:43,920 INFO L273 TraceCheckUtils]: 141: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,920 INFO L273 TraceCheckUtils]: 142: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:43,921 INFO L273 TraceCheckUtils]: 143: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:43,921 INFO L273 TraceCheckUtils]: 144: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,921 INFO L273 TraceCheckUtils]: 145: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:43,921 INFO L273 TraceCheckUtils]: 146: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:43,921 INFO L273 TraceCheckUtils]: 147: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,921 INFO L273 TraceCheckUtils]: 148: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:43,921 INFO L273 TraceCheckUtils]: 149: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:43,922 INFO L273 TraceCheckUtils]: 150: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,922 INFO L273 TraceCheckUtils]: 151: Hoare triple {19183#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {19183#false} is VALID [2018-11-14 18:56:43,922 INFO L273 TraceCheckUtils]: 152: Hoare triple {19183#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {19183#false} is VALID [2018-11-14 18:56:43,922 INFO L273 TraceCheckUtils]: 153: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,922 INFO L273 TraceCheckUtils]: 154: Hoare triple {19183#false} assume !(~i~2 < 9999); {19183#false} is VALID [2018-11-14 18:56:43,922 INFO L273 TraceCheckUtils]: 155: Hoare triple {19183#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {19183#false} is VALID [2018-11-14 18:56:43,922 INFO L256 TraceCheckUtils]: 156: Hoare triple {19183#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {19183#false} is VALID [2018-11-14 18:56:43,923 INFO L273 TraceCheckUtils]: 157: Hoare triple {19183#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19183#false} is VALID [2018-11-14 18:56:43,923 INFO L273 TraceCheckUtils]: 158: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,923 INFO L273 TraceCheckUtils]: 159: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,923 INFO L273 TraceCheckUtils]: 160: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,923 INFO L273 TraceCheckUtils]: 161: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,923 INFO L273 TraceCheckUtils]: 162: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,923 INFO L273 TraceCheckUtils]: 163: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,924 INFO L273 TraceCheckUtils]: 164: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,924 INFO L273 TraceCheckUtils]: 165: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,924 INFO L273 TraceCheckUtils]: 166: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,924 INFO L273 TraceCheckUtils]: 167: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,924 INFO L273 TraceCheckUtils]: 168: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,924 INFO L273 TraceCheckUtils]: 169: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,925 INFO L273 TraceCheckUtils]: 170: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,925 INFO L273 TraceCheckUtils]: 171: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,925 INFO L273 TraceCheckUtils]: 172: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,925 INFO L273 TraceCheckUtils]: 173: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,925 INFO L273 TraceCheckUtils]: 174: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,925 INFO L273 TraceCheckUtils]: 175: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,925 INFO L273 TraceCheckUtils]: 176: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,926 INFO L273 TraceCheckUtils]: 177: Hoare triple {19183#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {19183#false} is VALID [2018-11-14 18:56:43,926 INFO L273 TraceCheckUtils]: 178: Hoare triple {19183#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {19183#false} is VALID [2018-11-14 18:56:43,926 INFO L273 TraceCheckUtils]: 179: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,926 INFO L273 TraceCheckUtils]: 180: Hoare triple {19183#false} assume !(~i~0 < 10000); {19183#false} is VALID [2018-11-14 18:56:43,926 INFO L273 TraceCheckUtils]: 181: Hoare triple {19183#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {19183#false} is VALID [2018-11-14 18:56:43,926 INFO L273 TraceCheckUtils]: 182: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 18:56:43,926 INFO L268 TraceCheckUtils]: 183: Hoare quadruple {19183#false} {19183#false} #77#return; {19183#false} is VALID [2018-11-14 18:56:43,927 INFO L273 TraceCheckUtils]: 184: Hoare triple {19183#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {19183#false} is VALID [2018-11-14 18:56:43,927 INFO L273 TraceCheckUtils]: 185: Hoare triple {19183#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19183#false} is VALID [2018-11-14 18:56:43,927 INFO L273 TraceCheckUtils]: 186: Hoare triple {19183#false} assume !false; {19183#false} is VALID [2018-11-14 18:56:43,942 INFO L134 CoverageAnalysis]: Checked inductivity of 1636 backedges. 356 proven. 77 refuted. 0 times theorem prover too weak. 1203 trivial. 0 not checked. [2018-11-14 18:56:43,964 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:43,965 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [26, 10] total 34 [2018-11-14 18:56:43,965 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 187 [2018-11-14 18:56:43,966 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:43,966 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states. [2018-11-14 18:56:44,237 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:44,238 INFO L459 AbstractCegarLoop]: Interpolant automaton has 34 states [2018-11-14 18:56:44,238 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2018-11-14 18:56:44,239 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=369, Invalid=753, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 18:56:44,239 INFO L87 Difference]: Start difference. First operand 134 states and 138 transitions. Second operand 34 states. [2018-11-14 18:56:45,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:45,288 INFO L93 Difference]: Finished difference Result 199 states and 211 transitions. [2018-11-14 18:56:45,288 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2018-11-14 18:56:45,288 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 187 [2018-11-14 18:56:45,289 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:45,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 18:56:45,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 157 transitions. [2018-11-14 18:56:45,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 18:56:45,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 157 transitions. [2018-11-14 18:56:45,291 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states and 157 transitions. [2018-11-14 18:56:45,478 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-14 18:56:45,481 INFO L225 Difference]: With dead ends: 199 [2018-11-14 18:56:45,481 INFO L226 Difference]: Without dead ends: 142 [2018-11-14 18:56:45,483 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 180 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 184 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=369, Invalid=753, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 18:56:45,483 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2018-11-14 18:56:45,523 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 140. [2018-11-14 18:56:45,523 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:45,524 INFO L82 GeneralOperation]: Start isEquivalent. First operand 142 states. Second operand 140 states. [2018-11-14 18:56:45,524 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand 140 states. [2018-11-14 18:56:45,524 INFO L87 Difference]: Start difference. First operand 142 states. Second operand 140 states. [2018-11-14 18:56:45,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:45,527 INFO L93 Difference]: Finished difference Result 142 states and 146 transitions. [2018-11-14 18:56:45,527 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 146 transitions. [2018-11-14 18:56:45,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:45,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:45,528 INFO L74 IsIncluded]: Start isIncluded. First operand 140 states. Second operand 142 states. [2018-11-14 18:56:45,528 INFO L87 Difference]: Start difference. First operand 140 states. Second operand 142 states. [2018-11-14 18:56:45,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:45,530 INFO L93 Difference]: Finished difference Result 142 states and 146 transitions. [2018-11-14 18:56:45,530 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 146 transitions. [2018-11-14 18:56:45,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:45,530 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:45,531 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:45,531 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:45,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 140 states. [2018-11-14 18:56:45,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 144 transitions. [2018-11-14 18:56:45,533 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 144 transitions. Word has length 187 [2018-11-14 18:56:45,533 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:45,533 INFO L480 AbstractCegarLoop]: Abstraction has 140 states and 144 transitions. [2018-11-14 18:56:45,533 INFO L481 AbstractCegarLoop]: Interpolant automaton has 34 states. [2018-11-14 18:56:45,534 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 144 transitions. [2018-11-14 18:56:45,535 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 200 [2018-11-14 18:56:45,535 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:45,535 INFO L375 BasicCegarLoop]: trace histogram [27, 25, 24, 24, 24, 24, 7, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:45,535 INFO L423 AbstractCegarLoop]: === Iteration 28 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:45,535 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:45,535 INFO L82 PathProgramCache]: Analyzing trace with hash 1909295699, now seen corresponding path program 24 times [2018-11-14 18:56:45,536 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:45,536 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:45,536 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:45,536 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:45,536 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:45,563 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:46,160 INFO L256 TraceCheckUtils]: 0: Hoare triple {20516#true} call ULTIMATE.init(); {20516#true} is VALID [2018-11-14 18:56:46,160 INFO L273 TraceCheckUtils]: 1: Hoare triple {20516#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {20516#true} is VALID [2018-11-14 18:56:46,160 INFO L273 TraceCheckUtils]: 2: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,161 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20516#true} {20516#true} #69#return; {20516#true} is VALID [2018-11-14 18:56:46,161 INFO L256 TraceCheckUtils]: 4: Hoare triple {20516#true} call #t~ret12 := main(); {20516#true} is VALID [2018-11-14 18:56:46,162 INFO L273 TraceCheckUtils]: 5: Hoare triple {20516#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {20518#(= main_~i~1 0)} is VALID [2018-11-14 18:56:46,162 INFO L273 TraceCheckUtils]: 6: Hoare triple {20518#(= main_~i~1 0)} assume true; {20518#(= main_~i~1 0)} is VALID [2018-11-14 18:56:46,163 INFO L273 TraceCheckUtils]: 7: Hoare triple {20518#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20518#(= main_~i~1 0)} is VALID [2018-11-14 18:56:46,163 INFO L273 TraceCheckUtils]: 8: Hoare triple {20518#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20519#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:46,164 INFO L273 TraceCheckUtils]: 9: Hoare triple {20519#(<= main_~i~1 1)} assume true; {20519#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:46,164 INFO L273 TraceCheckUtils]: 10: Hoare triple {20519#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20519#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:46,165 INFO L273 TraceCheckUtils]: 11: Hoare triple {20519#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20520#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:46,166 INFO L273 TraceCheckUtils]: 12: Hoare triple {20520#(<= main_~i~1 2)} assume true; {20520#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:46,166 INFO L273 TraceCheckUtils]: 13: Hoare triple {20520#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20520#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:46,167 INFO L273 TraceCheckUtils]: 14: Hoare triple {20520#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20521#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:46,167 INFO L273 TraceCheckUtils]: 15: Hoare triple {20521#(<= main_~i~1 3)} assume true; {20521#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:46,168 INFO L273 TraceCheckUtils]: 16: Hoare triple {20521#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20521#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:46,168 INFO L273 TraceCheckUtils]: 17: Hoare triple {20521#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20522#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:46,169 INFO L273 TraceCheckUtils]: 18: Hoare triple {20522#(<= main_~i~1 4)} assume true; {20522#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:46,169 INFO L273 TraceCheckUtils]: 19: Hoare triple {20522#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20522#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:46,170 INFO L273 TraceCheckUtils]: 20: Hoare triple {20522#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20523#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:46,170 INFO L273 TraceCheckUtils]: 21: Hoare triple {20523#(<= main_~i~1 5)} assume true; {20523#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:46,171 INFO L273 TraceCheckUtils]: 22: Hoare triple {20523#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20523#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:46,172 INFO L273 TraceCheckUtils]: 23: Hoare triple {20523#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20524#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:46,172 INFO L273 TraceCheckUtils]: 24: Hoare triple {20524#(<= main_~i~1 6)} assume true; {20524#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:46,173 INFO L273 TraceCheckUtils]: 25: Hoare triple {20524#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20524#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:46,173 INFO L273 TraceCheckUtils]: 26: Hoare triple {20524#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20525#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:46,174 INFO L273 TraceCheckUtils]: 27: Hoare triple {20525#(<= main_~i~1 7)} assume true; {20525#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:46,174 INFO L273 TraceCheckUtils]: 28: Hoare triple {20525#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20525#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:46,175 INFO L273 TraceCheckUtils]: 29: Hoare triple {20525#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20526#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:46,175 INFO L273 TraceCheckUtils]: 30: Hoare triple {20526#(<= main_~i~1 8)} assume true; {20526#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:46,176 INFO L273 TraceCheckUtils]: 31: Hoare triple {20526#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20526#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:46,177 INFO L273 TraceCheckUtils]: 32: Hoare triple {20526#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20527#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:46,177 INFO L273 TraceCheckUtils]: 33: Hoare triple {20527#(<= main_~i~1 9)} assume true; {20527#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:46,178 INFO L273 TraceCheckUtils]: 34: Hoare triple {20527#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20527#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:46,178 INFO L273 TraceCheckUtils]: 35: Hoare triple {20527#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20528#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:46,179 INFO L273 TraceCheckUtils]: 36: Hoare triple {20528#(<= main_~i~1 10)} assume true; {20528#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:46,179 INFO L273 TraceCheckUtils]: 37: Hoare triple {20528#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20528#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:46,180 INFO L273 TraceCheckUtils]: 38: Hoare triple {20528#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20529#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:46,180 INFO L273 TraceCheckUtils]: 39: Hoare triple {20529#(<= main_~i~1 11)} assume true; {20529#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:46,181 INFO L273 TraceCheckUtils]: 40: Hoare triple {20529#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20529#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:46,182 INFO L273 TraceCheckUtils]: 41: Hoare triple {20529#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20530#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:46,182 INFO L273 TraceCheckUtils]: 42: Hoare triple {20530#(<= main_~i~1 12)} assume true; {20530#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:46,183 INFO L273 TraceCheckUtils]: 43: Hoare triple {20530#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20530#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:46,183 INFO L273 TraceCheckUtils]: 44: Hoare triple {20530#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20531#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:46,184 INFO L273 TraceCheckUtils]: 45: Hoare triple {20531#(<= main_~i~1 13)} assume true; {20531#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:46,184 INFO L273 TraceCheckUtils]: 46: Hoare triple {20531#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20531#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:46,185 INFO L273 TraceCheckUtils]: 47: Hoare triple {20531#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20532#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:46,185 INFO L273 TraceCheckUtils]: 48: Hoare triple {20532#(<= main_~i~1 14)} assume true; {20532#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:46,186 INFO L273 TraceCheckUtils]: 49: Hoare triple {20532#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20532#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:46,187 INFO L273 TraceCheckUtils]: 50: Hoare triple {20532#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20533#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:46,187 INFO L273 TraceCheckUtils]: 51: Hoare triple {20533#(<= main_~i~1 15)} assume true; {20533#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:46,187 INFO L273 TraceCheckUtils]: 52: Hoare triple {20533#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20533#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:46,188 INFO L273 TraceCheckUtils]: 53: Hoare triple {20533#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20534#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:46,189 INFO L273 TraceCheckUtils]: 54: Hoare triple {20534#(<= main_~i~1 16)} assume true; {20534#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:46,189 INFO L273 TraceCheckUtils]: 55: Hoare triple {20534#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20534#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:46,190 INFO L273 TraceCheckUtils]: 56: Hoare triple {20534#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20535#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:46,190 INFO L273 TraceCheckUtils]: 57: Hoare triple {20535#(<= main_~i~1 17)} assume true; {20535#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:46,191 INFO L273 TraceCheckUtils]: 58: Hoare triple {20535#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20535#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:46,191 INFO L273 TraceCheckUtils]: 59: Hoare triple {20535#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20536#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:46,192 INFO L273 TraceCheckUtils]: 60: Hoare triple {20536#(<= main_~i~1 18)} assume true; {20536#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:46,192 INFO L273 TraceCheckUtils]: 61: Hoare triple {20536#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20536#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:46,193 INFO L273 TraceCheckUtils]: 62: Hoare triple {20536#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20537#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:46,193 INFO L273 TraceCheckUtils]: 63: Hoare triple {20537#(<= main_~i~1 19)} assume true; {20537#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:46,194 INFO L273 TraceCheckUtils]: 64: Hoare triple {20537#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20537#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:46,195 INFO L273 TraceCheckUtils]: 65: Hoare triple {20537#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20538#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:46,195 INFO L273 TraceCheckUtils]: 66: Hoare triple {20538#(<= main_~i~1 20)} assume true; {20538#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:46,196 INFO L273 TraceCheckUtils]: 67: Hoare triple {20538#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20538#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:46,196 INFO L273 TraceCheckUtils]: 68: Hoare triple {20538#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20539#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:46,197 INFO L273 TraceCheckUtils]: 69: Hoare triple {20539#(<= main_~i~1 21)} assume true; {20539#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:46,197 INFO L273 TraceCheckUtils]: 70: Hoare triple {20539#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20539#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:46,198 INFO L273 TraceCheckUtils]: 71: Hoare triple {20539#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20540#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:46,198 INFO L273 TraceCheckUtils]: 72: Hoare triple {20540#(<= main_~i~1 22)} assume true; {20540#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:46,199 INFO L273 TraceCheckUtils]: 73: Hoare triple {20540#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20540#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:46,199 INFO L273 TraceCheckUtils]: 74: Hoare triple {20540#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20541#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:46,200 INFO L273 TraceCheckUtils]: 75: Hoare triple {20541#(<= main_~i~1 23)} assume true; {20541#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:46,200 INFO L273 TraceCheckUtils]: 76: Hoare triple {20541#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20541#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:46,201 INFO L273 TraceCheckUtils]: 77: Hoare triple {20541#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20542#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:46,202 INFO L273 TraceCheckUtils]: 78: Hoare triple {20542#(<= main_~i~1 24)} assume true; {20542#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:46,202 INFO L273 TraceCheckUtils]: 79: Hoare triple {20542#(<= main_~i~1 24)} assume !(~i~1 < 10000); {20517#false} is VALID [2018-11-14 18:56:46,202 INFO L256 TraceCheckUtils]: 80: Hoare triple {20517#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {20516#true} is VALID [2018-11-14 18:56:46,203 INFO L273 TraceCheckUtils]: 81: Hoare triple {20516#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20516#true} is VALID [2018-11-14 18:56:46,203 INFO L273 TraceCheckUtils]: 82: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,203 INFO L273 TraceCheckUtils]: 83: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,203 INFO L273 TraceCheckUtils]: 84: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,203 INFO L273 TraceCheckUtils]: 85: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,203 INFO L273 TraceCheckUtils]: 86: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,204 INFO L273 TraceCheckUtils]: 87: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,204 INFO L273 TraceCheckUtils]: 88: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,204 INFO L273 TraceCheckUtils]: 89: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,204 INFO L273 TraceCheckUtils]: 90: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,205 INFO L273 TraceCheckUtils]: 91: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,205 INFO L273 TraceCheckUtils]: 92: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,205 INFO L273 TraceCheckUtils]: 93: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,205 INFO L273 TraceCheckUtils]: 94: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,205 INFO L273 TraceCheckUtils]: 95: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,205 INFO L273 TraceCheckUtils]: 96: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 97: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 98: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 99: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 100: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 101: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 102: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 103: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 104: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,206 INFO L273 TraceCheckUtils]: 105: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 106: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 107: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 108: Hoare triple {20516#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 109: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {20516#true} {20517#false} #73#return; {20517#false} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 111: Hoare triple {20517#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {20517#false} is VALID [2018-11-14 18:56:46,207 INFO L256 TraceCheckUtils]: 112: Hoare triple {20517#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 113: Hoare triple {20516#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 114: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,207 INFO L273 TraceCheckUtils]: 115: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 116: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 117: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 118: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 119: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 120: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 121: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 122: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 123: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 124: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,208 INFO L273 TraceCheckUtils]: 125: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 126: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 127: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 128: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 129: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 130: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 131: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 132: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 133: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 134: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,209 INFO L273 TraceCheckUtils]: 135: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 136: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 137: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 138: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 139: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 140: Hoare triple {20516#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {20516#true} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 141: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,210 INFO L268 TraceCheckUtils]: 142: Hoare quadruple {20516#true} {20517#false} #75#return; {20517#false} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 143: Hoare triple {20517#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {20517#false} is VALID [2018-11-14 18:56:46,210 INFO L273 TraceCheckUtils]: 144: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 145: Hoare triple {20517#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 146: Hoare triple {20517#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 147: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 148: Hoare triple {20517#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 149: Hoare triple {20517#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 150: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 151: Hoare triple {20517#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 152: Hoare triple {20517#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 153: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,211 INFO L273 TraceCheckUtils]: 154: Hoare triple {20517#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 155: Hoare triple {20517#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 156: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 157: Hoare triple {20517#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 158: Hoare triple {20517#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 159: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 160: Hoare triple {20517#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 161: Hoare triple {20517#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 162: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 163: Hoare triple {20517#false} assume !(~i~2 < 9999); {20517#false} is VALID [2018-11-14 18:56:46,212 INFO L273 TraceCheckUtils]: 164: Hoare triple {20517#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {20517#false} is VALID [2018-11-14 18:56:46,213 INFO L256 TraceCheckUtils]: 165: Hoare triple {20517#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 166: Hoare triple {20516#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 167: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 168: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 169: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 170: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 171: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 172: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 173: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,213 INFO L273 TraceCheckUtils]: 174: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 175: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 176: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 177: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 178: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 179: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 180: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 181: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 182: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 183: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,214 INFO L273 TraceCheckUtils]: 184: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 185: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 186: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 187: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 188: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 189: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 190: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 191: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 192: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 18:56:46,215 INFO L273 TraceCheckUtils]: 193: Hoare triple {20516#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {20516#true} is VALID [2018-11-14 18:56:46,216 INFO L273 TraceCheckUtils]: 194: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,216 INFO L268 TraceCheckUtils]: 195: Hoare quadruple {20516#true} {20517#false} #77#return; {20517#false} is VALID [2018-11-14 18:56:46,216 INFO L273 TraceCheckUtils]: 196: Hoare triple {20517#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {20517#false} is VALID [2018-11-14 18:56:46,216 INFO L273 TraceCheckUtils]: 197: Hoare triple {20517#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20517#false} is VALID [2018-11-14 18:56:46,216 INFO L273 TraceCheckUtils]: 198: Hoare triple {20517#false} assume !false; {20517#false} is VALID [2018-11-14 18:56:46,236 INFO L134 CoverageAnalysis]: Checked inductivity of 1923 backedges. 0 proven. 876 refuted. 0 times theorem prover too weak. 1047 trivial. 0 not checked. [2018-11-14 18:56:46,236 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:46,236 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 26 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 26 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:46,244 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 18:56:46,619 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2018-11-14 18:56:46,620 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:46,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:46,658 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:46,904 INFO L256 TraceCheckUtils]: 0: Hoare triple {20516#true} call ULTIMATE.init(); {20516#true} is VALID [2018-11-14 18:56:46,904 INFO L273 TraceCheckUtils]: 1: Hoare triple {20516#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {20516#true} is VALID [2018-11-14 18:56:46,904 INFO L273 TraceCheckUtils]: 2: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,904 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20516#true} {20516#true} #69#return; {20516#true} is VALID [2018-11-14 18:56:46,904 INFO L256 TraceCheckUtils]: 4: Hoare triple {20516#true} call #t~ret12 := main(); {20516#true} is VALID [2018-11-14 18:56:46,905 INFO L273 TraceCheckUtils]: 5: Hoare triple {20516#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {20516#true} is VALID [2018-11-14 18:56:46,905 INFO L273 TraceCheckUtils]: 6: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,905 INFO L273 TraceCheckUtils]: 7: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,905 INFO L273 TraceCheckUtils]: 8: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,905 INFO L273 TraceCheckUtils]: 9: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,905 INFO L273 TraceCheckUtils]: 10: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,906 INFO L273 TraceCheckUtils]: 11: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,906 INFO L273 TraceCheckUtils]: 12: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,906 INFO L273 TraceCheckUtils]: 13: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,906 INFO L273 TraceCheckUtils]: 14: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,906 INFO L273 TraceCheckUtils]: 15: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,906 INFO L273 TraceCheckUtils]: 16: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 17: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 18: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 19: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 20: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 21: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 22: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 23: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 24: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 25: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,907 INFO L273 TraceCheckUtils]: 26: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 27: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 28: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 29: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 30: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 31: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 32: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 33: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 34: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,908 INFO L273 TraceCheckUtils]: 35: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 36: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 37: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 38: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 39: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 40: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 41: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 42: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 43: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 44: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,909 INFO L273 TraceCheckUtils]: 45: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 46: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 47: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 48: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 49: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 50: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 51: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 52: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 53: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 54: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,910 INFO L273 TraceCheckUtils]: 55: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 56: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 57: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 58: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 59: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 60: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 61: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 62: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 63: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 64: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,911 INFO L273 TraceCheckUtils]: 65: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 66: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 67: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 68: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 69: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 70: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 71: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 72: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 73: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,912 INFO L273 TraceCheckUtils]: 74: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 75: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 76: Hoare triple {20516#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 77: Hoare triple {20516#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 78: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 79: Hoare triple {20516#true} assume !(~i~1 < 10000); {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L256 TraceCheckUtils]: 80: Hoare triple {20516#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 81: Hoare triple {20516#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 82: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 83: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,913 INFO L273 TraceCheckUtils]: 84: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 85: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 86: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 87: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 88: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 89: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 90: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 91: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 92: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,914 INFO L273 TraceCheckUtils]: 93: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 94: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 95: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 96: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 97: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 98: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 99: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 100: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 101: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 102: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,915 INFO L273 TraceCheckUtils]: 103: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L273 TraceCheckUtils]: 104: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L273 TraceCheckUtils]: 105: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L273 TraceCheckUtils]: 106: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L273 TraceCheckUtils]: 107: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L273 TraceCheckUtils]: 108: Hoare triple {20516#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L273 TraceCheckUtils]: 109: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {20516#true} {20516#true} #73#return; {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L273 TraceCheckUtils]: 111: Hoare triple {20516#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {20516#true} is VALID [2018-11-14 18:56:46,916 INFO L256 TraceCheckUtils]: 112: Hoare triple {20516#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 113: Hoare triple {20516#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 114: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 115: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 116: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 117: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 118: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 119: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 120: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 121: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,917 INFO L273 TraceCheckUtils]: 122: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 123: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 124: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 125: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 126: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 127: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 128: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 129: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 130: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,918 INFO L273 TraceCheckUtils]: 131: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 132: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 133: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 134: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 135: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 136: Hoare triple {20516#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 137: Hoare triple {20516#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 138: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 139: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 18:56:46,919 INFO L273 TraceCheckUtils]: 140: Hoare triple {20516#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {20516#true} is VALID [2018-11-14 18:56:46,920 INFO L273 TraceCheckUtils]: 141: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 18:56:46,920 INFO L268 TraceCheckUtils]: 142: Hoare quadruple {20516#true} {20516#true} #75#return; {20516#true} is VALID [2018-11-14 18:56:46,928 INFO L273 TraceCheckUtils]: 143: Hoare triple {20516#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {20975#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:46,928 INFO L273 TraceCheckUtils]: 144: Hoare triple {20975#(<= main_~i~2 0)} assume true; {20975#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:46,929 INFO L273 TraceCheckUtils]: 145: Hoare triple {20975#(<= main_~i~2 0)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20975#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:46,929 INFO L273 TraceCheckUtils]: 146: Hoare triple {20975#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20985#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:46,929 INFO L273 TraceCheckUtils]: 147: Hoare triple {20985#(<= main_~i~2 1)} assume true; {20985#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:46,930 INFO L273 TraceCheckUtils]: 148: Hoare triple {20985#(<= main_~i~2 1)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20985#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:46,930 INFO L273 TraceCheckUtils]: 149: Hoare triple {20985#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {20995#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:46,930 INFO L273 TraceCheckUtils]: 150: Hoare triple {20995#(<= main_~i~2 2)} assume true; {20995#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:46,931 INFO L273 TraceCheckUtils]: 151: Hoare triple {20995#(<= main_~i~2 2)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {20995#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:46,931 INFO L273 TraceCheckUtils]: 152: Hoare triple {20995#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21005#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:46,931 INFO L273 TraceCheckUtils]: 153: Hoare triple {21005#(<= main_~i~2 3)} assume true; {21005#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:46,932 INFO L273 TraceCheckUtils]: 154: Hoare triple {21005#(<= main_~i~2 3)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21005#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:46,932 INFO L273 TraceCheckUtils]: 155: Hoare triple {21005#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21015#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:46,933 INFO L273 TraceCheckUtils]: 156: Hoare triple {21015#(<= main_~i~2 4)} assume true; {21015#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:46,933 INFO L273 TraceCheckUtils]: 157: Hoare triple {21015#(<= main_~i~2 4)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21015#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:46,934 INFO L273 TraceCheckUtils]: 158: Hoare triple {21015#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21025#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:46,934 INFO L273 TraceCheckUtils]: 159: Hoare triple {21025#(<= main_~i~2 5)} assume true; {21025#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:46,935 INFO L273 TraceCheckUtils]: 160: Hoare triple {21025#(<= main_~i~2 5)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21025#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:46,935 INFO L273 TraceCheckUtils]: 161: Hoare triple {21025#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21035#(<= main_~i~2 6)} is VALID [2018-11-14 18:56:46,936 INFO L273 TraceCheckUtils]: 162: Hoare triple {21035#(<= main_~i~2 6)} assume true; {21035#(<= main_~i~2 6)} is VALID [2018-11-14 18:56:46,936 INFO L273 TraceCheckUtils]: 163: Hoare triple {21035#(<= main_~i~2 6)} assume !(~i~2 < 9999); {20517#false} is VALID [2018-11-14 18:56:46,937 INFO L273 TraceCheckUtils]: 164: Hoare triple {20517#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {20517#false} is VALID [2018-11-14 18:56:46,937 INFO L256 TraceCheckUtils]: 165: Hoare triple {20517#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {20517#false} is VALID [2018-11-14 18:56:46,937 INFO L273 TraceCheckUtils]: 166: Hoare triple {20517#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20517#false} is VALID [2018-11-14 18:56:46,937 INFO L273 TraceCheckUtils]: 167: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,937 INFO L273 TraceCheckUtils]: 168: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,937 INFO L273 TraceCheckUtils]: 169: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,938 INFO L273 TraceCheckUtils]: 170: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,938 INFO L273 TraceCheckUtils]: 171: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,938 INFO L273 TraceCheckUtils]: 172: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,938 INFO L273 TraceCheckUtils]: 173: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,938 INFO L273 TraceCheckUtils]: 174: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,938 INFO L273 TraceCheckUtils]: 175: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 176: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 177: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 178: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 179: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 180: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 181: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 182: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 183: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 184: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,939 INFO L273 TraceCheckUtils]: 185: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 186: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 187: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 188: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 189: Hoare triple {20517#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 190: Hoare triple {20517#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 191: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 192: Hoare triple {20517#false} assume !(~i~0 < 10000); {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 193: Hoare triple {20517#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L273 TraceCheckUtils]: 194: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 18:56:46,940 INFO L268 TraceCheckUtils]: 195: Hoare quadruple {20517#false} {20517#false} #77#return; {20517#false} is VALID [2018-11-14 18:56:46,941 INFO L273 TraceCheckUtils]: 196: Hoare triple {20517#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {20517#false} is VALID [2018-11-14 18:56:46,941 INFO L273 TraceCheckUtils]: 197: Hoare triple {20517#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20517#false} is VALID [2018-11-14 18:56:46,941 INFO L273 TraceCheckUtils]: 198: Hoare triple {20517#false} assume !false; {20517#false} is VALID [2018-11-14 18:56:46,956 INFO L134 CoverageAnalysis]: Checked inductivity of 1923 backedges. 460 proven. 57 refuted. 0 times theorem prover too weak. 1406 trivial. 0 not checked. [2018-11-14 18:56:46,979 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:46,979 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 9] total 34 [2018-11-14 18:56:46,980 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 199 [2018-11-14 18:56:46,980 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:46,980 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states. [2018-11-14 18:56:47,122 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:47,122 INFO L459 AbstractCegarLoop]: Interpolant automaton has 34 states [2018-11-14 18:56:47,122 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2018-11-14 18:56:47,123 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=386, Invalid=736, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 18:56:47,123 INFO L87 Difference]: Start difference. First operand 140 states and 144 transitions. Second operand 34 states. [2018-11-14 18:56:48,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:48,084 INFO L93 Difference]: Finished difference Result 208 states and 217 transitions. [2018-11-14 18:56:48,084 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2018-11-14 18:56:48,084 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 199 [2018-11-14 18:56:48,084 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:48,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 18:56:48,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 154 transitions. [2018-11-14 18:56:48,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 18:56:48,086 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 154 transitions. [2018-11-14 18:56:48,086 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states and 154 transitions. [2018-11-14 18:56:48,233 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:48,236 INFO L225 Difference]: With dead ends: 208 [2018-11-14 18:56:48,236 INFO L226 Difference]: Without dead ends: 148 [2018-11-14 18:56:48,237 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 225 GetRequests, 193 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 168 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=386, Invalid=736, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 18:56:48,237 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2018-11-14 18:56:48,318 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 146. [2018-11-14 18:56:48,318 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:48,318 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand 146 states. [2018-11-14 18:56:48,318 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand 146 states. [2018-11-14 18:56:48,318 INFO L87 Difference]: Start difference. First operand 148 states. Second operand 146 states. [2018-11-14 18:56:48,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:48,320 INFO L93 Difference]: Finished difference Result 148 states and 152 transitions. [2018-11-14 18:56:48,320 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 152 transitions. [2018-11-14 18:56:48,321 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:48,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:48,321 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand 148 states. [2018-11-14 18:56:48,321 INFO L87 Difference]: Start difference. First operand 146 states. Second operand 148 states. [2018-11-14 18:56:48,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:48,324 INFO L93 Difference]: Finished difference Result 148 states and 152 transitions. [2018-11-14 18:56:48,324 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 152 transitions. [2018-11-14 18:56:48,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:48,325 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:48,325 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:48,325 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:48,325 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 146 states. [2018-11-14 18:56:48,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 150 transitions. [2018-11-14 18:56:48,328 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 150 transitions. Word has length 199 [2018-11-14 18:56:48,328 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:48,328 INFO L480 AbstractCegarLoop]: Abstraction has 146 states and 150 transitions. [2018-11-14 18:56:48,328 INFO L481 AbstractCegarLoop]: Interpolant automaton has 34 states. [2018-11-14 18:56:48,328 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 150 transitions. [2018-11-14 18:56:48,330 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 206 [2018-11-14 18:56:48,330 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:48,330 INFO L375 BasicCegarLoop]: trace histogram [27, 26, 25, 25, 24, 24, 8, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:48,330 INFO L423 AbstractCegarLoop]: === Iteration 29 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:48,330 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:48,331 INFO L82 PathProgramCache]: Analyzing trace with hash -256806737, now seen corresponding path program 25 times [2018-11-14 18:56:48,331 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:48,331 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:48,331 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:48,331 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:48,332 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:48,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:48,837 INFO L256 TraceCheckUtils]: 0: Hoare triple {21918#true} call ULTIMATE.init(); {21918#true} is VALID [2018-11-14 18:56:48,837 INFO L273 TraceCheckUtils]: 1: Hoare triple {21918#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {21918#true} is VALID [2018-11-14 18:56:48,837 INFO L273 TraceCheckUtils]: 2: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,838 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {21918#true} {21918#true} #69#return; {21918#true} is VALID [2018-11-14 18:56:48,838 INFO L256 TraceCheckUtils]: 4: Hoare triple {21918#true} call #t~ret12 := main(); {21918#true} is VALID [2018-11-14 18:56:48,838 INFO L273 TraceCheckUtils]: 5: Hoare triple {21918#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {21920#(= main_~i~1 0)} is VALID [2018-11-14 18:56:48,839 INFO L273 TraceCheckUtils]: 6: Hoare triple {21920#(= main_~i~1 0)} assume true; {21920#(= main_~i~1 0)} is VALID [2018-11-14 18:56:48,839 INFO L273 TraceCheckUtils]: 7: Hoare triple {21920#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21920#(= main_~i~1 0)} is VALID [2018-11-14 18:56:48,840 INFO L273 TraceCheckUtils]: 8: Hoare triple {21920#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:48,840 INFO L273 TraceCheckUtils]: 9: Hoare triple {21921#(<= main_~i~1 1)} assume true; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:48,841 INFO L273 TraceCheckUtils]: 10: Hoare triple {21921#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:48,842 INFO L273 TraceCheckUtils]: 11: Hoare triple {21921#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:48,842 INFO L273 TraceCheckUtils]: 12: Hoare triple {21922#(<= main_~i~1 2)} assume true; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:48,843 INFO L273 TraceCheckUtils]: 13: Hoare triple {21922#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:48,843 INFO L273 TraceCheckUtils]: 14: Hoare triple {21922#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:48,844 INFO L273 TraceCheckUtils]: 15: Hoare triple {21923#(<= main_~i~1 3)} assume true; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:48,844 INFO L273 TraceCheckUtils]: 16: Hoare triple {21923#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:48,845 INFO L273 TraceCheckUtils]: 17: Hoare triple {21923#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:48,845 INFO L273 TraceCheckUtils]: 18: Hoare triple {21924#(<= main_~i~1 4)} assume true; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:48,846 INFO L273 TraceCheckUtils]: 19: Hoare triple {21924#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:48,846 INFO L273 TraceCheckUtils]: 20: Hoare triple {21924#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:48,847 INFO L273 TraceCheckUtils]: 21: Hoare triple {21925#(<= main_~i~1 5)} assume true; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:48,847 INFO L273 TraceCheckUtils]: 22: Hoare triple {21925#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:48,848 INFO L273 TraceCheckUtils]: 23: Hoare triple {21925#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:48,849 INFO L273 TraceCheckUtils]: 24: Hoare triple {21926#(<= main_~i~1 6)} assume true; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:48,849 INFO L273 TraceCheckUtils]: 25: Hoare triple {21926#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:48,850 INFO L273 TraceCheckUtils]: 26: Hoare triple {21926#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:48,850 INFO L273 TraceCheckUtils]: 27: Hoare triple {21927#(<= main_~i~1 7)} assume true; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:48,851 INFO L273 TraceCheckUtils]: 28: Hoare triple {21927#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:48,851 INFO L273 TraceCheckUtils]: 29: Hoare triple {21927#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:48,852 INFO L273 TraceCheckUtils]: 30: Hoare triple {21928#(<= main_~i~1 8)} assume true; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:48,852 INFO L273 TraceCheckUtils]: 31: Hoare triple {21928#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:48,853 INFO L273 TraceCheckUtils]: 32: Hoare triple {21928#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:48,853 INFO L273 TraceCheckUtils]: 33: Hoare triple {21929#(<= main_~i~1 9)} assume true; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:48,854 INFO L273 TraceCheckUtils]: 34: Hoare triple {21929#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:48,855 INFO L273 TraceCheckUtils]: 35: Hoare triple {21929#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:48,855 INFO L273 TraceCheckUtils]: 36: Hoare triple {21930#(<= main_~i~1 10)} assume true; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:48,855 INFO L273 TraceCheckUtils]: 37: Hoare triple {21930#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:48,856 INFO L273 TraceCheckUtils]: 38: Hoare triple {21930#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:48,857 INFO L273 TraceCheckUtils]: 39: Hoare triple {21931#(<= main_~i~1 11)} assume true; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:48,857 INFO L273 TraceCheckUtils]: 40: Hoare triple {21931#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:48,858 INFO L273 TraceCheckUtils]: 41: Hoare triple {21931#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:48,858 INFO L273 TraceCheckUtils]: 42: Hoare triple {21932#(<= main_~i~1 12)} assume true; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:48,859 INFO L273 TraceCheckUtils]: 43: Hoare triple {21932#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:48,859 INFO L273 TraceCheckUtils]: 44: Hoare triple {21932#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:48,860 INFO L273 TraceCheckUtils]: 45: Hoare triple {21933#(<= main_~i~1 13)} assume true; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:48,860 INFO L273 TraceCheckUtils]: 46: Hoare triple {21933#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:48,861 INFO L273 TraceCheckUtils]: 47: Hoare triple {21933#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:48,861 INFO L273 TraceCheckUtils]: 48: Hoare triple {21934#(<= main_~i~1 14)} assume true; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:48,862 INFO L273 TraceCheckUtils]: 49: Hoare triple {21934#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:48,863 INFO L273 TraceCheckUtils]: 50: Hoare triple {21934#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:48,863 INFO L273 TraceCheckUtils]: 51: Hoare triple {21935#(<= main_~i~1 15)} assume true; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:48,864 INFO L273 TraceCheckUtils]: 52: Hoare triple {21935#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:48,864 INFO L273 TraceCheckUtils]: 53: Hoare triple {21935#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:48,865 INFO L273 TraceCheckUtils]: 54: Hoare triple {21936#(<= main_~i~1 16)} assume true; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:48,865 INFO L273 TraceCheckUtils]: 55: Hoare triple {21936#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:48,866 INFO L273 TraceCheckUtils]: 56: Hoare triple {21936#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:48,867 INFO L273 TraceCheckUtils]: 57: Hoare triple {21937#(<= main_~i~1 17)} assume true; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:48,867 INFO L273 TraceCheckUtils]: 58: Hoare triple {21937#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:48,868 INFO L273 TraceCheckUtils]: 59: Hoare triple {21937#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:48,868 INFO L273 TraceCheckUtils]: 60: Hoare triple {21938#(<= main_~i~1 18)} assume true; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:48,869 INFO L273 TraceCheckUtils]: 61: Hoare triple {21938#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:48,869 INFO L273 TraceCheckUtils]: 62: Hoare triple {21938#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:48,870 INFO L273 TraceCheckUtils]: 63: Hoare triple {21939#(<= main_~i~1 19)} assume true; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:48,870 INFO L273 TraceCheckUtils]: 64: Hoare triple {21939#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:48,871 INFO L273 TraceCheckUtils]: 65: Hoare triple {21939#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:48,872 INFO L273 TraceCheckUtils]: 66: Hoare triple {21940#(<= main_~i~1 20)} assume true; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:48,872 INFO L273 TraceCheckUtils]: 67: Hoare triple {21940#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:48,873 INFO L273 TraceCheckUtils]: 68: Hoare triple {21940#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:48,873 INFO L273 TraceCheckUtils]: 69: Hoare triple {21941#(<= main_~i~1 21)} assume true; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:48,874 INFO L273 TraceCheckUtils]: 70: Hoare triple {21941#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:48,875 INFO L273 TraceCheckUtils]: 71: Hoare triple {21941#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:48,875 INFO L273 TraceCheckUtils]: 72: Hoare triple {21942#(<= main_~i~1 22)} assume true; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:48,876 INFO L273 TraceCheckUtils]: 73: Hoare triple {21942#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:48,876 INFO L273 TraceCheckUtils]: 74: Hoare triple {21942#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:48,877 INFO L273 TraceCheckUtils]: 75: Hoare triple {21943#(<= main_~i~1 23)} assume true; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:48,877 INFO L273 TraceCheckUtils]: 76: Hoare triple {21943#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:48,878 INFO L273 TraceCheckUtils]: 77: Hoare triple {21943#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:48,879 INFO L273 TraceCheckUtils]: 78: Hoare triple {21944#(<= main_~i~1 24)} assume true; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:48,879 INFO L273 TraceCheckUtils]: 79: Hoare triple {21944#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:48,880 INFO L273 TraceCheckUtils]: 80: Hoare triple {21944#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21945#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:48,880 INFO L273 TraceCheckUtils]: 81: Hoare triple {21945#(<= main_~i~1 25)} assume true; {21945#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:48,881 INFO L273 TraceCheckUtils]: 82: Hoare triple {21945#(<= main_~i~1 25)} assume !(~i~1 < 10000); {21919#false} is VALID [2018-11-14 18:56:48,881 INFO L256 TraceCheckUtils]: 83: Hoare triple {21919#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {21918#true} is VALID [2018-11-14 18:56:48,881 INFO L273 TraceCheckUtils]: 84: Hoare triple {21918#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21918#true} is VALID [2018-11-14 18:56:48,882 INFO L273 TraceCheckUtils]: 85: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,882 INFO L273 TraceCheckUtils]: 86: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,882 INFO L273 TraceCheckUtils]: 87: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,882 INFO L273 TraceCheckUtils]: 88: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,882 INFO L273 TraceCheckUtils]: 89: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,883 INFO L273 TraceCheckUtils]: 90: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,883 INFO L273 TraceCheckUtils]: 91: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,883 INFO L273 TraceCheckUtils]: 92: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,883 INFO L273 TraceCheckUtils]: 93: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,883 INFO L273 TraceCheckUtils]: 94: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,883 INFO L273 TraceCheckUtils]: 95: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,884 INFO L273 TraceCheckUtils]: 96: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,884 INFO L273 TraceCheckUtils]: 97: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,884 INFO L273 TraceCheckUtils]: 98: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,884 INFO L273 TraceCheckUtils]: 99: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,884 INFO L273 TraceCheckUtils]: 100: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,884 INFO L273 TraceCheckUtils]: 101: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,884 INFO L273 TraceCheckUtils]: 102: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 103: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 104: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 105: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 106: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 107: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 108: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 109: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 110: Hoare triple {21918#true} assume !(~i~0 < 10000); {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 111: Hoare triple {21918#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {21918#true} is VALID [2018-11-14 18:56:48,885 INFO L273 TraceCheckUtils]: 112: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L268 TraceCheckUtils]: 113: Hoare quadruple {21918#true} {21919#false} #73#return; {21919#false} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 114: Hoare triple {21919#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {21919#false} is VALID [2018-11-14 18:56:48,886 INFO L256 TraceCheckUtils]: 115: Hoare triple {21919#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 116: Hoare triple {21918#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 117: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 118: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 119: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 120: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 121: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,886 INFO L273 TraceCheckUtils]: 122: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 123: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 124: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 125: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 126: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 127: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 128: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 129: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 130: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 131: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,887 INFO L273 TraceCheckUtils]: 132: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 133: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 134: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 135: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 136: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 137: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 138: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 139: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 140: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,888 INFO L273 TraceCheckUtils]: 141: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 142: Hoare triple {21918#true} assume !(~i~0 < 10000); {21918#true} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 143: Hoare triple {21918#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {21918#true} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 144: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,889 INFO L268 TraceCheckUtils]: 145: Hoare quadruple {21918#true} {21919#false} #75#return; {21919#false} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 146: Hoare triple {21919#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {21919#false} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 147: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 148: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 149: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 150: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,889 INFO L273 TraceCheckUtils]: 151: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 152: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 153: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 154: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 155: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 156: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 157: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 158: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 159: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 160: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:48,890 INFO L273 TraceCheckUtils]: 161: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 162: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 163: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 164: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 165: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 166: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 167: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 168: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 169: Hoare triple {21919#false} assume !(~i~2 < 9999); {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L273 TraceCheckUtils]: 170: Hoare triple {21919#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {21919#false} is VALID [2018-11-14 18:56:48,891 INFO L256 TraceCheckUtils]: 171: Hoare triple {21919#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 172: Hoare triple {21918#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 173: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 174: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 175: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 176: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 177: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 178: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 179: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 180: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,892 INFO L273 TraceCheckUtils]: 181: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 182: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 183: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 184: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 185: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 186: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 187: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 188: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 189: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,893 INFO L273 TraceCheckUtils]: 190: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 191: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 192: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 193: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 194: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 195: Hoare triple {21918#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 196: Hoare triple {21918#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 197: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 198: Hoare triple {21918#true} assume !(~i~0 < 10000); {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 199: Hoare triple {21918#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {21918#true} is VALID [2018-11-14 18:56:48,894 INFO L273 TraceCheckUtils]: 200: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:48,895 INFO L268 TraceCheckUtils]: 201: Hoare quadruple {21918#true} {21919#false} #77#return; {21919#false} is VALID [2018-11-14 18:56:48,895 INFO L273 TraceCheckUtils]: 202: Hoare triple {21919#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {21919#false} is VALID [2018-11-14 18:56:48,895 INFO L273 TraceCheckUtils]: 203: Hoare triple {21919#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {21919#false} is VALID [2018-11-14 18:56:48,895 INFO L273 TraceCheckUtils]: 204: Hoare triple {21919#false} assume !false; {21919#false} is VALID [2018-11-14 18:56:48,914 INFO L134 CoverageAnalysis]: Checked inductivity of 2017 backedges. 0 proven. 950 refuted. 0 times theorem prover too weak. 1067 trivial. 0 not checked. [2018-11-14 18:56:48,914 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:48,914 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:48,924 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:49,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:49,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:49,047 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:49,376 INFO L256 TraceCheckUtils]: 0: Hoare triple {21918#true} call ULTIMATE.init(); {21918#true} is VALID [2018-11-14 18:56:49,376 INFO L273 TraceCheckUtils]: 1: Hoare triple {21918#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {21918#true} is VALID [2018-11-14 18:56:49,376 INFO L273 TraceCheckUtils]: 2: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 18:56:49,376 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {21918#true} {21918#true} #69#return; {21918#true} is VALID [2018-11-14 18:56:49,376 INFO L256 TraceCheckUtils]: 4: Hoare triple {21918#true} call #t~ret12 := main(); {21918#true} is VALID [2018-11-14 18:56:49,377 INFO L273 TraceCheckUtils]: 5: Hoare triple {21918#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {21964#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:49,378 INFO L273 TraceCheckUtils]: 6: Hoare triple {21964#(<= main_~i~1 0)} assume true; {21964#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:49,378 INFO L273 TraceCheckUtils]: 7: Hoare triple {21964#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21964#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:49,379 INFO L273 TraceCheckUtils]: 8: Hoare triple {21964#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:49,379 INFO L273 TraceCheckUtils]: 9: Hoare triple {21921#(<= main_~i~1 1)} assume true; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:49,379 INFO L273 TraceCheckUtils]: 10: Hoare triple {21921#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:49,380 INFO L273 TraceCheckUtils]: 11: Hoare triple {21921#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:49,380 INFO L273 TraceCheckUtils]: 12: Hoare triple {21922#(<= main_~i~1 2)} assume true; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:49,380 INFO L273 TraceCheckUtils]: 13: Hoare triple {21922#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:49,381 INFO L273 TraceCheckUtils]: 14: Hoare triple {21922#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:49,381 INFO L273 TraceCheckUtils]: 15: Hoare triple {21923#(<= main_~i~1 3)} assume true; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:49,382 INFO L273 TraceCheckUtils]: 16: Hoare triple {21923#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:49,383 INFO L273 TraceCheckUtils]: 17: Hoare triple {21923#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:49,383 INFO L273 TraceCheckUtils]: 18: Hoare triple {21924#(<= main_~i~1 4)} assume true; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:49,384 INFO L273 TraceCheckUtils]: 19: Hoare triple {21924#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:49,384 INFO L273 TraceCheckUtils]: 20: Hoare triple {21924#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:49,385 INFO L273 TraceCheckUtils]: 21: Hoare triple {21925#(<= main_~i~1 5)} assume true; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:49,385 INFO L273 TraceCheckUtils]: 22: Hoare triple {21925#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:49,386 INFO L273 TraceCheckUtils]: 23: Hoare triple {21925#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:49,386 INFO L273 TraceCheckUtils]: 24: Hoare triple {21926#(<= main_~i~1 6)} assume true; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:49,387 INFO L273 TraceCheckUtils]: 25: Hoare triple {21926#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:49,388 INFO L273 TraceCheckUtils]: 26: Hoare triple {21926#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:49,388 INFO L273 TraceCheckUtils]: 27: Hoare triple {21927#(<= main_~i~1 7)} assume true; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:49,388 INFO L273 TraceCheckUtils]: 28: Hoare triple {21927#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:49,389 INFO L273 TraceCheckUtils]: 29: Hoare triple {21927#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:49,390 INFO L273 TraceCheckUtils]: 30: Hoare triple {21928#(<= main_~i~1 8)} assume true; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:49,390 INFO L273 TraceCheckUtils]: 31: Hoare triple {21928#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:49,391 INFO L273 TraceCheckUtils]: 32: Hoare triple {21928#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:49,391 INFO L273 TraceCheckUtils]: 33: Hoare triple {21929#(<= main_~i~1 9)} assume true; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:49,392 INFO L273 TraceCheckUtils]: 34: Hoare triple {21929#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:49,392 INFO L273 TraceCheckUtils]: 35: Hoare triple {21929#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:49,393 INFO L273 TraceCheckUtils]: 36: Hoare triple {21930#(<= main_~i~1 10)} assume true; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:49,393 INFO L273 TraceCheckUtils]: 37: Hoare triple {21930#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:49,394 INFO L273 TraceCheckUtils]: 38: Hoare triple {21930#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:49,395 INFO L273 TraceCheckUtils]: 39: Hoare triple {21931#(<= main_~i~1 11)} assume true; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:49,395 INFO L273 TraceCheckUtils]: 40: Hoare triple {21931#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:49,396 INFO L273 TraceCheckUtils]: 41: Hoare triple {21931#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:49,396 INFO L273 TraceCheckUtils]: 42: Hoare triple {21932#(<= main_~i~1 12)} assume true; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:49,397 INFO L273 TraceCheckUtils]: 43: Hoare triple {21932#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:49,397 INFO L273 TraceCheckUtils]: 44: Hoare triple {21932#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:49,398 INFO L273 TraceCheckUtils]: 45: Hoare triple {21933#(<= main_~i~1 13)} assume true; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:49,398 INFO L273 TraceCheckUtils]: 46: Hoare triple {21933#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:49,399 INFO L273 TraceCheckUtils]: 47: Hoare triple {21933#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:49,399 INFO L273 TraceCheckUtils]: 48: Hoare triple {21934#(<= main_~i~1 14)} assume true; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:49,400 INFO L273 TraceCheckUtils]: 49: Hoare triple {21934#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:49,401 INFO L273 TraceCheckUtils]: 50: Hoare triple {21934#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:49,401 INFO L273 TraceCheckUtils]: 51: Hoare triple {21935#(<= main_~i~1 15)} assume true; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:49,402 INFO L273 TraceCheckUtils]: 52: Hoare triple {21935#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:49,402 INFO L273 TraceCheckUtils]: 53: Hoare triple {21935#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:49,403 INFO L273 TraceCheckUtils]: 54: Hoare triple {21936#(<= main_~i~1 16)} assume true; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:49,403 INFO L273 TraceCheckUtils]: 55: Hoare triple {21936#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:49,404 INFO L273 TraceCheckUtils]: 56: Hoare triple {21936#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:49,404 INFO L273 TraceCheckUtils]: 57: Hoare triple {21937#(<= main_~i~1 17)} assume true; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:49,405 INFO L273 TraceCheckUtils]: 58: Hoare triple {21937#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:49,413 INFO L273 TraceCheckUtils]: 59: Hoare triple {21937#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:49,414 INFO L273 TraceCheckUtils]: 60: Hoare triple {21938#(<= main_~i~1 18)} assume true; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:49,414 INFO L273 TraceCheckUtils]: 61: Hoare triple {21938#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:49,414 INFO L273 TraceCheckUtils]: 62: Hoare triple {21938#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:49,415 INFO L273 TraceCheckUtils]: 63: Hoare triple {21939#(<= main_~i~1 19)} assume true; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:49,415 INFO L273 TraceCheckUtils]: 64: Hoare triple {21939#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:49,416 INFO L273 TraceCheckUtils]: 65: Hoare triple {21939#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:49,416 INFO L273 TraceCheckUtils]: 66: Hoare triple {21940#(<= main_~i~1 20)} assume true; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:49,416 INFO L273 TraceCheckUtils]: 67: Hoare triple {21940#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:49,417 INFO L273 TraceCheckUtils]: 68: Hoare triple {21940#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:49,417 INFO L273 TraceCheckUtils]: 69: Hoare triple {21941#(<= main_~i~1 21)} assume true; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:49,418 INFO L273 TraceCheckUtils]: 70: Hoare triple {21941#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:49,419 INFO L273 TraceCheckUtils]: 71: Hoare triple {21941#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:49,419 INFO L273 TraceCheckUtils]: 72: Hoare triple {21942#(<= main_~i~1 22)} assume true; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:49,420 INFO L273 TraceCheckUtils]: 73: Hoare triple {21942#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:49,420 INFO L273 TraceCheckUtils]: 74: Hoare triple {21942#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:49,421 INFO L273 TraceCheckUtils]: 75: Hoare triple {21943#(<= main_~i~1 23)} assume true; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:49,421 INFO L273 TraceCheckUtils]: 76: Hoare triple {21943#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:49,422 INFO L273 TraceCheckUtils]: 77: Hoare triple {21943#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:49,422 INFO L273 TraceCheckUtils]: 78: Hoare triple {21944#(<= main_~i~1 24)} assume true; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:49,423 INFO L273 TraceCheckUtils]: 79: Hoare triple {21944#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:49,423 INFO L273 TraceCheckUtils]: 80: Hoare triple {21944#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {21945#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:49,424 INFO L273 TraceCheckUtils]: 81: Hoare triple {21945#(<= main_~i~1 25)} assume true; {21945#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:49,425 INFO L273 TraceCheckUtils]: 82: Hoare triple {21945#(<= main_~i~1 25)} assume !(~i~1 < 10000); {21919#false} is VALID [2018-11-14 18:56:49,425 INFO L256 TraceCheckUtils]: 83: Hoare triple {21919#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {21919#false} is VALID [2018-11-14 18:56:49,425 INFO L273 TraceCheckUtils]: 84: Hoare triple {21919#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21919#false} is VALID [2018-11-14 18:56:49,425 INFO L273 TraceCheckUtils]: 85: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,425 INFO L273 TraceCheckUtils]: 86: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,425 INFO L273 TraceCheckUtils]: 87: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,426 INFO L273 TraceCheckUtils]: 88: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,426 INFO L273 TraceCheckUtils]: 89: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,426 INFO L273 TraceCheckUtils]: 90: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,426 INFO L273 TraceCheckUtils]: 91: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,426 INFO L273 TraceCheckUtils]: 92: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,426 INFO L273 TraceCheckUtils]: 93: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,427 INFO L273 TraceCheckUtils]: 94: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,427 INFO L273 TraceCheckUtils]: 95: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,427 INFO L273 TraceCheckUtils]: 96: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,427 INFO L273 TraceCheckUtils]: 97: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,427 INFO L273 TraceCheckUtils]: 98: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,427 INFO L273 TraceCheckUtils]: 99: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,428 INFO L273 TraceCheckUtils]: 100: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,428 INFO L273 TraceCheckUtils]: 101: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,428 INFO L273 TraceCheckUtils]: 102: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,428 INFO L273 TraceCheckUtils]: 103: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,428 INFO L273 TraceCheckUtils]: 104: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,428 INFO L273 TraceCheckUtils]: 105: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,429 INFO L273 TraceCheckUtils]: 106: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,429 INFO L273 TraceCheckUtils]: 107: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,429 INFO L273 TraceCheckUtils]: 108: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,429 INFO L273 TraceCheckUtils]: 109: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,429 INFO L273 TraceCheckUtils]: 110: Hoare triple {21919#false} assume !(~i~0 < 10000); {21919#false} is VALID [2018-11-14 18:56:49,429 INFO L273 TraceCheckUtils]: 111: Hoare triple {21919#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {21919#false} is VALID [2018-11-14 18:56:49,430 INFO L273 TraceCheckUtils]: 112: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,430 INFO L268 TraceCheckUtils]: 113: Hoare quadruple {21919#false} {21919#false} #73#return; {21919#false} is VALID [2018-11-14 18:56:49,430 INFO L273 TraceCheckUtils]: 114: Hoare triple {21919#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {21919#false} is VALID [2018-11-14 18:56:49,430 INFO L256 TraceCheckUtils]: 115: Hoare triple {21919#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {21919#false} is VALID [2018-11-14 18:56:49,430 INFO L273 TraceCheckUtils]: 116: Hoare triple {21919#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21919#false} is VALID [2018-11-14 18:56:49,430 INFO L273 TraceCheckUtils]: 117: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,430 INFO L273 TraceCheckUtils]: 118: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 119: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 120: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 121: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 122: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 123: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 124: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 125: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 126: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 127: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,431 INFO L273 TraceCheckUtils]: 128: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 129: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 130: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 131: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 132: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 133: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 134: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 135: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 136: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 137: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,432 INFO L273 TraceCheckUtils]: 138: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 139: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 140: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 141: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 142: Hoare triple {21919#false} assume !(~i~0 < 10000); {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 143: Hoare triple {21919#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 144: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L268 TraceCheckUtils]: 145: Hoare quadruple {21919#false} {21919#false} #75#return; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 146: Hoare triple {21919#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 147: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,433 INFO L273 TraceCheckUtils]: 148: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 149: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 150: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 151: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 152: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 153: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 154: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 155: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 156: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 157: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:49,434 INFO L273 TraceCheckUtils]: 158: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 159: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 160: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 161: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 162: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 163: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 164: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 165: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 166: Hoare triple {21919#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 167: Hoare triple {21919#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {21919#false} is VALID [2018-11-14 18:56:49,435 INFO L273 TraceCheckUtils]: 168: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 169: Hoare triple {21919#false} assume !(~i~2 < 9999); {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 170: Hoare triple {21919#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L256 TraceCheckUtils]: 171: Hoare triple {21919#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 172: Hoare triple {21919#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 173: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 174: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 175: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 176: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 177: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,436 INFO L273 TraceCheckUtils]: 178: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 179: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 180: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 181: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 182: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 183: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 184: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 185: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 186: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,437 INFO L273 TraceCheckUtils]: 187: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 188: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 189: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 190: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 191: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 192: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 193: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 194: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,438 INFO L273 TraceCheckUtils]: 195: Hoare triple {21919#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {21919#false} is VALID [2018-11-14 18:56:49,439 INFO L273 TraceCheckUtils]: 196: Hoare triple {21919#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {21919#false} is VALID [2018-11-14 18:56:49,439 INFO L273 TraceCheckUtils]: 197: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,439 INFO L273 TraceCheckUtils]: 198: Hoare triple {21919#false} assume !(~i~0 < 10000); {21919#false} is VALID [2018-11-14 18:56:49,439 INFO L273 TraceCheckUtils]: 199: Hoare triple {21919#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {21919#false} is VALID [2018-11-14 18:56:49,439 INFO L273 TraceCheckUtils]: 200: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 18:56:49,439 INFO L268 TraceCheckUtils]: 201: Hoare quadruple {21919#false} {21919#false} #77#return; {21919#false} is VALID [2018-11-14 18:56:49,440 INFO L273 TraceCheckUtils]: 202: Hoare triple {21919#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {21919#false} is VALID [2018-11-14 18:56:49,440 INFO L273 TraceCheckUtils]: 203: Hoare triple {21919#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {21919#false} is VALID [2018-11-14 18:56:49,440 INFO L273 TraceCheckUtils]: 204: Hoare triple {21919#false} assume !false; {21919#false} is VALID [2018-11-14 18:56:49,490 INFO L134 CoverageAnalysis]: Checked inductivity of 2017 backedges. 0 proven. 950 refuted. 0 times theorem prover too weak. 1067 trivial. 0 not checked. [2018-11-14 18:56:49,509 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:49,510 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [28, 28] total 29 [2018-11-14 18:56:49,510 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 205 [2018-11-14 18:56:49,511 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:49,511 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states. [2018-11-14 18:56:49,632 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:49,633 INFO L459 AbstractCegarLoop]: Interpolant automaton has 29 states [2018-11-14 18:56:49,633 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2018-11-14 18:56:49,634 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=406, Invalid=406, Unknown=0, NotChecked=0, Total=812 [2018-11-14 18:56:49,634 INFO L87 Difference]: Start difference. First operand 146 states and 150 transitions. Second operand 29 states. [2018-11-14 18:56:50,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:50,409 INFO L93 Difference]: Finished difference Result 213 states and 221 transitions. [2018-11-14 18:56:50,409 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2018-11-14 18:56:50,409 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 205 [2018-11-14 18:56:50,409 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:50,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 18:56:50,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 135 transitions. [2018-11-14 18:56:50,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 18:56:50,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 135 transitions. [2018-11-14 18:56:50,411 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 135 transitions. [2018-11-14 18:56:50,532 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:50,535 INFO L225 Difference]: With dead ends: 213 [2018-11-14 18:56:50,535 INFO L226 Difference]: Without dead ends: 150 [2018-11-14 18:56:50,536 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 232 GetRequests, 205 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=406, Invalid=406, Unknown=0, NotChecked=0, Total=812 [2018-11-14 18:56:50,536 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 150 states. [2018-11-14 18:56:50,577 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 150 to 149. [2018-11-14 18:56:50,577 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:50,577 INFO L82 GeneralOperation]: Start isEquivalent. First operand 150 states. Second operand 149 states. [2018-11-14 18:56:50,578 INFO L74 IsIncluded]: Start isIncluded. First operand 150 states. Second operand 149 states. [2018-11-14 18:56:50,578 INFO L87 Difference]: Start difference. First operand 150 states. Second operand 149 states. [2018-11-14 18:56:50,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:50,581 INFO L93 Difference]: Finished difference Result 150 states and 154 transitions. [2018-11-14 18:56:50,581 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 154 transitions. [2018-11-14 18:56:50,582 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:50,582 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:50,582 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 150 states. [2018-11-14 18:56:50,582 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 150 states. [2018-11-14 18:56:50,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:50,585 INFO L93 Difference]: Finished difference Result 150 states and 154 transitions. [2018-11-14 18:56:50,585 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 154 transitions. [2018-11-14 18:56:50,585 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:50,585 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:50,585 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:50,585 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:50,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 149 states. [2018-11-14 18:56:50,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 153 transitions. [2018-11-14 18:56:50,588 INFO L78 Accepts]: Start accepts. Automaton has 149 states and 153 transitions. Word has length 205 [2018-11-14 18:56:50,588 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:50,588 INFO L480 AbstractCegarLoop]: Abstraction has 149 states and 153 transitions. [2018-11-14 18:56:50,588 INFO L481 AbstractCegarLoop]: Interpolant automaton has 29 states. [2018-11-14 18:56:50,588 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 153 transitions. [2018-11-14 18:56:50,590 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 209 [2018-11-14 18:56:50,590 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:50,590 INFO L375 BasicCegarLoop]: trace histogram [27, 27, 26, 26, 24, 24, 8, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:50,590 INFO L423 AbstractCegarLoop]: === Iteration 30 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:50,590 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:50,591 INFO L82 PathProgramCache]: Analyzing trace with hash 1152250244, now seen corresponding path program 26 times [2018-11-14 18:56:50,591 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:50,591 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:50,592 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:50,592 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 18:56:50,592 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:50,623 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:51,669 INFO L256 TraceCheckUtils]: 0: Hoare triple {23348#true} call ULTIMATE.init(); {23348#true} is VALID [2018-11-14 18:56:51,669 INFO L273 TraceCheckUtils]: 1: Hoare triple {23348#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {23348#true} is VALID [2018-11-14 18:56:51,669 INFO L273 TraceCheckUtils]: 2: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,669 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23348#true} {23348#true} #69#return; {23348#true} is VALID [2018-11-14 18:56:51,669 INFO L256 TraceCheckUtils]: 4: Hoare triple {23348#true} call #t~ret12 := main(); {23348#true} is VALID [2018-11-14 18:56:51,670 INFO L273 TraceCheckUtils]: 5: Hoare triple {23348#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {23350#(= main_~i~1 0)} is VALID [2018-11-14 18:56:51,670 INFO L273 TraceCheckUtils]: 6: Hoare triple {23350#(= main_~i~1 0)} assume true; {23350#(= main_~i~1 0)} is VALID [2018-11-14 18:56:51,670 INFO L273 TraceCheckUtils]: 7: Hoare triple {23350#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23350#(= main_~i~1 0)} is VALID [2018-11-14 18:56:51,671 INFO L273 TraceCheckUtils]: 8: Hoare triple {23350#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:51,672 INFO L273 TraceCheckUtils]: 9: Hoare triple {23351#(<= main_~i~1 1)} assume true; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:51,672 INFO L273 TraceCheckUtils]: 10: Hoare triple {23351#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:51,673 INFO L273 TraceCheckUtils]: 11: Hoare triple {23351#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:51,673 INFO L273 TraceCheckUtils]: 12: Hoare triple {23352#(<= main_~i~1 2)} assume true; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:51,674 INFO L273 TraceCheckUtils]: 13: Hoare triple {23352#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:51,674 INFO L273 TraceCheckUtils]: 14: Hoare triple {23352#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:51,675 INFO L273 TraceCheckUtils]: 15: Hoare triple {23353#(<= main_~i~1 3)} assume true; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:51,675 INFO L273 TraceCheckUtils]: 16: Hoare triple {23353#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:51,676 INFO L273 TraceCheckUtils]: 17: Hoare triple {23353#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:51,676 INFO L273 TraceCheckUtils]: 18: Hoare triple {23354#(<= main_~i~1 4)} assume true; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:51,677 INFO L273 TraceCheckUtils]: 19: Hoare triple {23354#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:51,677 INFO L273 TraceCheckUtils]: 20: Hoare triple {23354#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:51,678 INFO L273 TraceCheckUtils]: 21: Hoare triple {23355#(<= main_~i~1 5)} assume true; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:51,678 INFO L273 TraceCheckUtils]: 22: Hoare triple {23355#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:51,679 INFO L273 TraceCheckUtils]: 23: Hoare triple {23355#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:51,680 INFO L273 TraceCheckUtils]: 24: Hoare triple {23356#(<= main_~i~1 6)} assume true; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:51,680 INFO L273 TraceCheckUtils]: 25: Hoare triple {23356#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:51,681 INFO L273 TraceCheckUtils]: 26: Hoare triple {23356#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:51,681 INFO L273 TraceCheckUtils]: 27: Hoare triple {23357#(<= main_~i~1 7)} assume true; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:51,682 INFO L273 TraceCheckUtils]: 28: Hoare triple {23357#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:51,682 INFO L273 TraceCheckUtils]: 29: Hoare triple {23357#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:51,683 INFO L273 TraceCheckUtils]: 30: Hoare triple {23358#(<= main_~i~1 8)} assume true; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:51,683 INFO L273 TraceCheckUtils]: 31: Hoare triple {23358#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:51,684 INFO L273 TraceCheckUtils]: 32: Hoare triple {23358#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:51,684 INFO L273 TraceCheckUtils]: 33: Hoare triple {23359#(<= main_~i~1 9)} assume true; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:51,685 INFO L273 TraceCheckUtils]: 34: Hoare triple {23359#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:51,686 INFO L273 TraceCheckUtils]: 35: Hoare triple {23359#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:51,686 INFO L273 TraceCheckUtils]: 36: Hoare triple {23360#(<= main_~i~1 10)} assume true; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:51,686 INFO L273 TraceCheckUtils]: 37: Hoare triple {23360#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:51,687 INFO L273 TraceCheckUtils]: 38: Hoare triple {23360#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:51,688 INFO L273 TraceCheckUtils]: 39: Hoare triple {23361#(<= main_~i~1 11)} assume true; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:51,688 INFO L273 TraceCheckUtils]: 40: Hoare triple {23361#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:51,689 INFO L273 TraceCheckUtils]: 41: Hoare triple {23361#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:51,689 INFO L273 TraceCheckUtils]: 42: Hoare triple {23362#(<= main_~i~1 12)} assume true; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:51,690 INFO L273 TraceCheckUtils]: 43: Hoare triple {23362#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:51,690 INFO L273 TraceCheckUtils]: 44: Hoare triple {23362#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:51,691 INFO L273 TraceCheckUtils]: 45: Hoare triple {23363#(<= main_~i~1 13)} assume true; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:51,691 INFO L273 TraceCheckUtils]: 46: Hoare triple {23363#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:51,692 INFO L273 TraceCheckUtils]: 47: Hoare triple {23363#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:51,692 INFO L273 TraceCheckUtils]: 48: Hoare triple {23364#(<= main_~i~1 14)} assume true; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:51,693 INFO L273 TraceCheckUtils]: 49: Hoare triple {23364#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:51,694 INFO L273 TraceCheckUtils]: 50: Hoare triple {23364#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:51,694 INFO L273 TraceCheckUtils]: 51: Hoare triple {23365#(<= main_~i~1 15)} assume true; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:51,695 INFO L273 TraceCheckUtils]: 52: Hoare triple {23365#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:51,695 INFO L273 TraceCheckUtils]: 53: Hoare triple {23365#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:51,696 INFO L273 TraceCheckUtils]: 54: Hoare triple {23366#(<= main_~i~1 16)} assume true; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:51,696 INFO L273 TraceCheckUtils]: 55: Hoare triple {23366#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:51,697 INFO L273 TraceCheckUtils]: 56: Hoare triple {23366#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:51,697 INFO L273 TraceCheckUtils]: 57: Hoare triple {23367#(<= main_~i~1 17)} assume true; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:51,698 INFO L273 TraceCheckUtils]: 58: Hoare triple {23367#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:51,698 INFO L273 TraceCheckUtils]: 59: Hoare triple {23367#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:51,699 INFO L273 TraceCheckUtils]: 60: Hoare triple {23368#(<= main_~i~1 18)} assume true; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:51,699 INFO L273 TraceCheckUtils]: 61: Hoare triple {23368#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:51,700 INFO L273 TraceCheckUtils]: 62: Hoare triple {23368#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:51,700 INFO L273 TraceCheckUtils]: 63: Hoare triple {23369#(<= main_~i~1 19)} assume true; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:51,701 INFO L273 TraceCheckUtils]: 64: Hoare triple {23369#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:51,702 INFO L273 TraceCheckUtils]: 65: Hoare triple {23369#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:51,702 INFO L273 TraceCheckUtils]: 66: Hoare triple {23370#(<= main_~i~1 20)} assume true; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:51,703 INFO L273 TraceCheckUtils]: 67: Hoare triple {23370#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:51,703 INFO L273 TraceCheckUtils]: 68: Hoare triple {23370#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:51,704 INFO L273 TraceCheckUtils]: 69: Hoare triple {23371#(<= main_~i~1 21)} assume true; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:51,704 INFO L273 TraceCheckUtils]: 70: Hoare triple {23371#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:51,705 INFO L273 TraceCheckUtils]: 71: Hoare triple {23371#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:51,705 INFO L273 TraceCheckUtils]: 72: Hoare triple {23372#(<= main_~i~1 22)} assume true; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:51,706 INFO L273 TraceCheckUtils]: 73: Hoare triple {23372#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:51,707 INFO L273 TraceCheckUtils]: 74: Hoare triple {23372#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:51,707 INFO L273 TraceCheckUtils]: 75: Hoare triple {23373#(<= main_~i~1 23)} assume true; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:51,708 INFO L273 TraceCheckUtils]: 76: Hoare triple {23373#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:51,708 INFO L273 TraceCheckUtils]: 77: Hoare triple {23373#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:51,709 INFO L273 TraceCheckUtils]: 78: Hoare triple {23374#(<= main_~i~1 24)} assume true; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:51,709 INFO L273 TraceCheckUtils]: 79: Hoare triple {23374#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:51,710 INFO L273 TraceCheckUtils]: 80: Hoare triple {23374#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:51,710 INFO L273 TraceCheckUtils]: 81: Hoare triple {23375#(<= main_~i~1 25)} assume true; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:51,711 INFO L273 TraceCheckUtils]: 82: Hoare triple {23375#(<= main_~i~1 25)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:51,712 INFO L273 TraceCheckUtils]: 83: Hoare triple {23375#(<= main_~i~1 25)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23376#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:51,712 INFO L273 TraceCheckUtils]: 84: Hoare triple {23376#(<= main_~i~1 26)} assume true; {23376#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:51,713 INFO L273 TraceCheckUtils]: 85: Hoare triple {23376#(<= main_~i~1 26)} assume !(~i~1 < 10000); {23349#false} is VALID [2018-11-14 18:56:51,713 INFO L256 TraceCheckUtils]: 86: Hoare triple {23349#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {23348#true} is VALID [2018-11-14 18:56:51,713 INFO L273 TraceCheckUtils]: 87: Hoare triple {23348#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23348#true} is VALID [2018-11-14 18:56:51,713 INFO L273 TraceCheckUtils]: 88: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,713 INFO L273 TraceCheckUtils]: 89: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,714 INFO L273 TraceCheckUtils]: 90: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,714 INFO L273 TraceCheckUtils]: 91: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,714 INFO L273 TraceCheckUtils]: 92: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,714 INFO L273 TraceCheckUtils]: 93: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,714 INFO L273 TraceCheckUtils]: 94: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,714 INFO L273 TraceCheckUtils]: 95: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,714 INFO L273 TraceCheckUtils]: 96: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 97: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 98: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 99: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 100: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 101: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 102: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 103: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 104: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,715 INFO L273 TraceCheckUtils]: 105: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 106: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 107: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 108: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 109: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 110: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 111: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 112: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 113: Hoare triple {23348#true} assume !(~i~0 < 10000); {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 114: Hoare triple {23348#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {23348#true} is VALID [2018-11-14 18:56:51,716 INFO L273 TraceCheckUtils]: 115: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,717 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {23348#true} {23349#false} #73#return; {23349#false} is VALID [2018-11-14 18:56:51,717 INFO L273 TraceCheckUtils]: 117: Hoare triple {23349#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {23349#false} is VALID [2018-11-14 18:56:51,717 INFO L256 TraceCheckUtils]: 118: Hoare triple {23349#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {23348#true} is VALID [2018-11-14 18:56:51,717 INFO L273 TraceCheckUtils]: 119: Hoare triple {23348#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23348#true} is VALID [2018-11-14 18:56:51,717 INFO L273 TraceCheckUtils]: 120: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,717 INFO L273 TraceCheckUtils]: 121: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,717 INFO L273 TraceCheckUtils]: 122: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,717 INFO L273 TraceCheckUtils]: 123: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,717 INFO L273 TraceCheckUtils]: 124: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 125: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 126: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 127: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 128: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 129: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 130: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 131: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 132: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 133: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,718 INFO L273 TraceCheckUtils]: 134: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 135: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 136: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 137: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 138: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 139: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 140: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 141: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 142: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 143: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,719 INFO L273 TraceCheckUtils]: 144: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 145: Hoare triple {23348#true} assume !(~i~0 < 10000); {23348#true} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 146: Hoare triple {23348#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {23348#true} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 147: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,720 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {23348#true} {23349#false} #75#return; {23349#false} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 149: Hoare triple {23349#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {23349#false} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 150: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 151: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 152: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 153: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,720 INFO L273 TraceCheckUtils]: 154: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 155: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 156: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 157: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 158: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 159: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 160: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 161: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 162: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 163: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:51,721 INFO L273 TraceCheckUtils]: 164: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 165: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 166: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 167: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 168: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 169: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 170: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 171: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 172: Hoare triple {23349#false} assume !(~i~2 < 9999); {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L273 TraceCheckUtils]: 173: Hoare triple {23349#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {23349#false} is VALID [2018-11-14 18:56:51,722 INFO L256 TraceCheckUtils]: 174: Hoare triple {23349#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 175: Hoare triple {23348#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 176: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 177: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 178: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 179: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 180: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 181: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 182: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,723 INFO L273 TraceCheckUtils]: 183: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 184: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 185: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 186: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 187: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 188: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 189: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 190: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 191: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 192: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,724 INFO L273 TraceCheckUtils]: 193: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 194: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 195: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 196: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 197: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 198: Hoare triple {23348#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 199: Hoare triple {23348#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 200: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 201: Hoare triple {23348#true} assume !(~i~0 < 10000); {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 202: Hoare triple {23348#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {23348#true} is VALID [2018-11-14 18:56:51,725 INFO L273 TraceCheckUtils]: 203: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:51,726 INFO L268 TraceCheckUtils]: 204: Hoare quadruple {23348#true} {23349#false} #77#return; {23349#false} is VALID [2018-11-14 18:56:51,726 INFO L273 TraceCheckUtils]: 205: Hoare triple {23349#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {23349#false} is VALID [2018-11-14 18:56:51,726 INFO L273 TraceCheckUtils]: 206: Hoare triple {23349#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23349#false} is VALID [2018-11-14 18:56:51,726 INFO L273 TraceCheckUtils]: 207: Hoare triple {23349#false} assume !false; {23349#false} is VALID [2018-11-14 18:56:51,746 INFO L134 CoverageAnalysis]: Checked inductivity of 2094 backedges. 0 proven. 1027 refuted. 0 times theorem prover too weak. 1067 trivial. 0 not checked. [2018-11-14 18:56:51,746 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:51,746 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 28 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 28 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:51,755 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 18:56:51,829 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 18:56:51,829 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:51,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:51,866 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:52,161 INFO L256 TraceCheckUtils]: 0: Hoare triple {23348#true} call ULTIMATE.init(); {23348#true} is VALID [2018-11-14 18:56:52,161 INFO L273 TraceCheckUtils]: 1: Hoare triple {23348#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {23348#true} is VALID [2018-11-14 18:56:52,162 INFO L273 TraceCheckUtils]: 2: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 18:56:52,162 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23348#true} {23348#true} #69#return; {23348#true} is VALID [2018-11-14 18:56:52,162 INFO L256 TraceCheckUtils]: 4: Hoare triple {23348#true} call #t~ret12 := main(); {23348#true} is VALID [2018-11-14 18:56:52,163 INFO L273 TraceCheckUtils]: 5: Hoare triple {23348#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {23395#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:52,163 INFO L273 TraceCheckUtils]: 6: Hoare triple {23395#(<= main_~i~1 0)} assume true; {23395#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:52,164 INFO L273 TraceCheckUtils]: 7: Hoare triple {23395#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23395#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:52,164 INFO L273 TraceCheckUtils]: 8: Hoare triple {23395#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:52,164 INFO L273 TraceCheckUtils]: 9: Hoare triple {23351#(<= main_~i~1 1)} assume true; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:52,165 INFO L273 TraceCheckUtils]: 10: Hoare triple {23351#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:52,165 INFO L273 TraceCheckUtils]: 11: Hoare triple {23351#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:52,165 INFO L273 TraceCheckUtils]: 12: Hoare triple {23352#(<= main_~i~1 2)} assume true; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:52,166 INFO L273 TraceCheckUtils]: 13: Hoare triple {23352#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:52,167 INFO L273 TraceCheckUtils]: 14: Hoare triple {23352#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:52,167 INFO L273 TraceCheckUtils]: 15: Hoare triple {23353#(<= main_~i~1 3)} assume true; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:52,168 INFO L273 TraceCheckUtils]: 16: Hoare triple {23353#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:52,168 INFO L273 TraceCheckUtils]: 17: Hoare triple {23353#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:52,169 INFO L273 TraceCheckUtils]: 18: Hoare triple {23354#(<= main_~i~1 4)} assume true; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:52,169 INFO L273 TraceCheckUtils]: 19: Hoare triple {23354#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:52,170 INFO L273 TraceCheckUtils]: 20: Hoare triple {23354#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:52,171 INFO L273 TraceCheckUtils]: 21: Hoare triple {23355#(<= main_~i~1 5)} assume true; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:52,171 INFO L273 TraceCheckUtils]: 22: Hoare triple {23355#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:52,172 INFO L273 TraceCheckUtils]: 23: Hoare triple {23355#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:52,172 INFO L273 TraceCheckUtils]: 24: Hoare triple {23356#(<= main_~i~1 6)} assume true; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:52,173 INFO L273 TraceCheckUtils]: 25: Hoare triple {23356#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:52,174 INFO L273 TraceCheckUtils]: 26: Hoare triple {23356#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:52,174 INFO L273 TraceCheckUtils]: 27: Hoare triple {23357#(<= main_~i~1 7)} assume true; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:52,174 INFO L273 TraceCheckUtils]: 28: Hoare triple {23357#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:52,175 INFO L273 TraceCheckUtils]: 29: Hoare triple {23357#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:52,176 INFO L273 TraceCheckUtils]: 30: Hoare triple {23358#(<= main_~i~1 8)} assume true; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:52,176 INFO L273 TraceCheckUtils]: 31: Hoare triple {23358#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:52,177 INFO L273 TraceCheckUtils]: 32: Hoare triple {23358#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:52,177 INFO L273 TraceCheckUtils]: 33: Hoare triple {23359#(<= main_~i~1 9)} assume true; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:52,178 INFO L273 TraceCheckUtils]: 34: Hoare triple {23359#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:52,178 INFO L273 TraceCheckUtils]: 35: Hoare triple {23359#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:52,179 INFO L273 TraceCheckUtils]: 36: Hoare triple {23360#(<= main_~i~1 10)} assume true; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:52,179 INFO L273 TraceCheckUtils]: 37: Hoare triple {23360#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:52,180 INFO L273 TraceCheckUtils]: 38: Hoare triple {23360#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:52,180 INFO L273 TraceCheckUtils]: 39: Hoare triple {23361#(<= main_~i~1 11)} assume true; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:52,181 INFO L273 TraceCheckUtils]: 40: Hoare triple {23361#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:52,182 INFO L273 TraceCheckUtils]: 41: Hoare triple {23361#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:52,182 INFO L273 TraceCheckUtils]: 42: Hoare triple {23362#(<= main_~i~1 12)} assume true; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:52,183 INFO L273 TraceCheckUtils]: 43: Hoare triple {23362#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:52,183 INFO L273 TraceCheckUtils]: 44: Hoare triple {23362#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:52,184 INFO L273 TraceCheckUtils]: 45: Hoare triple {23363#(<= main_~i~1 13)} assume true; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:52,184 INFO L273 TraceCheckUtils]: 46: Hoare triple {23363#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:52,185 INFO L273 TraceCheckUtils]: 47: Hoare triple {23363#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:52,185 INFO L273 TraceCheckUtils]: 48: Hoare triple {23364#(<= main_~i~1 14)} assume true; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:52,186 INFO L273 TraceCheckUtils]: 49: Hoare triple {23364#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:52,186 INFO L273 TraceCheckUtils]: 50: Hoare triple {23364#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:52,187 INFO L273 TraceCheckUtils]: 51: Hoare triple {23365#(<= main_~i~1 15)} assume true; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:52,187 INFO L273 TraceCheckUtils]: 52: Hoare triple {23365#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:52,188 INFO L273 TraceCheckUtils]: 53: Hoare triple {23365#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:52,189 INFO L273 TraceCheckUtils]: 54: Hoare triple {23366#(<= main_~i~1 16)} assume true; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:52,189 INFO L273 TraceCheckUtils]: 55: Hoare triple {23366#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:52,190 INFO L273 TraceCheckUtils]: 56: Hoare triple {23366#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:52,190 INFO L273 TraceCheckUtils]: 57: Hoare triple {23367#(<= main_~i~1 17)} assume true; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:52,191 INFO L273 TraceCheckUtils]: 58: Hoare triple {23367#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:52,191 INFO L273 TraceCheckUtils]: 59: Hoare triple {23367#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:52,192 INFO L273 TraceCheckUtils]: 60: Hoare triple {23368#(<= main_~i~1 18)} assume true; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:52,192 INFO L273 TraceCheckUtils]: 61: Hoare triple {23368#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:52,193 INFO L273 TraceCheckUtils]: 62: Hoare triple {23368#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:52,193 INFO L273 TraceCheckUtils]: 63: Hoare triple {23369#(<= main_~i~1 19)} assume true; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:52,194 INFO L273 TraceCheckUtils]: 64: Hoare triple {23369#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:52,195 INFO L273 TraceCheckUtils]: 65: Hoare triple {23369#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:52,195 INFO L273 TraceCheckUtils]: 66: Hoare triple {23370#(<= main_~i~1 20)} assume true; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:52,196 INFO L273 TraceCheckUtils]: 67: Hoare triple {23370#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:52,196 INFO L273 TraceCheckUtils]: 68: Hoare triple {23370#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:52,197 INFO L273 TraceCheckUtils]: 69: Hoare triple {23371#(<= main_~i~1 21)} assume true; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:52,197 INFO L273 TraceCheckUtils]: 70: Hoare triple {23371#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:52,198 INFO L273 TraceCheckUtils]: 71: Hoare triple {23371#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:52,198 INFO L273 TraceCheckUtils]: 72: Hoare triple {23372#(<= main_~i~1 22)} assume true; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:52,199 INFO L273 TraceCheckUtils]: 73: Hoare triple {23372#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:52,199 INFO L273 TraceCheckUtils]: 74: Hoare triple {23372#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:52,200 INFO L273 TraceCheckUtils]: 75: Hoare triple {23373#(<= main_~i~1 23)} assume true; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:52,200 INFO L273 TraceCheckUtils]: 76: Hoare triple {23373#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:52,201 INFO L273 TraceCheckUtils]: 77: Hoare triple {23373#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:52,202 INFO L273 TraceCheckUtils]: 78: Hoare triple {23374#(<= main_~i~1 24)} assume true; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:52,202 INFO L273 TraceCheckUtils]: 79: Hoare triple {23374#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:52,203 INFO L273 TraceCheckUtils]: 80: Hoare triple {23374#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:52,203 INFO L273 TraceCheckUtils]: 81: Hoare triple {23375#(<= main_~i~1 25)} assume true; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:52,204 INFO L273 TraceCheckUtils]: 82: Hoare triple {23375#(<= main_~i~1 25)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:52,204 INFO L273 TraceCheckUtils]: 83: Hoare triple {23375#(<= main_~i~1 25)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {23376#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:52,205 INFO L273 TraceCheckUtils]: 84: Hoare triple {23376#(<= main_~i~1 26)} assume true; {23376#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:52,205 INFO L273 TraceCheckUtils]: 85: Hoare triple {23376#(<= main_~i~1 26)} assume !(~i~1 < 10000); {23349#false} is VALID [2018-11-14 18:56:52,206 INFO L256 TraceCheckUtils]: 86: Hoare triple {23349#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {23349#false} is VALID [2018-11-14 18:56:52,206 INFO L273 TraceCheckUtils]: 87: Hoare triple {23349#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23349#false} is VALID [2018-11-14 18:56:52,206 INFO L273 TraceCheckUtils]: 88: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,206 INFO L273 TraceCheckUtils]: 89: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,206 INFO L273 TraceCheckUtils]: 90: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,206 INFO L273 TraceCheckUtils]: 91: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,207 INFO L273 TraceCheckUtils]: 92: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,207 INFO L273 TraceCheckUtils]: 93: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,207 INFO L273 TraceCheckUtils]: 94: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,207 INFO L273 TraceCheckUtils]: 95: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,207 INFO L273 TraceCheckUtils]: 96: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,207 INFO L273 TraceCheckUtils]: 97: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,208 INFO L273 TraceCheckUtils]: 98: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,208 INFO L273 TraceCheckUtils]: 99: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,208 INFO L273 TraceCheckUtils]: 100: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,208 INFO L273 TraceCheckUtils]: 101: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,208 INFO L273 TraceCheckUtils]: 102: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,208 INFO L273 TraceCheckUtils]: 103: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 104: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 105: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 106: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 107: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 108: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 109: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 110: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 111: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 112: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,209 INFO L273 TraceCheckUtils]: 113: Hoare triple {23349#false} assume !(~i~0 < 10000); {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L273 TraceCheckUtils]: 114: Hoare triple {23349#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L273 TraceCheckUtils]: 115: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {23349#false} {23349#false} #73#return; {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L273 TraceCheckUtils]: 117: Hoare triple {23349#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L256 TraceCheckUtils]: 118: Hoare triple {23349#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L273 TraceCheckUtils]: 119: Hoare triple {23349#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L273 TraceCheckUtils]: 120: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L273 TraceCheckUtils]: 121: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,210 INFO L273 TraceCheckUtils]: 122: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 123: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 124: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 125: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 126: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 127: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 128: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 129: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 130: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 131: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,211 INFO L273 TraceCheckUtils]: 132: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 133: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 134: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 135: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 136: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 137: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 138: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 139: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 140: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 141: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,212 INFO L273 TraceCheckUtils]: 142: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 143: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 144: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 145: Hoare triple {23349#false} assume !(~i~0 < 10000); {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 146: Hoare triple {23349#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 147: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {23349#false} {23349#false} #75#return; {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 149: Hoare triple {23349#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 150: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,213 INFO L273 TraceCheckUtils]: 151: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 152: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 153: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 154: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 155: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 156: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 157: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 158: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 159: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 160: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:52,214 INFO L273 TraceCheckUtils]: 161: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 162: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 163: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 164: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 165: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 166: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 167: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 168: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 169: Hoare triple {23349#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 170: Hoare triple {23349#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {23349#false} is VALID [2018-11-14 18:56:52,215 INFO L273 TraceCheckUtils]: 171: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 172: Hoare triple {23349#false} assume !(~i~2 < 9999); {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 173: Hoare triple {23349#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L256 TraceCheckUtils]: 174: Hoare triple {23349#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 175: Hoare triple {23349#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 176: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 177: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 178: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 179: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 180: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,216 INFO L273 TraceCheckUtils]: 181: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 182: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 183: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 184: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 185: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 186: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 187: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 188: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 189: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 190: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,217 INFO L273 TraceCheckUtils]: 191: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 192: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 193: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 194: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 195: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 196: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 197: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 198: Hoare triple {23349#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 199: Hoare triple {23349#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 200: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,218 INFO L273 TraceCheckUtils]: 201: Hoare triple {23349#false} assume !(~i~0 < 10000); {23349#false} is VALID [2018-11-14 18:56:52,219 INFO L273 TraceCheckUtils]: 202: Hoare triple {23349#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {23349#false} is VALID [2018-11-14 18:56:52,219 INFO L273 TraceCheckUtils]: 203: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 18:56:52,219 INFO L268 TraceCheckUtils]: 204: Hoare quadruple {23349#false} {23349#false} #77#return; {23349#false} is VALID [2018-11-14 18:56:52,219 INFO L273 TraceCheckUtils]: 205: Hoare triple {23349#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {23349#false} is VALID [2018-11-14 18:56:52,219 INFO L273 TraceCheckUtils]: 206: Hoare triple {23349#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23349#false} is VALID [2018-11-14 18:56:52,219 INFO L273 TraceCheckUtils]: 207: Hoare triple {23349#false} assume !false; {23349#false} is VALID [2018-11-14 18:56:52,240 INFO L134 CoverageAnalysis]: Checked inductivity of 2094 backedges. 0 proven. 1027 refuted. 0 times theorem prover too weak. 1067 trivial. 0 not checked. [2018-11-14 18:56:52,260 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:52,260 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 29] total 30 [2018-11-14 18:56:52,260 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 208 [2018-11-14 18:56:52,261 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:52,261 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2018-11-14 18:56:52,380 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:52,380 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2018-11-14 18:56:52,380 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2018-11-14 18:56:52,381 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=435, Invalid=435, Unknown=0, NotChecked=0, Total=870 [2018-11-14 18:56:52,381 INFO L87 Difference]: Start difference. First operand 149 states and 153 transitions. Second operand 30 states. [2018-11-14 18:56:53,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:53,006 INFO L93 Difference]: Finished difference Result 216 states and 224 transitions. [2018-11-14 18:56:53,006 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-11-14 18:56:53,006 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 208 [2018-11-14 18:56:53,007 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:53,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 18:56:53,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 138 transitions. [2018-11-14 18:56:53,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 18:56:53,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 138 transitions. [2018-11-14 18:56:53,008 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 138 transitions. [2018-11-14 18:56:53,134 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:53,137 INFO L225 Difference]: With dead ends: 216 [2018-11-14 18:56:53,138 INFO L226 Difference]: Without dead ends: 153 [2018-11-14 18:56:53,139 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 236 GetRequests, 208 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=435, Invalid=435, Unknown=0, NotChecked=0, Total=870 [2018-11-14 18:56:53,139 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2018-11-14 18:56:53,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 152. [2018-11-14 18:56:53,179 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:53,179 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand 152 states. [2018-11-14 18:56:53,180 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand 152 states. [2018-11-14 18:56:53,180 INFO L87 Difference]: Start difference. First operand 153 states. Second operand 152 states. [2018-11-14 18:56:53,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:53,183 INFO L93 Difference]: Finished difference Result 153 states and 157 transitions. [2018-11-14 18:56:53,183 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 157 transitions. [2018-11-14 18:56:53,183 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:53,183 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:53,183 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand 153 states. [2018-11-14 18:56:53,183 INFO L87 Difference]: Start difference. First operand 152 states. Second operand 153 states. [2018-11-14 18:56:53,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:53,185 INFO L93 Difference]: Finished difference Result 153 states and 157 transitions. [2018-11-14 18:56:53,186 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 157 transitions. [2018-11-14 18:56:53,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:53,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:53,186 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:53,186 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:53,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 152 states. [2018-11-14 18:56:53,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 152 states to 152 states and 156 transitions. [2018-11-14 18:56:53,188 INFO L78 Accepts]: Start accepts. Automaton has 152 states and 156 transitions. Word has length 208 [2018-11-14 18:56:53,188 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:53,188 INFO L480 AbstractCegarLoop]: Abstraction has 152 states and 156 transitions. [2018-11-14 18:56:53,188 INFO L481 AbstractCegarLoop]: Interpolant automaton has 30 states. [2018-11-14 18:56:53,188 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 156 transitions. [2018-11-14 18:56:53,189 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 212 [2018-11-14 18:56:53,190 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:53,190 INFO L375 BasicCegarLoop]: trace histogram [28, 27, 27, 27, 24, 24, 8, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:53,190 INFO L423 AbstractCegarLoop]: === Iteration 31 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:53,190 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:53,190 INFO L82 PathProgramCache]: Analyzing trace with hash -641579889, now seen corresponding path program 27 times [2018-11-14 18:56:53,190 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:53,190 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:53,191 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:53,191 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:53,191 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:53,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:54,728 INFO L256 TraceCheckUtils]: 0: Hoare triple {24802#true} call ULTIMATE.init(); {24802#true} is VALID [2018-11-14 18:56:54,728 INFO L273 TraceCheckUtils]: 1: Hoare triple {24802#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {24802#true} is VALID [2018-11-14 18:56:54,728 INFO L273 TraceCheckUtils]: 2: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,728 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {24802#true} {24802#true} #69#return; {24802#true} is VALID [2018-11-14 18:56:54,729 INFO L256 TraceCheckUtils]: 4: Hoare triple {24802#true} call #t~ret12 := main(); {24802#true} is VALID [2018-11-14 18:56:54,729 INFO L273 TraceCheckUtils]: 5: Hoare triple {24802#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {24804#(= main_~i~1 0)} is VALID [2018-11-14 18:56:54,730 INFO L273 TraceCheckUtils]: 6: Hoare triple {24804#(= main_~i~1 0)} assume true; {24804#(= main_~i~1 0)} is VALID [2018-11-14 18:56:54,730 INFO L273 TraceCheckUtils]: 7: Hoare triple {24804#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24804#(= main_~i~1 0)} is VALID [2018-11-14 18:56:54,731 INFO L273 TraceCheckUtils]: 8: Hoare triple {24804#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24805#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:54,731 INFO L273 TraceCheckUtils]: 9: Hoare triple {24805#(<= main_~i~1 1)} assume true; {24805#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:54,732 INFO L273 TraceCheckUtils]: 10: Hoare triple {24805#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24805#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:54,732 INFO L273 TraceCheckUtils]: 11: Hoare triple {24805#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24806#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:54,733 INFO L273 TraceCheckUtils]: 12: Hoare triple {24806#(<= main_~i~1 2)} assume true; {24806#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:54,733 INFO L273 TraceCheckUtils]: 13: Hoare triple {24806#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24806#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:54,734 INFO L273 TraceCheckUtils]: 14: Hoare triple {24806#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24807#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:54,734 INFO L273 TraceCheckUtils]: 15: Hoare triple {24807#(<= main_~i~1 3)} assume true; {24807#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:54,735 INFO L273 TraceCheckUtils]: 16: Hoare triple {24807#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24807#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:54,736 INFO L273 TraceCheckUtils]: 17: Hoare triple {24807#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24808#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:54,736 INFO L273 TraceCheckUtils]: 18: Hoare triple {24808#(<= main_~i~1 4)} assume true; {24808#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:54,736 INFO L273 TraceCheckUtils]: 19: Hoare triple {24808#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24808#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:54,737 INFO L273 TraceCheckUtils]: 20: Hoare triple {24808#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24809#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:54,738 INFO L273 TraceCheckUtils]: 21: Hoare triple {24809#(<= main_~i~1 5)} assume true; {24809#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:54,738 INFO L273 TraceCheckUtils]: 22: Hoare triple {24809#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24809#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:54,739 INFO L273 TraceCheckUtils]: 23: Hoare triple {24809#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24810#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:54,739 INFO L273 TraceCheckUtils]: 24: Hoare triple {24810#(<= main_~i~1 6)} assume true; {24810#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:54,740 INFO L273 TraceCheckUtils]: 25: Hoare triple {24810#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24810#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:54,740 INFO L273 TraceCheckUtils]: 26: Hoare triple {24810#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24811#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:54,741 INFO L273 TraceCheckUtils]: 27: Hoare triple {24811#(<= main_~i~1 7)} assume true; {24811#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:54,741 INFO L273 TraceCheckUtils]: 28: Hoare triple {24811#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24811#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:54,742 INFO L273 TraceCheckUtils]: 29: Hoare triple {24811#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24812#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:54,742 INFO L273 TraceCheckUtils]: 30: Hoare triple {24812#(<= main_~i~1 8)} assume true; {24812#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:54,743 INFO L273 TraceCheckUtils]: 31: Hoare triple {24812#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24812#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:54,744 INFO L273 TraceCheckUtils]: 32: Hoare triple {24812#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24813#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:54,744 INFO L273 TraceCheckUtils]: 33: Hoare triple {24813#(<= main_~i~1 9)} assume true; {24813#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:54,744 INFO L273 TraceCheckUtils]: 34: Hoare triple {24813#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24813#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:54,745 INFO L273 TraceCheckUtils]: 35: Hoare triple {24813#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24814#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:54,746 INFO L273 TraceCheckUtils]: 36: Hoare triple {24814#(<= main_~i~1 10)} assume true; {24814#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:54,746 INFO L273 TraceCheckUtils]: 37: Hoare triple {24814#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24814#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:54,747 INFO L273 TraceCheckUtils]: 38: Hoare triple {24814#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24815#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:54,747 INFO L273 TraceCheckUtils]: 39: Hoare triple {24815#(<= main_~i~1 11)} assume true; {24815#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:54,748 INFO L273 TraceCheckUtils]: 40: Hoare triple {24815#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24815#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:54,748 INFO L273 TraceCheckUtils]: 41: Hoare triple {24815#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24816#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:54,749 INFO L273 TraceCheckUtils]: 42: Hoare triple {24816#(<= main_~i~1 12)} assume true; {24816#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:54,749 INFO L273 TraceCheckUtils]: 43: Hoare triple {24816#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24816#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:54,750 INFO L273 TraceCheckUtils]: 44: Hoare triple {24816#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24817#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:54,750 INFO L273 TraceCheckUtils]: 45: Hoare triple {24817#(<= main_~i~1 13)} assume true; {24817#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:54,751 INFO L273 TraceCheckUtils]: 46: Hoare triple {24817#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24817#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:54,752 INFO L273 TraceCheckUtils]: 47: Hoare triple {24817#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24818#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:54,752 INFO L273 TraceCheckUtils]: 48: Hoare triple {24818#(<= main_~i~1 14)} assume true; {24818#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:54,753 INFO L273 TraceCheckUtils]: 49: Hoare triple {24818#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24818#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:54,753 INFO L273 TraceCheckUtils]: 50: Hoare triple {24818#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24819#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:54,754 INFO L273 TraceCheckUtils]: 51: Hoare triple {24819#(<= main_~i~1 15)} assume true; {24819#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:54,754 INFO L273 TraceCheckUtils]: 52: Hoare triple {24819#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24819#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:54,755 INFO L273 TraceCheckUtils]: 53: Hoare triple {24819#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24820#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:54,755 INFO L273 TraceCheckUtils]: 54: Hoare triple {24820#(<= main_~i~1 16)} assume true; {24820#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:54,756 INFO L273 TraceCheckUtils]: 55: Hoare triple {24820#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24820#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:54,756 INFO L273 TraceCheckUtils]: 56: Hoare triple {24820#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24821#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:54,757 INFO L273 TraceCheckUtils]: 57: Hoare triple {24821#(<= main_~i~1 17)} assume true; {24821#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:54,757 INFO L273 TraceCheckUtils]: 58: Hoare triple {24821#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24821#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:54,758 INFO L273 TraceCheckUtils]: 59: Hoare triple {24821#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24822#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:54,758 INFO L273 TraceCheckUtils]: 60: Hoare triple {24822#(<= main_~i~1 18)} assume true; {24822#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:54,759 INFO L273 TraceCheckUtils]: 61: Hoare triple {24822#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24822#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:54,760 INFO L273 TraceCheckUtils]: 62: Hoare triple {24822#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24823#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:54,760 INFO L273 TraceCheckUtils]: 63: Hoare triple {24823#(<= main_~i~1 19)} assume true; {24823#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:54,761 INFO L273 TraceCheckUtils]: 64: Hoare triple {24823#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24823#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:54,761 INFO L273 TraceCheckUtils]: 65: Hoare triple {24823#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24824#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:54,762 INFO L273 TraceCheckUtils]: 66: Hoare triple {24824#(<= main_~i~1 20)} assume true; {24824#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:54,762 INFO L273 TraceCheckUtils]: 67: Hoare triple {24824#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24824#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:54,763 INFO L273 TraceCheckUtils]: 68: Hoare triple {24824#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24825#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:54,763 INFO L273 TraceCheckUtils]: 69: Hoare triple {24825#(<= main_~i~1 21)} assume true; {24825#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:54,764 INFO L273 TraceCheckUtils]: 70: Hoare triple {24825#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24825#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:54,764 INFO L273 TraceCheckUtils]: 71: Hoare triple {24825#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24826#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:54,765 INFO L273 TraceCheckUtils]: 72: Hoare triple {24826#(<= main_~i~1 22)} assume true; {24826#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:54,765 INFO L273 TraceCheckUtils]: 73: Hoare triple {24826#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24826#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:54,766 INFO L273 TraceCheckUtils]: 74: Hoare triple {24826#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24827#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:54,767 INFO L273 TraceCheckUtils]: 75: Hoare triple {24827#(<= main_~i~1 23)} assume true; {24827#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:54,767 INFO L273 TraceCheckUtils]: 76: Hoare triple {24827#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24827#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:54,768 INFO L273 TraceCheckUtils]: 77: Hoare triple {24827#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24828#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:54,768 INFO L273 TraceCheckUtils]: 78: Hoare triple {24828#(<= main_~i~1 24)} assume true; {24828#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:54,769 INFO L273 TraceCheckUtils]: 79: Hoare triple {24828#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24828#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:54,769 INFO L273 TraceCheckUtils]: 80: Hoare triple {24828#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24829#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:54,770 INFO L273 TraceCheckUtils]: 81: Hoare triple {24829#(<= main_~i~1 25)} assume true; {24829#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:54,770 INFO L273 TraceCheckUtils]: 82: Hoare triple {24829#(<= main_~i~1 25)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24829#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:54,771 INFO L273 TraceCheckUtils]: 83: Hoare triple {24829#(<= main_~i~1 25)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24830#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:54,771 INFO L273 TraceCheckUtils]: 84: Hoare triple {24830#(<= main_~i~1 26)} assume true; {24830#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:54,772 INFO L273 TraceCheckUtils]: 85: Hoare triple {24830#(<= main_~i~1 26)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24830#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:54,773 INFO L273 TraceCheckUtils]: 86: Hoare triple {24830#(<= main_~i~1 26)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24831#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:54,773 INFO L273 TraceCheckUtils]: 87: Hoare triple {24831#(<= main_~i~1 27)} assume true; {24831#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:54,774 INFO L273 TraceCheckUtils]: 88: Hoare triple {24831#(<= main_~i~1 27)} assume !(~i~1 < 10000); {24803#false} is VALID [2018-11-14 18:56:54,774 INFO L256 TraceCheckUtils]: 89: Hoare triple {24803#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {24802#true} is VALID [2018-11-14 18:56:54,774 INFO L273 TraceCheckUtils]: 90: Hoare triple {24802#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24802#true} is VALID [2018-11-14 18:56:54,774 INFO L273 TraceCheckUtils]: 91: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,774 INFO L273 TraceCheckUtils]: 92: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,774 INFO L273 TraceCheckUtils]: 93: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,775 INFO L273 TraceCheckUtils]: 94: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,775 INFO L273 TraceCheckUtils]: 95: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,775 INFO L273 TraceCheckUtils]: 96: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,775 INFO L273 TraceCheckUtils]: 97: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,775 INFO L273 TraceCheckUtils]: 98: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,775 INFO L273 TraceCheckUtils]: 99: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,776 INFO L273 TraceCheckUtils]: 100: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,776 INFO L273 TraceCheckUtils]: 101: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,776 INFO L273 TraceCheckUtils]: 102: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,776 INFO L273 TraceCheckUtils]: 103: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,776 INFO L273 TraceCheckUtils]: 104: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,776 INFO L273 TraceCheckUtils]: 105: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,777 INFO L273 TraceCheckUtils]: 106: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,777 INFO L273 TraceCheckUtils]: 107: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,777 INFO L273 TraceCheckUtils]: 108: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,777 INFO L273 TraceCheckUtils]: 109: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,777 INFO L273 TraceCheckUtils]: 110: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,777 INFO L273 TraceCheckUtils]: 111: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,777 INFO L273 TraceCheckUtils]: 112: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 113: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 114: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 115: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 116: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 117: Hoare triple {24802#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 118: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L268 TraceCheckUtils]: 119: Hoare quadruple {24802#true} {24803#false} #73#return; {24803#false} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 120: Hoare triple {24803#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {24803#false} is VALID [2018-11-14 18:56:54,778 INFO L256 TraceCheckUtils]: 121: Hoare triple {24803#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {24802#true} is VALID [2018-11-14 18:56:54,778 INFO L273 TraceCheckUtils]: 122: Hoare triple {24802#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 123: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 124: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 125: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 126: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 127: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 128: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 129: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 130: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,779 INFO L273 TraceCheckUtils]: 131: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 132: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 133: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 134: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 135: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 136: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 137: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 138: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 139: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 140: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,780 INFO L273 TraceCheckUtils]: 141: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 142: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 143: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 144: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 145: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 146: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 147: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 148: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 149: Hoare triple {24802#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L273 TraceCheckUtils]: 150: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,781 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {24802#true} {24803#false} #75#return; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 152: Hoare triple {24803#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 153: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 154: Hoare triple {24803#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 155: Hoare triple {24803#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 156: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 157: Hoare triple {24803#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 158: Hoare triple {24803#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 159: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 160: Hoare triple {24803#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24803#false} is VALID [2018-11-14 18:56:54,782 INFO L273 TraceCheckUtils]: 161: Hoare triple {24803#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 162: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 163: Hoare triple {24803#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 164: Hoare triple {24803#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 165: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 166: Hoare triple {24803#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 167: Hoare triple {24803#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 168: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 169: Hoare triple {24803#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 170: Hoare triple {24803#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24803#false} is VALID [2018-11-14 18:56:54,783 INFO L273 TraceCheckUtils]: 171: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 172: Hoare triple {24803#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {24803#false} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 173: Hoare triple {24803#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {24803#false} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 174: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 175: Hoare triple {24803#false} assume !(~i~2 < 9999); {24803#false} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 176: Hoare triple {24803#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {24803#false} is VALID [2018-11-14 18:56:54,784 INFO L256 TraceCheckUtils]: 177: Hoare triple {24803#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {24802#true} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 178: Hoare triple {24802#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24802#true} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 179: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 180: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,784 INFO L273 TraceCheckUtils]: 181: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 182: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 183: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 184: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 185: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 186: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 187: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 188: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 189: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 190: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,785 INFO L273 TraceCheckUtils]: 191: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 192: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 193: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 194: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 195: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 196: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 197: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 198: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 199: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,786 INFO L273 TraceCheckUtils]: 200: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 201: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 202: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 203: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 204: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 205: Hoare triple {24802#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {24802#true} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 206: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:54,787 INFO L268 TraceCheckUtils]: 207: Hoare quadruple {24802#true} {24803#false} #77#return; {24803#false} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 208: Hoare triple {24803#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {24803#false} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 209: Hoare triple {24803#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {24803#false} is VALID [2018-11-14 18:56:54,787 INFO L273 TraceCheckUtils]: 210: Hoare triple {24803#false} assume !false; {24803#false} is VALID [2018-11-14 18:56:54,808 INFO L134 CoverageAnalysis]: Checked inductivity of 2174 backedges. 0 proven. 1107 refuted. 0 times theorem prover too weak. 1067 trivial. 0 not checked. [2018-11-14 18:56:54,808 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:54,808 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 29 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 29 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:54,816 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 18:56:54,980 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2018-11-14 18:56:54,980 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:55,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:55,016 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:55,349 INFO L256 TraceCheckUtils]: 0: Hoare triple {24802#true} call ULTIMATE.init(); {24802#true} is VALID [2018-11-14 18:56:55,349 INFO L273 TraceCheckUtils]: 1: Hoare triple {24802#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {24802#true} is VALID [2018-11-14 18:56:55,349 INFO L273 TraceCheckUtils]: 2: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,349 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {24802#true} {24802#true} #69#return; {24802#true} is VALID [2018-11-14 18:56:55,350 INFO L256 TraceCheckUtils]: 4: Hoare triple {24802#true} call #t~ret12 := main(); {24802#true} is VALID [2018-11-14 18:56:55,350 INFO L273 TraceCheckUtils]: 5: Hoare triple {24802#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {24802#true} is VALID [2018-11-14 18:56:55,350 INFO L273 TraceCheckUtils]: 6: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,350 INFO L273 TraceCheckUtils]: 7: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,350 INFO L273 TraceCheckUtils]: 8: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,351 INFO L273 TraceCheckUtils]: 9: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,351 INFO L273 TraceCheckUtils]: 10: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,351 INFO L273 TraceCheckUtils]: 11: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,351 INFO L273 TraceCheckUtils]: 12: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,351 INFO L273 TraceCheckUtils]: 13: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,351 INFO L273 TraceCheckUtils]: 14: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 15: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 16: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 17: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 18: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 19: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 20: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 21: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 22: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 23: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,352 INFO L273 TraceCheckUtils]: 24: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 25: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 26: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 27: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 28: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 29: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 30: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 31: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 32: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,353 INFO L273 TraceCheckUtils]: 33: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 34: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 35: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 36: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 37: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 38: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 39: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 40: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 41: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 42: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,354 INFO L273 TraceCheckUtils]: 43: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 44: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 45: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 46: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 47: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 48: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 49: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 50: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 51: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 52: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,355 INFO L273 TraceCheckUtils]: 53: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 54: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 55: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 56: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 57: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 58: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 59: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 60: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 61: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,356 INFO L273 TraceCheckUtils]: 62: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 63: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 64: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 65: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 66: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 67: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 68: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 69: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 70: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 71: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,357 INFO L273 TraceCheckUtils]: 72: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 73: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 74: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 75: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 76: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 77: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 78: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 79: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 80: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 81: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,358 INFO L273 TraceCheckUtils]: 82: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 83: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 84: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 85: Hoare triple {24802#true} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 86: Hoare triple {24802#true} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 87: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 88: Hoare triple {24802#true} assume !(~i~1 < 10000); {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L256 TraceCheckUtils]: 89: Hoare triple {24802#true} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 90: Hoare triple {24802#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 91: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,359 INFO L273 TraceCheckUtils]: 92: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 93: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 94: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 95: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 96: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 97: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 98: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 99: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 100: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,360 INFO L273 TraceCheckUtils]: 101: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 102: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 103: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 104: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 105: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 106: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 107: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 108: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 109: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,361 INFO L273 TraceCheckUtils]: 110: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 111: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 112: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 113: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 114: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 115: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 116: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 117: Hoare triple {24802#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 118: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L268 TraceCheckUtils]: 119: Hoare quadruple {24802#true} {24802#true} #73#return; {24802#true} is VALID [2018-11-14 18:56:55,362 INFO L273 TraceCheckUtils]: 120: Hoare triple {24802#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L256 TraceCheckUtils]: 121: Hoare triple {24802#true} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 122: Hoare triple {24802#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 123: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 124: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 125: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 126: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 127: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 128: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 129: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,363 INFO L273 TraceCheckUtils]: 130: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 131: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 132: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 133: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 134: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 135: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 136: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 137: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 138: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 139: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,364 INFO L273 TraceCheckUtils]: 140: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 141: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 142: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 143: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 144: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 145: Hoare triple {24802#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 146: Hoare triple {24802#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 147: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 148: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 149: Hoare triple {24802#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {24802#true} is VALID [2018-11-14 18:56:55,365 INFO L273 TraceCheckUtils]: 150: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 18:56:55,366 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {24802#true} {24802#true} #75#return; {24802#true} is VALID [2018-11-14 18:56:55,366 INFO L273 TraceCheckUtils]: 152: Hoare triple {24802#true} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {25291#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:55,367 INFO L273 TraceCheckUtils]: 153: Hoare triple {25291#(<= main_~i~2 0)} assume true; {25291#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:55,367 INFO L273 TraceCheckUtils]: 154: Hoare triple {25291#(<= main_~i~2 0)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25291#(<= main_~i~2 0)} is VALID [2018-11-14 18:56:55,367 INFO L273 TraceCheckUtils]: 155: Hoare triple {25291#(<= main_~i~2 0)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25301#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:55,368 INFO L273 TraceCheckUtils]: 156: Hoare triple {25301#(<= main_~i~2 1)} assume true; {25301#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:55,368 INFO L273 TraceCheckUtils]: 157: Hoare triple {25301#(<= main_~i~2 1)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25301#(<= main_~i~2 1)} is VALID [2018-11-14 18:56:55,368 INFO L273 TraceCheckUtils]: 158: Hoare triple {25301#(<= main_~i~2 1)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25311#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:55,369 INFO L273 TraceCheckUtils]: 159: Hoare triple {25311#(<= main_~i~2 2)} assume true; {25311#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:55,369 INFO L273 TraceCheckUtils]: 160: Hoare triple {25311#(<= main_~i~2 2)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25311#(<= main_~i~2 2)} is VALID [2018-11-14 18:56:55,369 INFO L273 TraceCheckUtils]: 161: Hoare triple {25311#(<= main_~i~2 2)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25321#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:55,370 INFO L273 TraceCheckUtils]: 162: Hoare triple {25321#(<= main_~i~2 3)} assume true; {25321#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:55,370 INFO L273 TraceCheckUtils]: 163: Hoare triple {25321#(<= main_~i~2 3)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25321#(<= main_~i~2 3)} is VALID [2018-11-14 18:56:55,370 INFO L273 TraceCheckUtils]: 164: Hoare triple {25321#(<= main_~i~2 3)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25331#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:55,371 INFO L273 TraceCheckUtils]: 165: Hoare triple {25331#(<= main_~i~2 4)} assume true; {25331#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:55,371 INFO L273 TraceCheckUtils]: 166: Hoare triple {25331#(<= main_~i~2 4)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25331#(<= main_~i~2 4)} is VALID [2018-11-14 18:56:55,372 INFO L273 TraceCheckUtils]: 167: Hoare triple {25331#(<= main_~i~2 4)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25341#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:55,373 INFO L273 TraceCheckUtils]: 168: Hoare triple {25341#(<= main_~i~2 5)} assume true; {25341#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:55,373 INFO L273 TraceCheckUtils]: 169: Hoare triple {25341#(<= main_~i~2 5)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25341#(<= main_~i~2 5)} is VALID [2018-11-14 18:56:55,374 INFO L273 TraceCheckUtils]: 170: Hoare triple {25341#(<= main_~i~2 5)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25351#(<= main_~i~2 6)} is VALID [2018-11-14 18:56:55,374 INFO L273 TraceCheckUtils]: 171: Hoare triple {25351#(<= main_~i~2 6)} assume true; {25351#(<= main_~i~2 6)} is VALID [2018-11-14 18:56:55,375 INFO L273 TraceCheckUtils]: 172: Hoare triple {25351#(<= main_~i~2 6)} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {25351#(<= main_~i~2 6)} is VALID [2018-11-14 18:56:55,376 INFO L273 TraceCheckUtils]: 173: Hoare triple {25351#(<= main_~i~2 6)} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {25361#(<= main_~i~2 7)} is VALID [2018-11-14 18:56:55,376 INFO L273 TraceCheckUtils]: 174: Hoare triple {25361#(<= main_~i~2 7)} assume true; {25361#(<= main_~i~2 7)} is VALID [2018-11-14 18:56:55,377 INFO L273 TraceCheckUtils]: 175: Hoare triple {25361#(<= main_~i~2 7)} assume !(~i~2 < 9999); {24803#false} is VALID [2018-11-14 18:56:55,377 INFO L273 TraceCheckUtils]: 176: Hoare triple {24803#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {24803#false} is VALID [2018-11-14 18:56:55,377 INFO L256 TraceCheckUtils]: 177: Hoare triple {24803#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {24803#false} is VALID [2018-11-14 18:56:55,377 INFO L273 TraceCheckUtils]: 178: Hoare triple {24803#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {24803#false} is VALID [2018-11-14 18:56:55,378 INFO L273 TraceCheckUtils]: 179: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,378 INFO L273 TraceCheckUtils]: 180: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,378 INFO L273 TraceCheckUtils]: 181: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,378 INFO L273 TraceCheckUtils]: 182: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,378 INFO L273 TraceCheckUtils]: 183: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,378 INFO L273 TraceCheckUtils]: 184: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,379 INFO L273 TraceCheckUtils]: 185: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,379 INFO L273 TraceCheckUtils]: 186: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,379 INFO L273 TraceCheckUtils]: 187: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,379 INFO L273 TraceCheckUtils]: 188: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,379 INFO L273 TraceCheckUtils]: 189: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,379 INFO L273 TraceCheckUtils]: 190: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 191: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 192: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 193: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 194: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 195: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 196: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 197: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 198: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 199: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,380 INFO L273 TraceCheckUtils]: 200: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 201: Hoare triple {24803#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 202: Hoare triple {24803#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 203: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 204: Hoare triple {24803#false} assume !(~i~0 < 10000); {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 205: Hoare triple {24803#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 206: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L268 TraceCheckUtils]: 207: Hoare quadruple {24803#false} {24803#false} #77#return; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 208: Hoare triple {24803#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 209: Hoare triple {24803#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {24803#false} is VALID [2018-11-14 18:56:55,381 INFO L273 TraceCheckUtils]: 210: Hoare triple {24803#false} assume !false; {24803#false} is VALID [2018-11-14 18:56:55,399 INFO L134 CoverageAnalysis]: Checked inductivity of 2174 backedges. 460 proven. 77 refuted. 0 times theorem prover too weak. 1637 trivial. 0 not checked. [2018-11-14 18:56:55,420 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:55,420 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [30, 10] total 38 [2018-11-14 18:56:55,420 INFO L78 Accepts]: Start accepts. Automaton has 38 states. Word has length 211 [2018-11-14 18:56:55,421 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:55,421 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 38 states. [2018-11-14 18:56:55,648 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:55,649 INFO L459 AbstractCegarLoop]: Interpolant automaton has 38 states [2018-11-14 18:56:55,649 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 38 interpolants. [2018-11-14 18:56:55,650 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=479, Invalid=927, Unknown=0, NotChecked=0, Total=1406 [2018-11-14 18:56:55,650 INFO L87 Difference]: Start difference. First operand 152 states and 156 transitions. Second operand 38 states. [2018-11-14 18:56:56,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:56,693 INFO L93 Difference]: Finished difference Result 223 states and 232 transitions. [2018-11-14 18:56:56,693 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2018-11-14 18:56:56,693 INFO L78 Accepts]: Start accepts. Automaton has 38 states. Word has length 211 [2018-11-14 18:56:56,693 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:56,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-14 18:56:56,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 166 transitions. [2018-11-14 18:56:56,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-14 18:56:56,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 166 transitions. [2018-11-14 18:56:56,696 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 38 states and 166 transitions. [2018-11-14 18:56:56,840 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:56,844 INFO L225 Difference]: With dead ends: 223 [2018-11-14 18:56:56,844 INFO L226 Difference]: Without dead ends: 160 [2018-11-14 18:56:56,845 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 240 GetRequests, 204 SyntacticMatches, 0 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 216 ImplicationChecksByTransitivity, 1.3s TimeCoverageRelationStatistics Valid=479, Invalid=927, Unknown=0, NotChecked=0, Total=1406 [2018-11-14 18:56:56,845 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2018-11-14 18:56:56,938 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 158. [2018-11-14 18:56:56,938 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:56:56,938 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand 158 states. [2018-11-14 18:56:56,938 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand 158 states. [2018-11-14 18:56:56,938 INFO L87 Difference]: Start difference. First operand 160 states. Second operand 158 states. [2018-11-14 18:56:56,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:56,941 INFO L93 Difference]: Finished difference Result 160 states and 164 transitions. [2018-11-14 18:56:56,941 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 164 transitions. [2018-11-14 18:56:56,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:56,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:56,942 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand 160 states. [2018-11-14 18:56:56,942 INFO L87 Difference]: Start difference. First operand 158 states. Second operand 160 states. [2018-11-14 18:56:56,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:56,945 INFO L93 Difference]: Finished difference Result 160 states and 164 transitions. [2018-11-14 18:56:56,945 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 164 transitions. [2018-11-14 18:56:56,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:56:56,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:56:56,945 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:56:56,945 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:56:56,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 158 states. [2018-11-14 18:56:56,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 162 transitions. [2018-11-14 18:56:56,948 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 162 transitions. Word has length 211 [2018-11-14 18:56:56,948 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:56:56,949 INFO L480 AbstractCegarLoop]: Abstraction has 158 states and 162 transitions. [2018-11-14 18:56:56,949 INFO L481 AbstractCegarLoop]: Interpolant automaton has 38 states. [2018-11-14 18:56:56,949 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 162 transitions. [2018-11-14 18:56:56,950 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 218 [2018-11-14 18:56:56,950 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:56:56,950 INFO L375 BasicCegarLoop]: trace histogram [29, 28, 28, 27, 24, 24, 9, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:56:56,951 INFO L423 AbstractCegarLoop]: === Iteration 32 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:56:56,951 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:56:56,951 INFO L82 PathProgramCache]: Analyzing trace with hash -2035407757, now seen corresponding path program 28 times [2018-11-14 18:56:56,951 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:56:56,951 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:56:56,952 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:56,952 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:56:56,952 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:56:56,984 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:57,592 INFO L256 TraceCheckUtils]: 0: Hoare triple {26304#true} call ULTIMATE.init(); {26304#true} is VALID [2018-11-14 18:56:57,592 INFO L273 TraceCheckUtils]: 1: Hoare triple {26304#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {26304#true} is VALID [2018-11-14 18:56:57,592 INFO L273 TraceCheckUtils]: 2: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,592 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26304#true} {26304#true} #69#return; {26304#true} is VALID [2018-11-14 18:56:57,593 INFO L256 TraceCheckUtils]: 4: Hoare triple {26304#true} call #t~ret12 := main(); {26304#true} is VALID [2018-11-14 18:56:57,593 INFO L273 TraceCheckUtils]: 5: Hoare triple {26304#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {26306#(= main_~i~1 0)} is VALID [2018-11-14 18:56:57,594 INFO L273 TraceCheckUtils]: 6: Hoare triple {26306#(= main_~i~1 0)} assume true; {26306#(= main_~i~1 0)} is VALID [2018-11-14 18:56:57,594 INFO L273 TraceCheckUtils]: 7: Hoare triple {26306#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26306#(= main_~i~1 0)} is VALID [2018-11-14 18:56:57,595 INFO L273 TraceCheckUtils]: 8: Hoare triple {26306#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:57,595 INFO L273 TraceCheckUtils]: 9: Hoare triple {26307#(<= main_~i~1 1)} assume true; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:57,596 INFO L273 TraceCheckUtils]: 10: Hoare triple {26307#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:57,597 INFO L273 TraceCheckUtils]: 11: Hoare triple {26307#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:57,597 INFO L273 TraceCheckUtils]: 12: Hoare triple {26308#(<= main_~i~1 2)} assume true; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:57,598 INFO L273 TraceCheckUtils]: 13: Hoare triple {26308#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:57,598 INFO L273 TraceCheckUtils]: 14: Hoare triple {26308#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:57,599 INFO L273 TraceCheckUtils]: 15: Hoare triple {26309#(<= main_~i~1 3)} assume true; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:57,599 INFO L273 TraceCheckUtils]: 16: Hoare triple {26309#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:57,600 INFO L273 TraceCheckUtils]: 17: Hoare triple {26309#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:57,601 INFO L273 TraceCheckUtils]: 18: Hoare triple {26310#(<= main_~i~1 4)} assume true; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:57,601 INFO L273 TraceCheckUtils]: 19: Hoare triple {26310#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:57,602 INFO L273 TraceCheckUtils]: 20: Hoare triple {26310#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:57,602 INFO L273 TraceCheckUtils]: 21: Hoare triple {26311#(<= main_~i~1 5)} assume true; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:57,603 INFO L273 TraceCheckUtils]: 22: Hoare triple {26311#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:57,603 INFO L273 TraceCheckUtils]: 23: Hoare triple {26311#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:57,604 INFO L273 TraceCheckUtils]: 24: Hoare triple {26312#(<= main_~i~1 6)} assume true; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:57,604 INFO L273 TraceCheckUtils]: 25: Hoare triple {26312#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:57,605 INFO L273 TraceCheckUtils]: 26: Hoare triple {26312#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:57,606 INFO L273 TraceCheckUtils]: 27: Hoare triple {26313#(<= main_~i~1 7)} assume true; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:57,606 INFO L273 TraceCheckUtils]: 28: Hoare triple {26313#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:57,607 INFO L273 TraceCheckUtils]: 29: Hoare triple {26313#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:57,607 INFO L273 TraceCheckUtils]: 30: Hoare triple {26314#(<= main_~i~1 8)} assume true; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:57,608 INFO L273 TraceCheckUtils]: 31: Hoare triple {26314#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:57,609 INFO L273 TraceCheckUtils]: 32: Hoare triple {26314#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:57,609 INFO L273 TraceCheckUtils]: 33: Hoare triple {26315#(<= main_~i~1 9)} assume true; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:57,610 INFO L273 TraceCheckUtils]: 34: Hoare triple {26315#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:57,610 INFO L273 TraceCheckUtils]: 35: Hoare triple {26315#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:57,611 INFO L273 TraceCheckUtils]: 36: Hoare triple {26316#(<= main_~i~1 10)} assume true; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:57,611 INFO L273 TraceCheckUtils]: 37: Hoare triple {26316#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:57,612 INFO L273 TraceCheckUtils]: 38: Hoare triple {26316#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:57,613 INFO L273 TraceCheckUtils]: 39: Hoare triple {26317#(<= main_~i~1 11)} assume true; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:57,613 INFO L273 TraceCheckUtils]: 40: Hoare triple {26317#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:57,614 INFO L273 TraceCheckUtils]: 41: Hoare triple {26317#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:57,614 INFO L273 TraceCheckUtils]: 42: Hoare triple {26318#(<= main_~i~1 12)} assume true; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:57,615 INFO L273 TraceCheckUtils]: 43: Hoare triple {26318#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:57,615 INFO L273 TraceCheckUtils]: 44: Hoare triple {26318#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:57,616 INFO L273 TraceCheckUtils]: 45: Hoare triple {26319#(<= main_~i~1 13)} assume true; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:57,617 INFO L273 TraceCheckUtils]: 46: Hoare triple {26319#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:57,617 INFO L273 TraceCheckUtils]: 47: Hoare triple {26319#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:57,618 INFO L273 TraceCheckUtils]: 48: Hoare triple {26320#(<= main_~i~1 14)} assume true; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:57,618 INFO L273 TraceCheckUtils]: 49: Hoare triple {26320#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:57,619 INFO L273 TraceCheckUtils]: 50: Hoare triple {26320#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:57,619 INFO L273 TraceCheckUtils]: 51: Hoare triple {26321#(<= main_~i~1 15)} assume true; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:57,620 INFO L273 TraceCheckUtils]: 52: Hoare triple {26321#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:57,621 INFO L273 TraceCheckUtils]: 53: Hoare triple {26321#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:57,621 INFO L273 TraceCheckUtils]: 54: Hoare triple {26322#(<= main_~i~1 16)} assume true; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:57,622 INFO L273 TraceCheckUtils]: 55: Hoare triple {26322#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:57,622 INFO L273 TraceCheckUtils]: 56: Hoare triple {26322#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:57,623 INFO L273 TraceCheckUtils]: 57: Hoare triple {26323#(<= main_~i~1 17)} assume true; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:57,623 INFO L273 TraceCheckUtils]: 58: Hoare triple {26323#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:57,624 INFO L273 TraceCheckUtils]: 59: Hoare triple {26323#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:57,625 INFO L273 TraceCheckUtils]: 60: Hoare triple {26324#(<= main_~i~1 18)} assume true; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:57,625 INFO L273 TraceCheckUtils]: 61: Hoare triple {26324#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:57,626 INFO L273 TraceCheckUtils]: 62: Hoare triple {26324#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:57,626 INFO L273 TraceCheckUtils]: 63: Hoare triple {26325#(<= main_~i~1 19)} assume true; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:57,627 INFO L273 TraceCheckUtils]: 64: Hoare triple {26325#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:57,628 INFO L273 TraceCheckUtils]: 65: Hoare triple {26325#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:57,628 INFO L273 TraceCheckUtils]: 66: Hoare triple {26326#(<= main_~i~1 20)} assume true; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:57,629 INFO L273 TraceCheckUtils]: 67: Hoare triple {26326#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:57,629 INFO L273 TraceCheckUtils]: 68: Hoare triple {26326#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:57,630 INFO L273 TraceCheckUtils]: 69: Hoare triple {26327#(<= main_~i~1 21)} assume true; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:57,630 INFO L273 TraceCheckUtils]: 70: Hoare triple {26327#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:57,631 INFO L273 TraceCheckUtils]: 71: Hoare triple {26327#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:57,631 INFO L273 TraceCheckUtils]: 72: Hoare triple {26328#(<= main_~i~1 22)} assume true; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:57,632 INFO L273 TraceCheckUtils]: 73: Hoare triple {26328#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:57,632 INFO L273 TraceCheckUtils]: 74: Hoare triple {26328#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:57,633 INFO L273 TraceCheckUtils]: 75: Hoare triple {26329#(<= main_~i~1 23)} assume true; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:57,633 INFO L273 TraceCheckUtils]: 76: Hoare triple {26329#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:57,634 INFO L273 TraceCheckUtils]: 77: Hoare triple {26329#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:57,635 INFO L273 TraceCheckUtils]: 78: Hoare triple {26330#(<= main_~i~1 24)} assume true; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:57,635 INFO L273 TraceCheckUtils]: 79: Hoare triple {26330#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:57,636 INFO L273 TraceCheckUtils]: 80: Hoare triple {26330#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:57,636 INFO L273 TraceCheckUtils]: 81: Hoare triple {26331#(<= main_~i~1 25)} assume true; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:57,637 INFO L273 TraceCheckUtils]: 82: Hoare triple {26331#(<= main_~i~1 25)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:57,637 INFO L273 TraceCheckUtils]: 83: Hoare triple {26331#(<= main_~i~1 25)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:57,638 INFO L273 TraceCheckUtils]: 84: Hoare triple {26332#(<= main_~i~1 26)} assume true; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:57,638 INFO L273 TraceCheckUtils]: 85: Hoare triple {26332#(<= main_~i~1 26)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:57,639 INFO L273 TraceCheckUtils]: 86: Hoare triple {26332#(<= main_~i~1 26)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:57,640 INFO L273 TraceCheckUtils]: 87: Hoare triple {26333#(<= main_~i~1 27)} assume true; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:57,640 INFO L273 TraceCheckUtils]: 88: Hoare triple {26333#(<= main_~i~1 27)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:57,641 INFO L273 TraceCheckUtils]: 89: Hoare triple {26333#(<= main_~i~1 27)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26334#(<= main_~i~1 28)} is VALID [2018-11-14 18:56:57,641 INFO L273 TraceCheckUtils]: 90: Hoare triple {26334#(<= main_~i~1 28)} assume true; {26334#(<= main_~i~1 28)} is VALID [2018-11-14 18:56:57,642 INFO L273 TraceCheckUtils]: 91: Hoare triple {26334#(<= main_~i~1 28)} assume !(~i~1 < 10000); {26305#false} is VALID [2018-11-14 18:56:57,642 INFO L256 TraceCheckUtils]: 92: Hoare triple {26305#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {26304#true} is VALID [2018-11-14 18:56:57,642 INFO L273 TraceCheckUtils]: 93: Hoare triple {26304#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26304#true} is VALID [2018-11-14 18:56:57,642 INFO L273 TraceCheckUtils]: 94: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,643 INFO L273 TraceCheckUtils]: 95: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,643 INFO L273 TraceCheckUtils]: 96: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,643 INFO L273 TraceCheckUtils]: 97: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,643 INFO L273 TraceCheckUtils]: 98: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,643 INFO L273 TraceCheckUtils]: 99: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,643 INFO L273 TraceCheckUtils]: 100: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,644 INFO L273 TraceCheckUtils]: 101: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,644 INFO L273 TraceCheckUtils]: 102: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,644 INFO L273 TraceCheckUtils]: 103: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,644 INFO L273 TraceCheckUtils]: 104: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,644 INFO L273 TraceCheckUtils]: 105: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,644 INFO L273 TraceCheckUtils]: 106: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 107: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 108: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 109: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 110: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 111: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 112: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 113: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 114: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,645 INFO L273 TraceCheckUtils]: 115: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 116: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 117: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 118: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 119: Hoare triple {26304#true} assume !(~i~0 < 10000); {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 120: Hoare triple {26304#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 121: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {26304#true} {26305#false} #73#return; {26305#false} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 123: Hoare triple {26305#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {26305#false} is VALID [2018-11-14 18:56:57,646 INFO L256 TraceCheckUtils]: 124: Hoare triple {26305#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {26304#true} is VALID [2018-11-14 18:56:57,646 INFO L273 TraceCheckUtils]: 125: Hoare triple {26304#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 126: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 127: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 128: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 129: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 130: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 131: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 132: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 133: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 134: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,647 INFO L273 TraceCheckUtils]: 135: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 136: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 137: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 138: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 139: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 140: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 141: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 142: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 143: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,648 INFO L273 TraceCheckUtils]: 144: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 145: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 146: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 147: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 148: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 149: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 150: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 151: Hoare triple {26304#true} assume !(~i~0 < 10000); {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 152: Hoare triple {26304#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L273 TraceCheckUtils]: 153: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,649 INFO L268 TraceCheckUtils]: 154: Hoare quadruple {26304#true} {26305#false} #75#return; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 155: Hoare triple {26305#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 156: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 157: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 158: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 159: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 160: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 161: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 162: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 163: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,650 INFO L273 TraceCheckUtils]: 164: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 165: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 166: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 167: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 168: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 169: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 170: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 171: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 172: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,651 INFO L273 TraceCheckUtils]: 173: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 174: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 175: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 176: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 177: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 178: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 179: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 180: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 181: Hoare triple {26305#false} assume !(~i~2 < 9999); {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L273 TraceCheckUtils]: 182: Hoare triple {26305#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {26305#false} is VALID [2018-11-14 18:56:57,652 INFO L256 TraceCheckUtils]: 183: Hoare triple {26305#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 184: Hoare triple {26304#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 185: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 186: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 187: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 188: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 189: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 190: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 191: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,653 INFO L273 TraceCheckUtils]: 192: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 193: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 194: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 195: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 196: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 197: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 198: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 199: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 200: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 201: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,654 INFO L273 TraceCheckUtils]: 202: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 203: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 204: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 205: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 206: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 207: Hoare triple {26304#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 208: Hoare triple {26304#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 209: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 210: Hoare triple {26304#true} assume !(~i~0 < 10000); {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 211: Hoare triple {26304#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {26304#true} is VALID [2018-11-14 18:56:57,655 INFO L273 TraceCheckUtils]: 212: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:57,656 INFO L268 TraceCheckUtils]: 213: Hoare quadruple {26304#true} {26305#false} #77#return; {26305#false} is VALID [2018-11-14 18:56:57,656 INFO L273 TraceCheckUtils]: 214: Hoare triple {26305#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {26305#false} is VALID [2018-11-14 18:56:57,656 INFO L273 TraceCheckUtils]: 215: Hoare triple {26305#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26305#false} is VALID [2018-11-14 18:56:57,656 INFO L273 TraceCheckUtils]: 216: Hoare triple {26305#false} assume !false; {26305#false} is VALID [2018-11-14 18:56:57,678 INFO L134 CoverageAnalysis]: Checked inductivity of 2280 backedges. 0 proven. 1190 refuted. 0 times theorem prover too weak. 1090 trivial. 0 not checked. [2018-11-14 18:56:57,678 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:56:57,678 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 30 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 30 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:56:57,686 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 18:56:57,765 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 18:56:57,765 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 18:56:57,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:56:57,803 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 18:56:58,120 INFO L256 TraceCheckUtils]: 0: Hoare triple {26304#true} call ULTIMATE.init(); {26304#true} is VALID [2018-11-14 18:56:58,120 INFO L273 TraceCheckUtils]: 1: Hoare triple {26304#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {26304#true} is VALID [2018-11-14 18:56:58,120 INFO L273 TraceCheckUtils]: 2: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 18:56:58,120 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26304#true} {26304#true} #69#return; {26304#true} is VALID [2018-11-14 18:56:58,121 INFO L256 TraceCheckUtils]: 4: Hoare triple {26304#true} call #t~ret12 := main(); {26304#true} is VALID [2018-11-14 18:56:58,121 INFO L273 TraceCheckUtils]: 5: Hoare triple {26304#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {26353#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:58,122 INFO L273 TraceCheckUtils]: 6: Hoare triple {26353#(<= main_~i~1 0)} assume true; {26353#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:58,122 INFO L273 TraceCheckUtils]: 7: Hoare triple {26353#(<= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26353#(<= main_~i~1 0)} is VALID [2018-11-14 18:56:58,123 INFO L273 TraceCheckUtils]: 8: Hoare triple {26353#(<= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:58,123 INFO L273 TraceCheckUtils]: 9: Hoare triple {26307#(<= main_~i~1 1)} assume true; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:58,123 INFO L273 TraceCheckUtils]: 10: Hoare triple {26307#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 18:56:58,124 INFO L273 TraceCheckUtils]: 11: Hoare triple {26307#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:58,124 INFO L273 TraceCheckUtils]: 12: Hoare triple {26308#(<= main_~i~1 2)} assume true; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:58,124 INFO L273 TraceCheckUtils]: 13: Hoare triple {26308#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 18:56:58,125 INFO L273 TraceCheckUtils]: 14: Hoare triple {26308#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:58,126 INFO L273 TraceCheckUtils]: 15: Hoare triple {26309#(<= main_~i~1 3)} assume true; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:58,126 INFO L273 TraceCheckUtils]: 16: Hoare triple {26309#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 18:56:58,127 INFO L273 TraceCheckUtils]: 17: Hoare triple {26309#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:58,127 INFO L273 TraceCheckUtils]: 18: Hoare triple {26310#(<= main_~i~1 4)} assume true; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:58,128 INFO L273 TraceCheckUtils]: 19: Hoare triple {26310#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 18:56:58,128 INFO L273 TraceCheckUtils]: 20: Hoare triple {26310#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:58,129 INFO L273 TraceCheckUtils]: 21: Hoare triple {26311#(<= main_~i~1 5)} assume true; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:58,129 INFO L273 TraceCheckUtils]: 22: Hoare triple {26311#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 18:56:58,130 INFO L273 TraceCheckUtils]: 23: Hoare triple {26311#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:58,130 INFO L273 TraceCheckUtils]: 24: Hoare triple {26312#(<= main_~i~1 6)} assume true; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:58,131 INFO L273 TraceCheckUtils]: 25: Hoare triple {26312#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 18:56:58,132 INFO L273 TraceCheckUtils]: 26: Hoare triple {26312#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:58,132 INFO L273 TraceCheckUtils]: 27: Hoare triple {26313#(<= main_~i~1 7)} assume true; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:58,133 INFO L273 TraceCheckUtils]: 28: Hoare triple {26313#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 18:56:58,133 INFO L273 TraceCheckUtils]: 29: Hoare triple {26313#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:58,134 INFO L273 TraceCheckUtils]: 30: Hoare triple {26314#(<= main_~i~1 8)} assume true; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:58,134 INFO L273 TraceCheckUtils]: 31: Hoare triple {26314#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 18:56:58,135 INFO L273 TraceCheckUtils]: 32: Hoare triple {26314#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:58,135 INFO L273 TraceCheckUtils]: 33: Hoare triple {26315#(<= main_~i~1 9)} assume true; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:58,136 INFO L273 TraceCheckUtils]: 34: Hoare triple {26315#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 18:56:58,137 INFO L273 TraceCheckUtils]: 35: Hoare triple {26315#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:58,137 INFO L273 TraceCheckUtils]: 36: Hoare triple {26316#(<= main_~i~1 10)} assume true; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:58,138 INFO L273 TraceCheckUtils]: 37: Hoare triple {26316#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 18:56:58,138 INFO L273 TraceCheckUtils]: 38: Hoare triple {26316#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:58,139 INFO L273 TraceCheckUtils]: 39: Hoare triple {26317#(<= main_~i~1 11)} assume true; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:58,139 INFO L273 TraceCheckUtils]: 40: Hoare triple {26317#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 18:56:58,140 INFO L273 TraceCheckUtils]: 41: Hoare triple {26317#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:58,140 INFO L273 TraceCheckUtils]: 42: Hoare triple {26318#(<= main_~i~1 12)} assume true; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:58,141 INFO L273 TraceCheckUtils]: 43: Hoare triple {26318#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 18:56:58,141 INFO L273 TraceCheckUtils]: 44: Hoare triple {26318#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:58,142 INFO L273 TraceCheckUtils]: 45: Hoare triple {26319#(<= main_~i~1 13)} assume true; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:58,142 INFO L273 TraceCheckUtils]: 46: Hoare triple {26319#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 18:56:58,143 INFO L273 TraceCheckUtils]: 47: Hoare triple {26319#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:58,144 INFO L273 TraceCheckUtils]: 48: Hoare triple {26320#(<= main_~i~1 14)} assume true; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:58,144 INFO L273 TraceCheckUtils]: 49: Hoare triple {26320#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 18:56:58,145 INFO L273 TraceCheckUtils]: 50: Hoare triple {26320#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:58,145 INFO L273 TraceCheckUtils]: 51: Hoare triple {26321#(<= main_~i~1 15)} assume true; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:58,146 INFO L273 TraceCheckUtils]: 52: Hoare triple {26321#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 18:56:58,146 INFO L273 TraceCheckUtils]: 53: Hoare triple {26321#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:58,147 INFO L273 TraceCheckUtils]: 54: Hoare triple {26322#(<= main_~i~1 16)} assume true; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:58,147 INFO L273 TraceCheckUtils]: 55: Hoare triple {26322#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 18:56:58,148 INFO L273 TraceCheckUtils]: 56: Hoare triple {26322#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:58,148 INFO L273 TraceCheckUtils]: 57: Hoare triple {26323#(<= main_~i~1 17)} assume true; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:58,149 INFO L273 TraceCheckUtils]: 58: Hoare triple {26323#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 18:56:58,150 INFO L273 TraceCheckUtils]: 59: Hoare triple {26323#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:58,150 INFO L273 TraceCheckUtils]: 60: Hoare triple {26324#(<= main_~i~1 18)} assume true; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:58,151 INFO L273 TraceCheckUtils]: 61: Hoare triple {26324#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 18:56:58,151 INFO L273 TraceCheckUtils]: 62: Hoare triple {26324#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:58,152 INFO L273 TraceCheckUtils]: 63: Hoare triple {26325#(<= main_~i~1 19)} assume true; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:58,152 INFO L273 TraceCheckUtils]: 64: Hoare triple {26325#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 18:56:58,153 INFO L273 TraceCheckUtils]: 65: Hoare triple {26325#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:58,153 INFO L273 TraceCheckUtils]: 66: Hoare triple {26326#(<= main_~i~1 20)} assume true; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:58,154 INFO L273 TraceCheckUtils]: 67: Hoare triple {26326#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 18:56:58,154 INFO L273 TraceCheckUtils]: 68: Hoare triple {26326#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:58,155 INFO L273 TraceCheckUtils]: 69: Hoare triple {26327#(<= main_~i~1 21)} assume true; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:58,155 INFO L273 TraceCheckUtils]: 70: Hoare triple {26327#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 18:56:58,156 INFO L273 TraceCheckUtils]: 71: Hoare triple {26327#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:58,157 INFO L273 TraceCheckUtils]: 72: Hoare triple {26328#(<= main_~i~1 22)} assume true; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:58,157 INFO L273 TraceCheckUtils]: 73: Hoare triple {26328#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 18:56:58,158 INFO L273 TraceCheckUtils]: 74: Hoare triple {26328#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:58,158 INFO L273 TraceCheckUtils]: 75: Hoare triple {26329#(<= main_~i~1 23)} assume true; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:58,159 INFO L273 TraceCheckUtils]: 76: Hoare triple {26329#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 18:56:58,159 INFO L273 TraceCheckUtils]: 77: Hoare triple {26329#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:58,160 INFO L273 TraceCheckUtils]: 78: Hoare triple {26330#(<= main_~i~1 24)} assume true; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:58,160 INFO L273 TraceCheckUtils]: 79: Hoare triple {26330#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 18:56:58,161 INFO L273 TraceCheckUtils]: 80: Hoare triple {26330#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:58,161 INFO L273 TraceCheckUtils]: 81: Hoare triple {26331#(<= main_~i~1 25)} assume true; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:58,162 INFO L273 TraceCheckUtils]: 82: Hoare triple {26331#(<= main_~i~1 25)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 18:56:58,163 INFO L273 TraceCheckUtils]: 83: Hoare triple {26331#(<= main_~i~1 25)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:58,163 INFO L273 TraceCheckUtils]: 84: Hoare triple {26332#(<= main_~i~1 26)} assume true; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:58,163 INFO L273 TraceCheckUtils]: 85: Hoare triple {26332#(<= main_~i~1 26)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 18:56:58,164 INFO L273 TraceCheckUtils]: 86: Hoare triple {26332#(<= main_~i~1 26)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:58,165 INFO L273 TraceCheckUtils]: 87: Hoare triple {26333#(<= main_~i~1 27)} assume true; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:58,165 INFO L273 TraceCheckUtils]: 88: Hoare triple {26333#(<= main_~i~1 27)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 18:56:58,166 INFO L273 TraceCheckUtils]: 89: Hoare triple {26333#(<= main_~i~1 27)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {26334#(<= main_~i~1 28)} is VALID [2018-11-14 18:56:58,166 INFO L273 TraceCheckUtils]: 90: Hoare triple {26334#(<= main_~i~1 28)} assume true; {26334#(<= main_~i~1 28)} is VALID [2018-11-14 18:56:58,167 INFO L273 TraceCheckUtils]: 91: Hoare triple {26334#(<= main_~i~1 28)} assume !(~i~1 < 10000); {26305#false} is VALID [2018-11-14 18:56:58,167 INFO L256 TraceCheckUtils]: 92: Hoare triple {26305#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {26305#false} is VALID [2018-11-14 18:56:58,167 INFO L273 TraceCheckUtils]: 93: Hoare triple {26305#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26305#false} is VALID [2018-11-14 18:56:58,167 INFO L273 TraceCheckUtils]: 94: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,168 INFO L273 TraceCheckUtils]: 95: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,168 INFO L273 TraceCheckUtils]: 96: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,168 INFO L273 TraceCheckUtils]: 97: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,168 INFO L273 TraceCheckUtils]: 98: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,168 INFO L273 TraceCheckUtils]: 99: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,168 INFO L273 TraceCheckUtils]: 100: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,169 INFO L273 TraceCheckUtils]: 101: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,169 INFO L273 TraceCheckUtils]: 102: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,169 INFO L273 TraceCheckUtils]: 103: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,169 INFO L273 TraceCheckUtils]: 104: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,169 INFO L273 TraceCheckUtils]: 105: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,169 INFO L273 TraceCheckUtils]: 106: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,170 INFO L273 TraceCheckUtils]: 107: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,170 INFO L273 TraceCheckUtils]: 108: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,170 INFO L273 TraceCheckUtils]: 109: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,170 INFO L273 TraceCheckUtils]: 110: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,170 INFO L273 TraceCheckUtils]: 111: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,170 INFO L273 TraceCheckUtils]: 112: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 113: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 114: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 115: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 116: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 117: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 118: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 119: Hoare triple {26305#false} assume !(~i~0 < 10000); {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 120: Hoare triple {26305#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L273 TraceCheckUtils]: 121: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,171 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {26305#false} {26305#false} #73#return; {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 123: Hoare triple {26305#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L256 TraceCheckUtils]: 124: Hoare triple {26305#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 125: Hoare triple {26305#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 126: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 127: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 128: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 129: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 130: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,172 INFO L273 TraceCheckUtils]: 131: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 132: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 133: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 134: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 135: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 136: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 137: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 138: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 139: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 140: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,173 INFO L273 TraceCheckUtils]: 141: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 142: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 143: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 144: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 145: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 146: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 147: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 148: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 149: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 150: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,174 INFO L273 TraceCheckUtils]: 151: Hoare triple {26305#false} assume !(~i~0 < 10000); {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 152: Hoare triple {26305#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 153: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L268 TraceCheckUtils]: 154: Hoare quadruple {26305#false} {26305#false} #75#return; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 155: Hoare triple {26305#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 156: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 157: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 158: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 159: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 160: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,175 INFO L273 TraceCheckUtils]: 161: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 162: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 163: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 164: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 165: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 166: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 167: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 168: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 169: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 170: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,176 INFO L273 TraceCheckUtils]: 171: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 172: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 173: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 174: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 175: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 176: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 177: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 178: Hoare triple {26305#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 179: Hoare triple {26305#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 180: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,177 INFO L273 TraceCheckUtils]: 181: Hoare triple {26305#false} assume !(~i~2 < 9999); {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 182: Hoare triple {26305#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L256 TraceCheckUtils]: 183: Hoare triple {26305#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 184: Hoare triple {26305#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 185: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 186: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 187: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 188: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 189: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 190: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,178 INFO L273 TraceCheckUtils]: 191: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 192: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 193: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 194: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 195: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 196: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 197: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 198: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 199: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,179 INFO L273 TraceCheckUtils]: 200: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 201: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 202: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 203: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 204: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 205: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 206: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 207: Hoare triple {26305#false} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 208: Hoare triple {26305#false} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 209: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,180 INFO L273 TraceCheckUtils]: 210: Hoare triple {26305#false} assume !(~i~0 < 10000); {26305#false} is VALID [2018-11-14 18:56:58,181 INFO L273 TraceCheckUtils]: 211: Hoare triple {26305#false} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {26305#false} is VALID [2018-11-14 18:56:58,181 INFO L273 TraceCheckUtils]: 212: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 18:56:58,181 INFO L268 TraceCheckUtils]: 213: Hoare quadruple {26305#false} {26305#false} #77#return; {26305#false} is VALID [2018-11-14 18:56:58,181 INFO L273 TraceCheckUtils]: 214: Hoare triple {26305#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {26305#false} is VALID [2018-11-14 18:56:58,181 INFO L273 TraceCheckUtils]: 215: Hoare triple {26305#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26305#false} is VALID [2018-11-14 18:56:58,181 INFO L273 TraceCheckUtils]: 216: Hoare triple {26305#false} assume !false; {26305#false} is VALID [2018-11-14 18:56:58,204 INFO L134 CoverageAnalysis]: Checked inductivity of 2280 backedges. 0 proven. 1190 refuted. 0 times theorem prover too weak. 1090 trivial. 0 not checked. [2018-11-14 18:56:58,224 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 18:56:58,224 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [31, 31] total 32 [2018-11-14 18:56:58,224 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 217 [2018-11-14 18:56:58,225 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 18:56:58,225 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states. [2018-11-14 18:56:58,347 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-14 18:56:58,347 INFO L459 AbstractCegarLoop]: Interpolant automaton has 32 states [2018-11-14 18:56:58,347 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2018-11-14 18:56:58,348 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=496, Invalid=496, Unknown=0, NotChecked=0, Total=992 [2018-11-14 18:56:58,348 INFO L87 Difference]: Start difference. First operand 158 states and 162 transitions. Second operand 32 states. [2018-11-14 18:56:59,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:56:59,664 INFO L93 Difference]: Finished difference Result 228 states and 236 transitions. [2018-11-14 18:56:59,664 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2018-11-14 18:56:59,664 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 217 [2018-11-14 18:56:59,664 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 18:56:59,665 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-14 18:56:59,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 144 transitions. [2018-11-14 18:56:59,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-14 18:56:59,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 144 transitions. [2018-11-14 18:56:59,666 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 144 transitions. [2018-11-14 18:56:59,796 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 18:56:59,800 INFO L225 Difference]: With dead ends: 228 [2018-11-14 18:56:59,800 INFO L226 Difference]: Without dead ends: 162 [2018-11-14 18:56:59,801 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 247 GetRequests, 217 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 54 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=496, Invalid=496, Unknown=0, NotChecked=0, Total=992 [2018-11-14 18:56:59,801 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 162 states. [2018-11-14 18:57:00,110 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 162 to 161. [2018-11-14 18:57:00,110 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 18:57:00,110 INFO L82 GeneralOperation]: Start isEquivalent. First operand 162 states. Second operand 161 states. [2018-11-14 18:57:00,110 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand 161 states. [2018-11-14 18:57:00,111 INFO L87 Difference]: Start difference. First operand 162 states. Second operand 161 states. [2018-11-14 18:57:00,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:57:00,114 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2018-11-14 18:57:00,114 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 166 transitions. [2018-11-14 18:57:00,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:57:00,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:57:00,115 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 162 states. [2018-11-14 18:57:00,115 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 162 states. [2018-11-14 18:57:00,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 18:57:00,118 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2018-11-14 18:57:00,118 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 166 transitions. [2018-11-14 18:57:00,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 18:57:00,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 18:57:00,118 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 18:57:00,119 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 18:57:00,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 161 states. [2018-11-14 18:57:00,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 165 transitions. [2018-11-14 18:57:00,121 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 165 transitions. Word has length 217 [2018-11-14 18:57:00,122 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 18:57:00,122 INFO L480 AbstractCegarLoop]: Abstraction has 161 states and 165 transitions. [2018-11-14 18:57:00,122 INFO L481 AbstractCegarLoop]: Interpolant automaton has 32 states. [2018-11-14 18:57:00,122 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 165 transitions. [2018-11-14 18:57:00,123 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 221 [2018-11-14 18:57:00,123 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 18:57:00,123 INFO L375 BasicCegarLoop]: trace histogram [30, 29, 29, 27, 24, 24, 9, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 18:57:00,124 INFO L423 AbstractCegarLoop]: === Iteration 33 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 18:57:00,124 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 18:57:00,124 INFO L82 PathProgramCache]: Analyzing trace with hash -1225847352, now seen corresponding path program 29 times [2018-11-14 18:57:00,124 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 18:57:00,124 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 18:57:00,125 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:57:00,125 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 18:57:00,125 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 18:57:00,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 18:57:01,740 INFO L256 TraceCheckUtils]: 0: Hoare triple {27833#true} call ULTIMATE.init(); {27833#true} is VALID [2018-11-14 18:57:01,740 INFO L273 TraceCheckUtils]: 1: Hoare triple {27833#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {27833#true} is VALID [2018-11-14 18:57:01,741 INFO L273 TraceCheckUtils]: 2: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,741 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {27833#true} {27833#true} #69#return; {27833#true} is VALID [2018-11-14 18:57:01,741 INFO L256 TraceCheckUtils]: 4: Hoare triple {27833#true} call #t~ret12 := main(); {27833#true} is VALID [2018-11-14 18:57:01,742 INFO L273 TraceCheckUtils]: 5: Hoare triple {27833#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(40000);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {27835#(= main_~i~1 0)} is VALID [2018-11-14 18:57:01,742 INFO L273 TraceCheckUtils]: 6: Hoare triple {27835#(= main_~i~1 0)} assume true; {27835#(= main_~i~1 0)} is VALID [2018-11-14 18:57:01,743 INFO L273 TraceCheckUtils]: 7: Hoare triple {27835#(= main_~i~1 0)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27835#(= main_~i~1 0)} is VALID [2018-11-14 18:57:01,743 INFO L273 TraceCheckUtils]: 8: Hoare triple {27835#(= main_~i~1 0)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27836#(<= main_~i~1 1)} is VALID [2018-11-14 18:57:01,744 INFO L273 TraceCheckUtils]: 9: Hoare triple {27836#(<= main_~i~1 1)} assume true; {27836#(<= main_~i~1 1)} is VALID [2018-11-14 18:57:01,744 INFO L273 TraceCheckUtils]: 10: Hoare triple {27836#(<= main_~i~1 1)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27836#(<= main_~i~1 1)} is VALID [2018-11-14 18:57:01,745 INFO L273 TraceCheckUtils]: 11: Hoare triple {27836#(<= main_~i~1 1)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27837#(<= main_~i~1 2)} is VALID [2018-11-14 18:57:01,746 INFO L273 TraceCheckUtils]: 12: Hoare triple {27837#(<= main_~i~1 2)} assume true; {27837#(<= main_~i~1 2)} is VALID [2018-11-14 18:57:01,746 INFO L273 TraceCheckUtils]: 13: Hoare triple {27837#(<= main_~i~1 2)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27837#(<= main_~i~1 2)} is VALID [2018-11-14 18:57:01,747 INFO L273 TraceCheckUtils]: 14: Hoare triple {27837#(<= main_~i~1 2)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27838#(<= main_~i~1 3)} is VALID [2018-11-14 18:57:01,747 INFO L273 TraceCheckUtils]: 15: Hoare triple {27838#(<= main_~i~1 3)} assume true; {27838#(<= main_~i~1 3)} is VALID [2018-11-14 18:57:01,748 INFO L273 TraceCheckUtils]: 16: Hoare triple {27838#(<= main_~i~1 3)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27838#(<= main_~i~1 3)} is VALID [2018-11-14 18:57:01,749 INFO L273 TraceCheckUtils]: 17: Hoare triple {27838#(<= main_~i~1 3)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27839#(<= main_~i~1 4)} is VALID [2018-11-14 18:57:01,749 INFO L273 TraceCheckUtils]: 18: Hoare triple {27839#(<= main_~i~1 4)} assume true; {27839#(<= main_~i~1 4)} is VALID [2018-11-14 18:57:01,750 INFO L273 TraceCheckUtils]: 19: Hoare triple {27839#(<= main_~i~1 4)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27839#(<= main_~i~1 4)} is VALID [2018-11-14 18:57:01,750 INFO L273 TraceCheckUtils]: 20: Hoare triple {27839#(<= main_~i~1 4)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27840#(<= main_~i~1 5)} is VALID [2018-11-14 18:57:01,751 INFO L273 TraceCheckUtils]: 21: Hoare triple {27840#(<= main_~i~1 5)} assume true; {27840#(<= main_~i~1 5)} is VALID [2018-11-14 18:57:01,751 INFO L273 TraceCheckUtils]: 22: Hoare triple {27840#(<= main_~i~1 5)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27840#(<= main_~i~1 5)} is VALID [2018-11-14 18:57:01,752 INFO L273 TraceCheckUtils]: 23: Hoare triple {27840#(<= main_~i~1 5)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27841#(<= main_~i~1 6)} is VALID [2018-11-14 18:57:01,753 INFO L273 TraceCheckUtils]: 24: Hoare triple {27841#(<= main_~i~1 6)} assume true; {27841#(<= main_~i~1 6)} is VALID [2018-11-14 18:57:01,753 INFO L273 TraceCheckUtils]: 25: Hoare triple {27841#(<= main_~i~1 6)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27841#(<= main_~i~1 6)} is VALID [2018-11-14 18:57:01,754 INFO L273 TraceCheckUtils]: 26: Hoare triple {27841#(<= main_~i~1 6)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27842#(<= main_~i~1 7)} is VALID [2018-11-14 18:57:01,754 INFO L273 TraceCheckUtils]: 27: Hoare triple {27842#(<= main_~i~1 7)} assume true; {27842#(<= main_~i~1 7)} is VALID [2018-11-14 18:57:01,755 INFO L273 TraceCheckUtils]: 28: Hoare triple {27842#(<= main_~i~1 7)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27842#(<= main_~i~1 7)} is VALID [2018-11-14 18:57:01,756 INFO L273 TraceCheckUtils]: 29: Hoare triple {27842#(<= main_~i~1 7)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27843#(<= main_~i~1 8)} is VALID [2018-11-14 18:57:01,756 INFO L273 TraceCheckUtils]: 30: Hoare triple {27843#(<= main_~i~1 8)} assume true; {27843#(<= main_~i~1 8)} is VALID [2018-11-14 18:57:01,757 INFO L273 TraceCheckUtils]: 31: Hoare triple {27843#(<= main_~i~1 8)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27843#(<= main_~i~1 8)} is VALID [2018-11-14 18:57:01,757 INFO L273 TraceCheckUtils]: 32: Hoare triple {27843#(<= main_~i~1 8)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27844#(<= main_~i~1 9)} is VALID [2018-11-14 18:57:01,758 INFO L273 TraceCheckUtils]: 33: Hoare triple {27844#(<= main_~i~1 9)} assume true; {27844#(<= main_~i~1 9)} is VALID [2018-11-14 18:57:01,758 INFO L273 TraceCheckUtils]: 34: Hoare triple {27844#(<= main_~i~1 9)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27844#(<= main_~i~1 9)} is VALID [2018-11-14 18:57:01,759 INFO L273 TraceCheckUtils]: 35: Hoare triple {27844#(<= main_~i~1 9)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27845#(<= main_~i~1 10)} is VALID [2018-11-14 18:57:01,759 INFO L273 TraceCheckUtils]: 36: Hoare triple {27845#(<= main_~i~1 10)} assume true; {27845#(<= main_~i~1 10)} is VALID [2018-11-14 18:57:01,760 INFO L273 TraceCheckUtils]: 37: Hoare triple {27845#(<= main_~i~1 10)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27845#(<= main_~i~1 10)} is VALID [2018-11-14 18:57:01,761 INFO L273 TraceCheckUtils]: 38: Hoare triple {27845#(<= main_~i~1 10)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27846#(<= main_~i~1 11)} is VALID [2018-11-14 18:57:01,761 INFO L273 TraceCheckUtils]: 39: Hoare triple {27846#(<= main_~i~1 11)} assume true; {27846#(<= main_~i~1 11)} is VALID [2018-11-14 18:57:01,761 INFO L273 TraceCheckUtils]: 40: Hoare triple {27846#(<= main_~i~1 11)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27846#(<= main_~i~1 11)} is VALID [2018-11-14 18:57:01,762 INFO L273 TraceCheckUtils]: 41: Hoare triple {27846#(<= main_~i~1 11)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27847#(<= main_~i~1 12)} is VALID [2018-11-14 18:57:01,763 INFO L273 TraceCheckUtils]: 42: Hoare triple {27847#(<= main_~i~1 12)} assume true; {27847#(<= main_~i~1 12)} is VALID [2018-11-14 18:57:01,763 INFO L273 TraceCheckUtils]: 43: Hoare triple {27847#(<= main_~i~1 12)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27847#(<= main_~i~1 12)} is VALID [2018-11-14 18:57:01,764 INFO L273 TraceCheckUtils]: 44: Hoare triple {27847#(<= main_~i~1 12)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27848#(<= main_~i~1 13)} is VALID [2018-11-14 18:57:01,764 INFO L273 TraceCheckUtils]: 45: Hoare triple {27848#(<= main_~i~1 13)} assume true; {27848#(<= main_~i~1 13)} is VALID [2018-11-14 18:57:01,765 INFO L273 TraceCheckUtils]: 46: Hoare triple {27848#(<= main_~i~1 13)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27848#(<= main_~i~1 13)} is VALID [2018-11-14 18:57:01,765 INFO L273 TraceCheckUtils]: 47: Hoare triple {27848#(<= main_~i~1 13)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27849#(<= main_~i~1 14)} is VALID [2018-11-14 18:57:01,766 INFO L273 TraceCheckUtils]: 48: Hoare triple {27849#(<= main_~i~1 14)} assume true; {27849#(<= main_~i~1 14)} is VALID [2018-11-14 18:57:01,766 INFO L273 TraceCheckUtils]: 49: Hoare triple {27849#(<= main_~i~1 14)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27849#(<= main_~i~1 14)} is VALID [2018-11-14 18:57:01,767 INFO L273 TraceCheckUtils]: 50: Hoare triple {27849#(<= main_~i~1 14)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27850#(<= main_~i~1 15)} is VALID [2018-11-14 18:57:01,767 INFO L273 TraceCheckUtils]: 51: Hoare triple {27850#(<= main_~i~1 15)} assume true; {27850#(<= main_~i~1 15)} is VALID [2018-11-14 18:57:01,768 INFO L273 TraceCheckUtils]: 52: Hoare triple {27850#(<= main_~i~1 15)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27850#(<= main_~i~1 15)} is VALID [2018-11-14 18:57:01,769 INFO L273 TraceCheckUtils]: 53: Hoare triple {27850#(<= main_~i~1 15)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27851#(<= main_~i~1 16)} is VALID [2018-11-14 18:57:01,769 INFO L273 TraceCheckUtils]: 54: Hoare triple {27851#(<= main_~i~1 16)} assume true; {27851#(<= main_~i~1 16)} is VALID [2018-11-14 18:57:01,770 INFO L273 TraceCheckUtils]: 55: Hoare triple {27851#(<= main_~i~1 16)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27851#(<= main_~i~1 16)} is VALID [2018-11-14 18:57:01,770 INFO L273 TraceCheckUtils]: 56: Hoare triple {27851#(<= main_~i~1 16)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27852#(<= main_~i~1 17)} is VALID [2018-11-14 18:57:01,771 INFO L273 TraceCheckUtils]: 57: Hoare triple {27852#(<= main_~i~1 17)} assume true; {27852#(<= main_~i~1 17)} is VALID [2018-11-14 18:57:01,771 INFO L273 TraceCheckUtils]: 58: Hoare triple {27852#(<= main_~i~1 17)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27852#(<= main_~i~1 17)} is VALID [2018-11-14 18:57:01,772 INFO L273 TraceCheckUtils]: 59: Hoare triple {27852#(<= main_~i~1 17)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27853#(<= main_~i~1 18)} is VALID [2018-11-14 18:57:01,772 INFO L273 TraceCheckUtils]: 60: Hoare triple {27853#(<= main_~i~1 18)} assume true; {27853#(<= main_~i~1 18)} is VALID [2018-11-14 18:57:01,773 INFO L273 TraceCheckUtils]: 61: Hoare triple {27853#(<= main_~i~1 18)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27853#(<= main_~i~1 18)} is VALID [2018-11-14 18:57:01,773 INFO L273 TraceCheckUtils]: 62: Hoare triple {27853#(<= main_~i~1 18)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27854#(<= main_~i~1 19)} is VALID [2018-11-14 18:57:01,774 INFO L273 TraceCheckUtils]: 63: Hoare triple {27854#(<= main_~i~1 19)} assume true; {27854#(<= main_~i~1 19)} is VALID [2018-11-14 18:57:01,774 INFO L273 TraceCheckUtils]: 64: Hoare triple {27854#(<= main_~i~1 19)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27854#(<= main_~i~1 19)} is VALID [2018-11-14 18:57:01,775 INFO L273 TraceCheckUtils]: 65: Hoare triple {27854#(<= main_~i~1 19)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27855#(<= main_~i~1 20)} is VALID [2018-11-14 18:57:01,776 INFO L273 TraceCheckUtils]: 66: Hoare triple {27855#(<= main_~i~1 20)} assume true; {27855#(<= main_~i~1 20)} is VALID [2018-11-14 18:57:01,776 INFO L273 TraceCheckUtils]: 67: Hoare triple {27855#(<= main_~i~1 20)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27855#(<= main_~i~1 20)} is VALID [2018-11-14 18:57:01,777 INFO L273 TraceCheckUtils]: 68: Hoare triple {27855#(<= main_~i~1 20)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27856#(<= main_~i~1 21)} is VALID [2018-11-14 18:57:01,777 INFO L273 TraceCheckUtils]: 69: Hoare triple {27856#(<= main_~i~1 21)} assume true; {27856#(<= main_~i~1 21)} is VALID [2018-11-14 18:57:01,778 INFO L273 TraceCheckUtils]: 70: Hoare triple {27856#(<= main_~i~1 21)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27856#(<= main_~i~1 21)} is VALID [2018-11-14 18:57:01,778 INFO L273 TraceCheckUtils]: 71: Hoare triple {27856#(<= main_~i~1 21)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27857#(<= main_~i~1 22)} is VALID [2018-11-14 18:57:01,779 INFO L273 TraceCheckUtils]: 72: Hoare triple {27857#(<= main_~i~1 22)} assume true; {27857#(<= main_~i~1 22)} is VALID [2018-11-14 18:57:01,779 INFO L273 TraceCheckUtils]: 73: Hoare triple {27857#(<= main_~i~1 22)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27857#(<= main_~i~1 22)} is VALID [2018-11-14 18:57:01,780 INFO L273 TraceCheckUtils]: 74: Hoare triple {27857#(<= main_~i~1 22)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27858#(<= main_~i~1 23)} is VALID [2018-11-14 18:57:01,781 INFO L273 TraceCheckUtils]: 75: Hoare triple {27858#(<= main_~i~1 23)} assume true; {27858#(<= main_~i~1 23)} is VALID [2018-11-14 18:57:01,781 INFO L273 TraceCheckUtils]: 76: Hoare triple {27858#(<= main_~i~1 23)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27858#(<= main_~i~1 23)} is VALID [2018-11-14 18:57:01,782 INFO L273 TraceCheckUtils]: 77: Hoare triple {27858#(<= main_~i~1 23)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27859#(<= main_~i~1 24)} is VALID [2018-11-14 18:57:01,782 INFO L273 TraceCheckUtils]: 78: Hoare triple {27859#(<= main_~i~1 24)} assume true; {27859#(<= main_~i~1 24)} is VALID [2018-11-14 18:57:01,783 INFO L273 TraceCheckUtils]: 79: Hoare triple {27859#(<= main_~i~1 24)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27859#(<= main_~i~1 24)} is VALID [2018-11-14 18:57:01,783 INFO L273 TraceCheckUtils]: 80: Hoare triple {27859#(<= main_~i~1 24)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27860#(<= main_~i~1 25)} is VALID [2018-11-14 18:57:01,784 INFO L273 TraceCheckUtils]: 81: Hoare triple {27860#(<= main_~i~1 25)} assume true; {27860#(<= main_~i~1 25)} is VALID [2018-11-14 18:57:01,784 INFO L273 TraceCheckUtils]: 82: Hoare triple {27860#(<= main_~i~1 25)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27860#(<= main_~i~1 25)} is VALID [2018-11-14 18:57:01,785 INFO L273 TraceCheckUtils]: 83: Hoare triple {27860#(<= main_~i~1 25)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27861#(<= main_~i~1 26)} is VALID [2018-11-14 18:57:01,786 INFO L273 TraceCheckUtils]: 84: Hoare triple {27861#(<= main_~i~1 26)} assume true; {27861#(<= main_~i~1 26)} is VALID [2018-11-14 18:57:01,786 INFO L273 TraceCheckUtils]: 85: Hoare triple {27861#(<= main_~i~1 26)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27861#(<= main_~i~1 26)} is VALID [2018-11-14 18:57:01,787 INFO L273 TraceCheckUtils]: 86: Hoare triple {27861#(<= main_~i~1 26)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27862#(<= main_~i~1 27)} is VALID [2018-11-14 18:57:01,787 INFO L273 TraceCheckUtils]: 87: Hoare triple {27862#(<= main_~i~1 27)} assume true; {27862#(<= main_~i~1 27)} is VALID [2018-11-14 18:57:01,788 INFO L273 TraceCheckUtils]: 88: Hoare triple {27862#(<= main_~i~1 27)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27862#(<= main_~i~1 27)} is VALID [2018-11-14 18:57:01,789 INFO L273 TraceCheckUtils]: 89: Hoare triple {27862#(<= main_~i~1 27)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27863#(<= main_~i~1 28)} is VALID [2018-11-14 18:57:01,789 INFO L273 TraceCheckUtils]: 90: Hoare triple {27863#(<= main_~i~1 28)} assume true; {27863#(<= main_~i~1 28)} is VALID [2018-11-14 18:57:01,790 INFO L273 TraceCheckUtils]: 91: Hoare triple {27863#(<= main_~i~1 28)} assume !!(~i~1 < 10000);assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;call write~int(#t~nondet3, ~#x~0.base, ~#x~0.offset + ~i~1 * 4, 4);havoc #t~nondet3; {27863#(<= main_~i~1 28)} is VALID [2018-11-14 18:57:01,790 INFO L273 TraceCheckUtils]: 92: Hoare triple {27863#(<= main_~i~1 28)} #t~post2 := ~i~1;~i~1 := #t~post2 + 1;havoc #t~post2; {27864#(<= main_~i~1 29)} is VALID [2018-11-14 18:57:01,791 INFO L273 TraceCheckUtils]: 93: Hoare triple {27864#(<= main_~i~1 29)} assume true; {27864#(<= main_~i~1 29)} is VALID [2018-11-14 18:57:01,791 INFO L273 TraceCheckUtils]: 94: Hoare triple {27864#(<= main_~i~1 29)} assume !(~i~1 < 10000); {27834#false} is VALID [2018-11-14 18:57:01,792 INFO L256 TraceCheckUtils]: 95: Hoare triple {27834#false} call #t~ret4 := mapavg(~#x~0.base, ~#x~0.offset); {27833#true} is VALID [2018-11-14 18:57:01,792 INFO L273 TraceCheckUtils]: 96: Hoare triple {27833#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {27833#true} is VALID [2018-11-14 18:57:01,792 INFO L273 TraceCheckUtils]: 97: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,792 INFO L273 TraceCheckUtils]: 98: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,792 INFO L273 TraceCheckUtils]: 99: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,793 INFO L273 TraceCheckUtils]: 100: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,793 INFO L273 TraceCheckUtils]: 101: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,793 INFO L273 TraceCheckUtils]: 102: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,793 INFO L273 TraceCheckUtils]: 103: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,793 INFO L273 TraceCheckUtils]: 104: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,793 INFO L273 TraceCheckUtils]: 105: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,794 INFO L273 TraceCheckUtils]: 106: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,794 INFO L273 TraceCheckUtils]: 107: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,794 INFO L273 TraceCheckUtils]: 108: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,794 INFO L273 TraceCheckUtils]: 109: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,794 INFO L273 TraceCheckUtils]: 110: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,794 INFO L273 TraceCheckUtils]: 111: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 112: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 113: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 114: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 115: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 116: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 117: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 118: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 119: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,795 INFO L273 TraceCheckUtils]: 120: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 121: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 122: Hoare triple {27833#true} assume !(~i~0 < 10000); {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 123: Hoare triple {27833#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 124: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L268 TraceCheckUtils]: 125: Hoare quadruple {27833#true} {27834#false} #73#return; {27834#false} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 126: Hoare triple {27834#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~int(~#x~0.base, ~#x~0.offset + 4, 4);call write~int(#t~mem6, ~#x~0.base, ~#x~0.offset + 0, 4);havoc #t~mem6;call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 4, 4); {27834#false} is VALID [2018-11-14 18:57:01,796 INFO L256 TraceCheckUtils]: 127: Hoare triple {27834#false} call #t~ret7 := mapavg(~#x~0.base, ~#x~0.offset); {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 128: Hoare triple {27833#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 129: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,796 INFO L273 TraceCheckUtils]: 130: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 131: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 132: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 133: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 134: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 135: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 136: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 137: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 138: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 139: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,797 INFO L273 TraceCheckUtils]: 140: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 141: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 142: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 143: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 144: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 145: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 146: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 147: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 148: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,798 INFO L273 TraceCheckUtils]: 149: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 150: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 151: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 152: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 153: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 154: Hoare triple {27833#true} assume !(~i~0 < 10000); {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 155: Hoare triple {27833#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 156: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,799 INFO L268 TraceCheckUtils]: 157: Hoare quadruple {27833#true} {27834#false} #75#return; {27834#false} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 158: Hoare triple {27834#false} assume -2147483648 <= #t~ret7 && #t~ret7 <= 2147483647;~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~int(~#x~0.base, ~#x~0.offset + 0, 4);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0; {27834#false} is VALID [2018-11-14 18:57:01,799 INFO L273 TraceCheckUtils]: 159: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 160: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 161: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 162: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 163: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 164: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 165: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 166: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 167: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 168: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,800 INFO L273 TraceCheckUtils]: 169: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 170: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 171: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 172: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 173: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 174: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 175: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 176: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 177: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,801 INFO L273 TraceCheckUtils]: 178: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 179: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 180: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 181: Hoare triple {27834#false} assume !!(~i~2 < 9999);call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset + (~i~2 + 1) * 4, 4);call write~int(#t~mem10, ~#x~0.base, ~#x~0.offset + ~i~2 * 4, 4);havoc #t~mem10; {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 182: Hoare triple {27834#false} #t~post9 := ~i~2;~i~2 := #t~post9 + 1;havoc #t~post9; {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 183: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 184: Hoare triple {27834#false} assume !(~i~2 < 9999); {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 185: Hoare triple {27834#false} call write~int(~temp~0, ~#x~0.base, ~#x~0.offset + 39996, 4); {27834#false} is VALID [2018-11-14 18:57:01,802 INFO L256 TraceCheckUtils]: 186: Hoare triple {27834#false} call #t~ret11 := mapavg(~#x~0.base, ~#x~0.offset); {27833#true} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 187: Hoare triple {27833#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {27833#true} is VALID [2018-11-14 18:57:01,802 INFO L273 TraceCheckUtils]: 188: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 189: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 190: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 191: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 192: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 193: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 194: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 195: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 196: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 197: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,803 INFO L273 TraceCheckUtils]: 198: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 199: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 200: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 201: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 202: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 203: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 204: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 205: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 206: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,804 INFO L273 TraceCheckUtils]: 207: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 208: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 209: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 210: Hoare triple {27833#true} assume !!(~i~0 < 10000);call #t~mem1 := read~int(~x.base, ~x.offset + ~i~0 * 4, 4);~ret~0 := ~ret~0 + ~i~0 + #t~mem1;havoc #t~mem1; {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 211: Hoare triple {27833#true} #t~post0 := ~i~0;~i~0 := #t~post0 + 1;havoc #t~post0; {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 212: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 213: Hoare triple {27833#true} assume !(~i~0 < 10000); {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 214: Hoare triple {27833#true} #res := (if (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 <= 2147483647 then (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 else (if ~ret~0 < 0 && ~ret~0 % 10000 != 0 then ~ret~0 / 10000 + 1 else ~ret~0 / 10000) % 4294967296 - 4294967296); {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 215: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 18:57:01,805 INFO L268 TraceCheckUtils]: 216: Hoare quadruple {27833#true} {27834#false} #77#return; {27834#false} is VALID [2018-11-14 18:57:01,805 INFO L273 TraceCheckUtils]: 217: Hoare triple {27834#false} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~ret5~0 := #t~ret11;havoc #t~ret11; {27834#false} is VALID [2018-11-14 18:57:01,806 INFO L273 TraceCheckUtils]: 218: Hoare triple {27834#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {27834#false} is VALID [2018-11-14 18:57:01,806 INFO L273 TraceCheckUtils]: 219: Hoare triple {27834#false} assume !false; {27834#false} is VALID [2018-11-14 18:57:01,828 INFO L134 CoverageAnalysis]: Checked inductivity of 2366 backedges. 0 proven. 1276 refuted. 0 times theorem prover too weak. 1090 trivial. 0 not checked. [2018-11-14 18:57:01,828 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 18:57:01,828 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 31 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 31 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 18:57:01,842 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1