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.epf -i ../../../trunk/examples/svcomp/array-crafted/mapavg3_true-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-370d6ab [2018-11-14 17:08:16,379 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-14 17:08:16,381 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-14 17:08:16,395 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-14 17:08:16,395 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-14 17:08:16,396 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-14 17:08:16,397 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-14 17:08:16,400 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-14 17:08:16,402 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-14 17:08:16,403 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-14 17:08:16,404 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-14 17:08:16,404 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-14 17:08:16,405 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-14 17:08:16,407 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-14 17:08:16,409 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-14 17:08:16,413 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-14 17:08:16,414 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-14 17:08:16,419 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-14 17:08:16,423 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-14 17:08:16,427 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-14 17:08:16,429 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-14 17:08:16,430 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-14 17:08:16,437 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-14 17:08:16,438 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-14 17:08:16,438 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-14 17:08:16,439 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-14 17:08:16,440 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-14 17:08:16,441 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-14 17:08:16,443 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-14 17:08:16,445 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-14 17:08:16,445 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-14 17:08:16,445 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-14 17:08:16,446 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-14 17:08:16,446 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-14 17:08:16,447 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-14 17:08:16,447 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-14 17:08:16,449 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-14 17:08:16,474 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-14 17:08:16,475 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-14 17:08:16,476 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-14 17:08:16,476 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-11-14 17:08:16,476 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-14 17:08:16,477 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-14 17:08:16,477 INFO L133 SettingsManager]: * Use SBE=true [2018-11-14 17:08:16,477 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-14 17:08:16,477 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-14 17:08:16,477 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-14 17:08:16,478 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-14 17:08:16,478 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-14 17:08:16,478 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-14 17:08:16,478 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-14 17:08:16,478 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-14 17:08:16,479 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-14 17:08:16,479 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-14 17:08:16,479 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-14 17:08:16,479 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-14 17:08:16,479 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-14 17:08:16,480 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-14 17:08:16,480 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-14 17:08:16,480 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-14 17:08:16,480 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-14 17:08:16,480 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-14 17:08:16,480 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-14 17:08:16,481 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-14 17:08:16,481 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-14 17:08:16,481 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-14 17:08:16,481 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-14 17:08:16,527 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-14 17:08:16,542 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-14 17:08:16,547 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-14 17:08:16,549 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-14 17:08:16,550 INFO L276 PluginConnector]: CDTParser initialized [2018-11-14 17:08:16,550 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 17:08:16,623 INFO L218 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/310d71bf5/e58b63b1f37d45a78d8d0b7bc3935761/FLAG466a338fc [2018-11-14 17:08:17,062 INFO L298 CDTParser]: Found 1 translation units. [2018-11-14 17:08:17,063 INFO L158 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-crafted/mapavg3_true-unreach-call.i [2018-11-14 17:08:17,069 INFO L346 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/310d71bf5/e58b63b1f37d45a78d8d0b7bc3935761/FLAG466a338fc [2018-11-14 17:08:17,084 INFO L354 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/310d71bf5/e58b63b1f37d45a78d8d0b7bc3935761 [2018-11-14 17:08:17,096 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-14 17:08:17,098 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2018-11-14 17:08:17,099 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-14 17:08:17,099 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-14 17:08:17,103 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-14 17:08:17,105 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,108 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@72129b0b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17, skipping insertion in model container [2018-11-14 17:08:17,108 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,119 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-14 17:08:17,142 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-14 17:08:17,381 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 17:08:17,393 INFO L191 MainTranslator]: Completed pre-run [2018-11-14 17:08:17,422 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 17:08:17,441 INFO L195 MainTranslator]: Completed translation [2018-11-14 17:08:17,441 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17 WrapperNode [2018-11-14 17:08:17,441 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-14 17:08:17,442 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-14 17:08:17,442 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-14 17:08:17,442 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-14 17:08:17,455 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,455 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,466 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,466 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,480 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,487 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,491 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (1/1) ... [2018-11-14 17:08:17,497 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-14 17:08:17,498 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-14 17:08:17,498 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-14 17:08:17,501 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-14 17:08:17,502 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (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 17:08:17,628 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-14 17:08:17,628 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-14 17:08:17,628 INFO L138 BoogieDeclarations]: Found implementation of procedure mapavg [2018-11-14 17:08:17,628 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-14 17:08:17,628 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2018-11-14 17:08:17,629 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-11-14 17:08:17,629 INFO L130 BoogieDeclarations]: Found specification of procedure mapavg [2018-11-14 17:08:17,629 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-14 17:08:17,629 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-14 17:08:17,629 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-14 17:08:17,630 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-14 17:08:17,630 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-14 17:08:17,630 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-14 17:08:17,630 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-14 17:08:17,630 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-11-14 17:08:18,390 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-14 17:08:18,390 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 05:08:18 BoogieIcfgContainer [2018-11-14 17:08:18,391 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-14 17:08:18,392 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-14 17:08:18,392 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-14 17:08:18,395 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-14 17:08:18,396 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.11 05:08:17" (1/3) ... [2018-11-14 17:08:18,397 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@53eab955 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 05:08:18, skipping insertion in model container [2018-11-14 17:08:18,397 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:08:17" (2/3) ... [2018-11-14 17:08:18,398 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@53eab955 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 05:08:18, skipping insertion in model container [2018-11-14 17:08:18,398 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 05:08:18" (3/3) ... [2018-11-14 17:08:18,400 INFO L112 eAbstractionObserver]: Analyzing ICFG mapavg3_true-unreach-call.i [2018-11-14 17:08:18,411 INFO L136 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-14 17:08:18,422 INFO L148 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-14 17:08:18,442 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-14 17:08:18,477 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-14 17:08:18,479 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-14 17:08:18,479 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-14 17:08:18,479 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-14 17:08:18,479 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-14 17:08:18,479 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-14 17:08:18,480 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-14 17:08:18,480 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-14 17:08:18,480 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-14 17:08:18,502 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states. [2018-11-14 17:08:18,510 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-14 17:08:18,510 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:18,511 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 17:08:18,514 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:18,521 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:18,522 INFO L82 PathProgramCache]: Analyzing trace with hash 1954566752, now seen corresponding path program 1 times [2018-11-14 17:08:18,524 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:18,525 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:18,587 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:18,587 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:18,588 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:18,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:18,735 INFO L256 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {37#true} is VALID [2018-11-14 17:08:18,740 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 17:08:18,740 INFO L273 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 17:08:18,741 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #69#return; {37#true} is VALID [2018-11-14 17:08:18,741 INFO L256 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret12 := main(); {37#true} is VALID [2018-11-14 17:08:18,741 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 17:08:18,756 INFO L273 TraceCheckUtils]: 6: Hoare triple {37#true} assume !true; {38#false} is VALID [2018-11-14 17:08:18,757 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 17:08:18,757 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 17:08:18,757 INFO L273 TraceCheckUtils]: 9: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 17:08:18,758 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 17:08:18,758 INFO L273 TraceCheckUtils]: 11: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 17:08:18,759 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {37#true} {38#false} #73#return; {38#false} is VALID [2018-11-14 17:08:18,759 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 17:08:18,759 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 17:08:18,760 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 17:08:18,760 INFO L273 TraceCheckUtils]: 16: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 17:08:18,761 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 17:08:18,761 INFO L273 TraceCheckUtils]: 18: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 17:08:18,762 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {37#true} {38#false} #75#return; {38#false} is VALID [2018-11-14 17:08:18,762 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 17:08:18,762 INFO L273 TraceCheckUtils]: 21: Hoare triple {38#false} assume !true; {38#false} is VALID [2018-11-14 17:08:18,763 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 17:08:18,763 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 17:08:18,763 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 17:08:18,764 INFO L273 TraceCheckUtils]: 25: Hoare triple {37#true} assume !true; {37#true} is VALID [2018-11-14 17:08:18,764 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 17:08:18,764 INFO L273 TraceCheckUtils]: 27: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 17:08:18,765 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {37#true} {38#false} #77#return; {38#false} is VALID [2018-11-14 17:08:18,765 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 17:08:18,765 INFO L273 TraceCheckUtils]: 30: Hoare triple {38#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {38#false} is VALID [2018-11-14 17:08:18,766 INFO L273 TraceCheckUtils]: 31: Hoare triple {38#false} assume !false; {38#false} is VALID [2018-11-14 17:08:18,772 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 17:08:18,775 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 17:08:18,775 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-14 17:08:18,781 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 17:08:18,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:18,788 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-14 17:08:18,923 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 17:08:18,924 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-14 17:08:18,932 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-14 17:08:18,933 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 17:08:18,935 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 2 states. [2018-11-14 17:08:19,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:19,061 INFO L93 Difference]: Finished difference Result 59 states and 76 transitions. [2018-11-14 17:08:19,061 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-14 17:08:19,061 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 17:08:19,062 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:19,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 17:08:19,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 17:08:19,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 17:08:19,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 17:08:19,081 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 76 transitions. [2018-11-14 17:08:19,375 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 17:08:19,389 INFO L225 Difference]: With dead ends: 59 [2018-11-14 17:08:19,389 INFO L226 Difference]: Without dead ends: 29 [2018-11-14 17:08:19,394 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 17:08:19,415 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2018-11-14 17:08:19,582 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2018-11-14 17:08:19,582 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:19,583 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 29 states. [2018-11-14 17:08:19,584 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 17:08:19,584 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 17:08:19,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:19,591 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 17:08:19,591 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 17:08:19,592 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:19,592 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:19,593 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 17:08:19,593 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 17:08:19,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:19,598 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 17:08:19,599 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 17:08:19,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:19,600 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:19,600 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:19,601 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:19,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 17:08:19,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 33 transitions. [2018-11-14 17:08:19,607 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 33 transitions. Word has length 32 [2018-11-14 17:08:19,607 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:19,607 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 33 transitions. [2018-11-14 17:08:19,608 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-14 17:08:19,608 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 17:08:19,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-14 17:08:19,610 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:19,610 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 17:08:19,611 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:19,611 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:19,612 INFO L82 PathProgramCache]: Analyzing trace with hash -846201805, now seen corresponding path program 1 times [2018-11-14 17:08:19,612 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:19,612 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:19,613 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:19,614 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:19,614 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:19,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:19,822 INFO L256 TraceCheckUtils]: 0: Hoare triple {215#true} call ULTIMATE.init(); {215#true} is VALID [2018-11-14 17:08:19,822 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 17:08:19,823 INFO L273 TraceCheckUtils]: 2: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 17:08:19,823 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {215#true} {215#true} #69#return; {215#true} is VALID [2018-11-14 17:08:19,823 INFO L256 TraceCheckUtils]: 4: Hoare triple {215#true} call #t~ret12 := main(); {215#true} is VALID [2018-11-14 17:08:19,842 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 17:08:19,855 INFO L273 TraceCheckUtils]: 6: Hoare triple {217#(= main_~i~1 0)} assume true; {217#(= main_~i~1 0)} is VALID [2018-11-14 17:08:19,856 INFO L273 TraceCheckUtils]: 7: Hoare triple {217#(= main_~i~1 0)} assume !(~i~1 < 10000); {216#false} is VALID [2018-11-14 17:08:19,857 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 17:08:19,857 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 17:08:19,857 INFO L273 TraceCheckUtils]: 10: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 17:08:19,858 INFO L273 TraceCheckUtils]: 11: Hoare triple {215#true} assume !(~i~0 < 10000); {215#true} is VALID [2018-11-14 17:08:19,858 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 17:08:19,858 INFO L273 TraceCheckUtils]: 13: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 17:08:19,858 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {215#true} {216#false} #73#return; {216#false} is VALID [2018-11-14 17:08:19,859 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 17:08:19,859 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 17:08:19,859 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 17:08:19,860 INFO L273 TraceCheckUtils]: 18: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 17:08:19,860 INFO L273 TraceCheckUtils]: 19: Hoare triple {215#true} assume !(~i~0 < 10000); {215#true} is VALID [2018-11-14 17:08:19,860 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 17:08:19,861 INFO L273 TraceCheckUtils]: 21: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 17:08:19,861 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {215#true} {216#false} #75#return; {216#false} is VALID [2018-11-14 17:08:19,861 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 17:08:19,862 INFO L273 TraceCheckUtils]: 24: Hoare triple {216#false} assume true; {216#false} is VALID [2018-11-14 17:08:19,862 INFO L273 TraceCheckUtils]: 25: Hoare triple {216#false} assume !(~i~2 < 9999); {216#false} is VALID [2018-11-14 17:08:19,862 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 17:08:19,863 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 17:08:19,863 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 17:08:19,863 INFO L273 TraceCheckUtils]: 29: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 17:08:19,864 INFO L273 TraceCheckUtils]: 30: Hoare triple {215#true} assume !(~i~0 < 10000); {215#true} is VALID [2018-11-14 17:08:19,864 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 17:08:19,864 INFO L273 TraceCheckUtils]: 32: Hoare triple {215#true} assume true; {215#true} is VALID [2018-11-14 17:08:19,865 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {215#true} {216#false} #77#return; {216#false} is VALID [2018-11-14 17:08:19,865 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 17:08:19,866 INFO L273 TraceCheckUtils]: 35: Hoare triple {216#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {216#false} is VALID [2018-11-14 17:08:19,866 INFO L273 TraceCheckUtils]: 36: Hoare triple {216#false} assume !false; {216#false} is VALID [2018-11-14 17:08:19,868 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 17:08:19,869 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 17:08:19,869 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 17:08:19,871 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 17:08:19,872 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:19,872 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 17:08:20,049 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 17:08:20,049 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 17:08:20,050 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 17:08:20,050 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 17:08:20,050 INFO L87 Difference]: Start difference. First operand 29 states and 33 transitions. Second operand 3 states. [2018-11-14 17:08:20,529 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:20,530 INFO L93 Difference]: Finished difference Result 52 states and 60 transitions. [2018-11-14 17:08:20,530 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 17:08:20,530 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 17:08:20,530 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:20,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:08:20,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 17:08:20,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:08:20,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 17:08:20,539 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 60 transitions. [2018-11-14 17:08:20,687 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 17:08:20,693 INFO L225 Difference]: With dead ends: 52 [2018-11-14 17:08:20,693 INFO L226 Difference]: Without dead ends: 32 [2018-11-14 17:08:20,694 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 17:08:20,694 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-14 17:08:20,729 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2018-11-14 17:08:20,729 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:20,729 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 31 states. [2018-11-14 17:08:20,729 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 31 states. [2018-11-14 17:08:20,730 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 31 states. [2018-11-14 17:08:20,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:20,734 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 17:08:20,734 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 17:08:20,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:20,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:20,735 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 32 states. [2018-11-14 17:08:20,736 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 32 states. [2018-11-14 17:08:20,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:20,739 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 17:08:20,740 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 17:08:20,740 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:20,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:20,741 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:20,741 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:20,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-14 17:08:20,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2018-11-14 17:08:20,744 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 37 [2018-11-14 17:08:20,744 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:20,745 INFO L480 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2018-11-14 17:08:20,745 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 17:08:20,745 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2018-11-14 17:08:20,746 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2018-11-14 17:08:20,747 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:20,747 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 17:08:20,747 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:20,747 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:20,748 INFO L82 PathProgramCache]: Analyzing trace with hash -169343480, now seen corresponding path program 1 times [2018-11-14 17:08:20,748 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:20,748 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:20,749 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:20,749 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:20,750 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:20,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:20,875 INFO L256 TraceCheckUtils]: 0: Hoare triple {397#true} call ULTIMATE.init(); {397#true} is VALID [2018-11-14 17:08:20,876 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 17:08:20,876 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:20,876 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {397#true} {397#true} #69#return; {397#true} is VALID [2018-11-14 17:08:20,877 INFO L256 TraceCheckUtils]: 4: Hoare triple {397#true} call #t~ret12 := main(); {397#true} is VALID [2018-11-14 17:08:20,877 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 17:08:20,877 INFO L273 TraceCheckUtils]: 6: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:20,880 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 17:08:20,880 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 17:08:20,880 INFO L273 TraceCheckUtils]: 9: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:20,880 INFO L273 TraceCheckUtils]: 10: Hoare triple {397#true} assume !(~i~1 < 10000); {397#true} is VALID [2018-11-14 17:08:20,881 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 17:08:20,882 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 17:08:20,883 INFO L273 TraceCheckUtils]: 13: Hoare triple {399#(= mapavg_~i~0 0)} assume true; {399#(= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:20,884 INFO L273 TraceCheckUtils]: 14: Hoare triple {399#(= mapavg_~i~0 0)} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 17:08:20,884 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 17:08:20,884 INFO L273 TraceCheckUtils]: 16: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:20,885 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {398#false} {397#true} #73#return; {398#false} is VALID [2018-11-14 17:08:20,885 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 17:08:20,885 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 17:08:20,886 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 17:08:20,887 INFO L273 TraceCheckUtils]: 21: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:20,887 INFO L273 TraceCheckUtils]: 22: Hoare triple {397#true} assume !(~i~0 < 10000); {397#true} is VALID [2018-11-14 17:08:20,888 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 17:08:20,888 INFO L273 TraceCheckUtils]: 24: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:20,888 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {397#true} {398#false} #75#return; {398#false} is VALID [2018-11-14 17:08:20,889 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 17:08:20,889 INFO L273 TraceCheckUtils]: 27: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:20,889 INFO L273 TraceCheckUtils]: 28: Hoare triple {398#false} assume !(~i~2 < 9999); {398#false} is VALID [2018-11-14 17:08:20,890 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 17:08:20,890 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 17:08:20,890 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 17:08:20,891 INFO L273 TraceCheckUtils]: 32: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:20,891 INFO L273 TraceCheckUtils]: 33: Hoare triple {397#true} assume !(~i~0 < 10000); {397#true} is VALID [2018-11-14 17:08:20,891 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 17:08:20,892 INFO L273 TraceCheckUtils]: 35: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:20,892 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {397#true} {398#false} #77#return; {398#false} is VALID [2018-11-14 17:08:20,892 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 17:08:20,893 INFO L273 TraceCheckUtils]: 38: Hoare triple {398#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {398#false} is VALID [2018-11-14 17:08:20,893 INFO L273 TraceCheckUtils]: 39: Hoare triple {398#false} assume !false; {398#false} is VALID [2018-11-14 17:08:20,899 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 17:08:20,900 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:20,900 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 17:08:20,913 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:20,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:20,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:20,990 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:21,182 INFO L256 TraceCheckUtils]: 0: Hoare triple {397#true} call ULTIMATE.init(); {397#true} is VALID [2018-11-14 17:08:21,183 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 17:08:21,183 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:21,183 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {397#true} {397#true} #69#return; {397#true} is VALID [2018-11-14 17:08:21,184 INFO L256 TraceCheckUtils]: 4: Hoare triple {397#true} call #t~ret12 := main(); {397#true} is VALID [2018-11-14 17:08:21,184 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 17:08:21,184 INFO L273 TraceCheckUtils]: 6: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:21,185 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 17:08:21,185 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 17:08:21,185 INFO L273 TraceCheckUtils]: 9: Hoare triple {397#true} assume true; {397#true} is VALID [2018-11-14 17:08:21,186 INFO L273 TraceCheckUtils]: 10: Hoare triple {397#true} assume !(~i~1 < 10000); {397#true} is VALID [2018-11-14 17:08:21,186 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 17:08:21,203 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 17:08:21,207 INFO L273 TraceCheckUtils]: 13: Hoare triple {439#(<= mapavg_~i~0 0)} assume true; {439#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:21,209 INFO L273 TraceCheckUtils]: 14: Hoare triple {439#(<= mapavg_~i~0 0)} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 17:08:21,209 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 17:08:21,209 INFO L273 TraceCheckUtils]: 16: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:21,209 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {398#false} {397#true} #73#return; {398#false} is VALID [2018-11-14 17:08:21,210 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 17:08:21,210 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 17:08:21,210 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 17:08:21,210 INFO L273 TraceCheckUtils]: 21: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:21,213 INFO L273 TraceCheckUtils]: 22: Hoare triple {398#false} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 17:08:21,213 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 17:08:21,213 INFO L273 TraceCheckUtils]: 24: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:21,214 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {398#false} {398#false} #75#return; {398#false} is VALID [2018-11-14 17:08:21,214 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 17:08:21,214 INFO L273 TraceCheckUtils]: 27: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:21,215 INFO L273 TraceCheckUtils]: 28: Hoare triple {398#false} assume !(~i~2 < 9999); {398#false} is VALID [2018-11-14 17:08:21,215 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 17:08:21,215 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 17:08:21,215 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 17:08:21,216 INFO L273 TraceCheckUtils]: 32: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:21,216 INFO L273 TraceCheckUtils]: 33: Hoare triple {398#false} assume !(~i~0 < 10000); {398#false} is VALID [2018-11-14 17:08:21,216 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 17:08:21,217 INFO L273 TraceCheckUtils]: 35: Hoare triple {398#false} assume true; {398#false} is VALID [2018-11-14 17:08:21,217 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {398#false} {398#false} #77#return; {398#false} is VALID [2018-11-14 17:08:21,217 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 17:08:21,218 INFO L273 TraceCheckUtils]: 38: Hoare triple {398#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {398#false} is VALID [2018-11-14 17:08:21,218 INFO L273 TraceCheckUtils]: 39: Hoare triple {398#false} assume !false; {398#false} is VALID [2018-11-14 17:08:21,221 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 17:08:21,247 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-14 17:08:21,247 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 4 [2018-11-14 17:08:21,248 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 17:08:21,252 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:21,252 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-14 17:08:21,420 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 17:08:21,420 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-14 17:08:21,421 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-14 17:08:21,421 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-14 17:08:21,421 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand 4 states. [2018-11-14 17:08:21,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:21,717 INFO L93 Difference]: Finished difference Result 53 states and 63 transitions. [2018-11-14 17:08:21,718 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 17:08:21,718 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 17:08:21,718 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:21,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 17:08:21,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 17:08:21,722 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 17:08:21,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 17:08:21,725 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 61 transitions. [2018-11-14 17:08:21,841 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 17:08:21,844 INFO L225 Difference]: With dead ends: 53 [2018-11-14 17:08:21,844 INFO L226 Difference]: Without dead ends: 34 [2018-11-14 17:08:21,845 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 17:08:21,845 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2018-11-14 17:08:21,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2018-11-14 17:08:21,874 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:21,874 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 33 states. [2018-11-14 17:08:21,874 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 33 states. [2018-11-14 17:08:21,874 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 33 states. [2018-11-14 17:08:21,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:21,877 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2018-11-14 17:08:21,877 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2018-11-14 17:08:21,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:21,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:21,879 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 34 states. [2018-11-14 17:08:21,879 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 34 states. [2018-11-14 17:08:21,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:21,882 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2018-11-14 17:08:21,882 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2018-11-14 17:08:21,883 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:21,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:21,883 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:21,884 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:21,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-14 17:08:21,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2018-11-14 17:08:21,887 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 40 [2018-11-14 17:08:21,887 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:21,887 INFO L480 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2018-11-14 17:08:21,887 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-14 17:08:21,887 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2018-11-14 17:08:21,889 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2018-11-14 17:08:21,889 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:21,889 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 17:08:21,889 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:21,890 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:21,890 INFO L82 PathProgramCache]: Analyzing trace with hash -587267457, now seen corresponding path program 1 times [2018-11-14 17:08:21,890 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:21,890 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:21,891 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:21,891 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:21,892 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:21,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:22,035 INFO L256 TraceCheckUtils]: 0: Hoare triple {705#true} call ULTIMATE.init(); {705#true} is VALID [2018-11-14 17:08:22,036 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 17:08:22,036 INFO L273 TraceCheckUtils]: 2: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,036 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {705#true} {705#true} #69#return; {705#true} is VALID [2018-11-14 17:08:22,037 INFO L256 TraceCheckUtils]: 4: Hoare triple {705#true} call #t~ret12 := main(); {705#true} is VALID [2018-11-14 17:08:22,038 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 17:08:22,038 INFO L273 TraceCheckUtils]: 6: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,038 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 17:08:22,039 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 17:08:22,039 INFO L273 TraceCheckUtils]: 9: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,039 INFO L273 TraceCheckUtils]: 10: Hoare triple {705#true} assume !(~i~1 < 10000); {705#true} is VALID [2018-11-14 17:08:22,039 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 17:08:22,040 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 17:08:22,040 INFO L273 TraceCheckUtils]: 13: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,040 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 17:08:22,041 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 17:08:22,041 INFO L273 TraceCheckUtils]: 16: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,041 INFO L273 TraceCheckUtils]: 17: Hoare triple {705#true} assume !(~i~0 < 10000); {705#true} is VALID [2018-11-14 17:08:22,042 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 17:08:22,042 INFO L273 TraceCheckUtils]: 19: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,042 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {705#true} {705#true} #73#return; {705#true} is VALID [2018-11-14 17:08:22,042 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 17:08:22,043 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 17:08:22,043 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 17:08:22,043 INFO L273 TraceCheckUtils]: 24: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,043 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 17:08:22,044 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 17:08:22,044 INFO L273 TraceCheckUtils]: 27: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,044 INFO L273 TraceCheckUtils]: 28: Hoare triple {705#true} assume !(~i~0 < 10000); {705#true} is VALID [2018-11-14 17:08:22,045 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 17:08:22,045 INFO L273 TraceCheckUtils]: 30: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,045 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {705#true} {705#true} #75#return; {705#true} is VALID [2018-11-14 17:08:22,052 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 17:08:22,054 INFO L273 TraceCheckUtils]: 33: Hoare triple {707#(= main_~i~2 0)} assume true; {707#(= main_~i~2 0)} is VALID [2018-11-14 17:08:22,056 INFO L273 TraceCheckUtils]: 34: Hoare triple {707#(= main_~i~2 0)} assume !(~i~2 < 9999); {706#false} is VALID [2018-11-14 17:08:22,056 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 17:08:22,057 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 17:08:22,057 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 17:08:22,057 INFO L273 TraceCheckUtils]: 38: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,058 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 17:08:22,058 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 17:08:22,058 INFO L273 TraceCheckUtils]: 41: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,059 INFO L273 TraceCheckUtils]: 42: Hoare triple {705#true} assume !(~i~0 < 10000); {705#true} is VALID [2018-11-14 17:08:22,059 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 17:08:22,059 INFO L273 TraceCheckUtils]: 44: Hoare triple {705#true} assume true; {705#true} is VALID [2018-11-14 17:08:22,060 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {705#true} {706#false} #77#return; {706#false} is VALID [2018-11-14 17:08:22,060 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 17:08:22,060 INFO L273 TraceCheckUtils]: 47: Hoare triple {706#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {706#false} is VALID [2018-11-14 17:08:22,060 INFO L273 TraceCheckUtils]: 48: Hoare triple {706#false} assume !false; {706#false} is VALID [2018-11-14 17:08:22,064 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 17:08:22,064 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 17:08:22,065 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 17:08:22,065 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 17:08:22,065 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:22,066 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 17:08:22,150 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 17:08:22,150 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 17:08:22,150 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 17:08:22,151 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 17:08:22,151 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand 3 states. [2018-11-14 17:08:22,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:22,252 INFO L93 Difference]: Finished difference Result 51 states and 56 transitions. [2018-11-14 17:08:22,252 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 17:08:22,252 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 17:08:22,253 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:22,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:08:22,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 17:08:22,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:08:22,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 17:08:22,258 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 50 transitions. [2018-11-14 17:08:22,402 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 17:08:22,404 INFO L225 Difference]: With dead ends: 51 [2018-11-14 17:08:22,405 INFO L226 Difference]: Without dead ends: 36 [2018-11-14 17:08:22,405 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 17:08:22,406 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2018-11-14 17:08:22,423 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2018-11-14 17:08:22,423 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:22,423 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 35 states. [2018-11-14 17:08:22,424 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 35 states. [2018-11-14 17:08:22,424 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 35 states. [2018-11-14 17:08:22,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:22,426 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2018-11-14 17:08:22,427 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2018-11-14 17:08:22,427 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:22,428 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:22,428 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 36 states. [2018-11-14 17:08:22,428 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 36 states. [2018-11-14 17:08:22,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:22,431 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2018-11-14 17:08:22,431 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2018-11-14 17:08:22,432 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:22,432 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:22,432 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:22,432 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:22,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-14 17:08:22,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 39 transitions. [2018-11-14 17:08:22,435 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 39 transitions. Word has length 49 [2018-11-14 17:08:22,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:22,436 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 39 transitions. [2018-11-14 17:08:22,436 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 17:08:22,436 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2018-11-14 17:08:22,437 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-14 17:08:22,438 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:22,438 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 17:08:22,438 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:22,438 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:22,439 INFO L82 PathProgramCache]: Analyzing trace with hash -674957892, now seen corresponding path program 1 times [2018-11-14 17:08:22,439 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:22,439 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:22,440 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:22,440 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:22,440 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:22,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:22,743 INFO L256 TraceCheckUtils]: 0: Hoare triple {900#true} call ULTIMATE.init(); {900#true} is VALID [2018-11-14 17:08:22,743 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 17:08:22,743 INFO L273 TraceCheckUtils]: 2: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,744 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {900#true} {900#true} #69#return; {900#true} is VALID [2018-11-14 17:08:22,744 INFO L256 TraceCheckUtils]: 4: Hoare triple {900#true} call #t~ret12 := main(); {900#true} is VALID [2018-11-14 17:08:22,750 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 17:08:22,751 INFO L273 TraceCheckUtils]: 6: Hoare triple {902#(= main_~i~1 0)} assume true; {902#(= main_~i~1 0)} is VALID [2018-11-14 17:08:22,752 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 17:08:22,752 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 17:08:22,755 INFO L273 TraceCheckUtils]: 9: Hoare triple {903#(<= main_~i~1 1)} assume true; {903#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:22,755 INFO L273 TraceCheckUtils]: 10: Hoare triple {903#(<= main_~i~1 1)} assume !(~i~1 < 10000); {901#false} is VALID [2018-11-14 17:08:22,756 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 17:08:22,756 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 17:08:22,756 INFO L273 TraceCheckUtils]: 13: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,756 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 17:08:22,756 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 17:08:22,757 INFO L273 TraceCheckUtils]: 16: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,757 INFO L273 TraceCheckUtils]: 17: Hoare triple {900#true} assume !(~i~0 < 10000); {900#true} is VALID [2018-11-14 17:08:22,757 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 17:08:22,757 INFO L273 TraceCheckUtils]: 19: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,758 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {900#true} {901#false} #73#return; {901#false} is VALID [2018-11-14 17:08:22,758 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 17:08:22,758 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 17:08:22,759 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 17:08:22,759 INFO L273 TraceCheckUtils]: 24: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,759 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 17:08:22,759 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 17:08:22,760 INFO L273 TraceCheckUtils]: 27: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,760 INFO L273 TraceCheckUtils]: 28: Hoare triple {900#true} assume !(~i~0 < 10000); {900#true} is VALID [2018-11-14 17:08:22,760 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 17:08:22,761 INFO L273 TraceCheckUtils]: 30: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,761 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {900#true} {901#false} #75#return; {901#false} is VALID [2018-11-14 17:08:22,761 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 17:08:22,761 INFO L273 TraceCheckUtils]: 33: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:22,762 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 17:08:22,762 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 17:08:22,762 INFO L273 TraceCheckUtils]: 36: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:22,762 INFO L273 TraceCheckUtils]: 37: Hoare triple {901#false} assume !(~i~2 < 9999); {901#false} is VALID [2018-11-14 17:08:22,763 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 17:08:22,763 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 17:08:22,763 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 17:08:22,764 INFO L273 TraceCheckUtils]: 41: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,764 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 17:08:22,764 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 17:08:22,765 INFO L273 TraceCheckUtils]: 44: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,765 INFO L273 TraceCheckUtils]: 45: Hoare triple {900#true} assume !(~i~0 < 10000); {900#true} is VALID [2018-11-14 17:08:22,765 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 17:08:22,765 INFO L273 TraceCheckUtils]: 47: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:22,766 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {900#true} {901#false} #77#return; {901#false} is VALID [2018-11-14 17:08:22,766 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 17:08:22,766 INFO L273 TraceCheckUtils]: 50: Hoare triple {901#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {901#false} is VALID [2018-11-14 17:08:22,766 INFO L273 TraceCheckUtils]: 51: Hoare triple {901#false} assume !false; {901#false} is VALID [2018-11-14 17:08:22,770 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 17:08:22,770 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:22,770 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 17:08:22,785 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:22,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:22,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:22,868 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:23,167 INFO L256 TraceCheckUtils]: 0: Hoare triple {900#true} call ULTIMATE.init(); {900#true} is VALID [2018-11-14 17:08:23,168 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 17:08:23,168 INFO L273 TraceCheckUtils]: 2: Hoare triple {900#true} assume true; {900#true} is VALID [2018-11-14 17:08:23,169 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {900#true} {900#true} #69#return; {900#true} is VALID [2018-11-14 17:08:23,169 INFO L256 TraceCheckUtils]: 4: Hoare triple {900#true} call #t~ret12 := main(); {900#true} is VALID [2018-11-14 17:08:23,172 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 17:08:23,174 INFO L273 TraceCheckUtils]: 6: Hoare triple {922#(<= main_~i~1 0)} assume true; {922#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:23,174 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 17:08:23,175 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 17:08:23,176 INFO L273 TraceCheckUtils]: 9: Hoare triple {903#(<= main_~i~1 1)} assume true; {903#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:23,176 INFO L273 TraceCheckUtils]: 10: Hoare triple {903#(<= main_~i~1 1)} assume !(~i~1 < 10000); {901#false} is VALID [2018-11-14 17:08:23,176 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 17:08:23,176 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 17:08:23,177 INFO L273 TraceCheckUtils]: 13: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,177 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 17:08:23,177 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 17:08:23,178 INFO L273 TraceCheckUtils]: 16: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,181 INFO L273 TraceCheckUtils]: 17: Hoare triple {901#false} assume !(~i~0 < 10000); {901#false} is VALID [2018-11-14 17:08:23,181 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 17:08:23,182 INFO L273 TraceCheckUtils]: 19: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,182 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {901#false} {901#false} #73#return; {901#false} is VALID [2018-11-14 17:08:23,182 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 17:08:23,182 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 17:08:23,183 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 17:08:23,183 INFO L273 TraceCheckUtils]: 24: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,183 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 17:08:23,183 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 17:08:23,187 INFO L273 TraceCheckUtils]: 27: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,188 INFO L273 TraceCheckUtils]: 28: Hoare triple {901#false} assume !(~i~0 < 10000); {901#false} is VALID [2018-11-14 17:08:23,188 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 17:08:23,188 INFO L273 TraceCheckUtils]: 30: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,189 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {901#false} {901#false} #75#return; {901#false} is VALID [2018-11-14 17:08:23,189 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 17:08:23,189 INFO L273 TraceCheckUtils]: 33: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,189 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 17:08:23,190 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 17:08:23,190 INFO L273 TraceCheckUtils]: 36: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,190 INFO L273 TraceCheckUtils]: 37: Hoare triple {901#false} assume !(~i~2 < 9999); {901#false} is VALID [2018-11-14 17:08:23,190 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 17:08:23,191 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 17:08:23,191 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 17:08:23,191 INFO L273 TraceCheckUtils]: 41: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,191 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 17:08:23,192 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 17:08:23,192 INFO L273 TraceCheckUtils]: 44: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,192 INFO L273 TraceCheckUtils]: 45: Hoare triple {901#false} assume !(~i~0 < 10000); {901#false} is VALID [2018-11-14 17:08:23,192 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 17:08:23,193 INFO L273 TraceCheckUtils]: 47: Hoare triple {901#false} assume true; {901#false} is VALID [2018-11-14 17:08:23,193 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {901#false} {901#false} #77#return; {901#false} is VALID [2018-11-14 17:08:23,193 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 17:08:23,194 INFO L273 TraceCheckUtils]: 50: Hoare triple {901#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {901#false} is VALID [2018-11-14 17:08:23,194 INFO L273 TraceCheckUtils]: 51: Hoare triple {901#false} assume !false; {901#false} is VALID [2018-11-14 17:08:23,198 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 17:08:23,225 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:23,225 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 5 [2018-11-14 17:08:23,226 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 52 [2018-11-14 17:08:23,228 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:23,228 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-14 17:08:23,318 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 17:08:23,318 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-14 17:08:23,319 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-14 17:08:23,319 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-14 17:08:23,319 INFO L87 Difference]: Start difference. First operand 35 states and 39 transitions. Second operand 5 states. [2018-11-14 17:08:23,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:23,502 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2018-11-14 17:08:23,502 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-14 17:08:23,503 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 52 [2018-11-14 17:08:23,503 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:23,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-14 17:08:23,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 63 transitions. [2018-11-14 17:08:23,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-14 17:08:23,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 63 transitions. [2018-11-14 17:08:23,510 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 63 transitions. [2018-11-14 17:08:23,668 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 17:08:23,671 INFO L225 Difference]: With dead ends: 63 [2018-11-14 17:08:23,671 INFO L226 Difference]: Without dead ends: 39 [2018-11-14 17:08:23,672 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 17:08:23,672 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-14 17:08:23,686 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 38. [2018-11-14 17:08:23,686 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:23,687 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 38 states. [2018-11-14 17:08:23,687 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 38 states. [2018-11-14 17:08:23,687 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 38 states. [2018-11-14 17:08:23,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:23,691 INFO L93 Difference]: Finished difference Result 39 states and 43 transitions. [2018-11-14 17:08:23,691 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 43 transitions. [2018-11-14 17:08:23,691 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:23,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:23,692 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 39 states. [2018-11-14 17:08:23,692 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 39 states. [2018-11-14 17:08:23,695 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:23,695 INFO L93 Difference]: Finished difference Result 39 states and 43 transitions. [2018-11-14 17:08:23,695 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 43 transitions. [2018-11-14 17:08:23,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:23,696 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:23,696 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:23,696 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:23,696 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-14 17:08:23,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 42 transitions. [2018-11-14 17:08:23,699 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 42 transitions. Word has length 52 [2018-11-14 17:08:23,699 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:23,699 INFO L480 AbstractCegarLoop]: Abstraction has 38 states and 42 transitions. [2018-11-14 17:08:23,700 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-14 17:08:23,700 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2018-11-14 17:08:23,701 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2018-11-14 17:08:23,701 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:23,704 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 17:08:23,704 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:23,705 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:23,705 INFO L82 PathProgramCache]: Analyzing trace with hash -1013487801, now seen corresponding path program 2 times [2018-11-14 17:08:23,705 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:23,705 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:23,706 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:23,706 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:23,706 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:23,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:23,836 INFO L256 TraceCheckUtils]: 0: Hoare triple {1277#true} call ULTIMATE.init(); {1277#true} is VALID [2018-11-14 17:08:23,837 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 17:08:23,838 INFO L273 TraceCheckUtils]: 2: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,838 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1277#true} {1277#true} #69#return; {1277#true} is VALID [2018-11-14 17:08:23,839 INFO L256 TraceCheckUtils]: 4: Hoare triple {1277#true} call #t~ret12 := main(); {1277#true} is VALID [2018-11-14 17:08:23,839 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 17:08:23,841 INFO L273 TraceCheckUtils]: 6: Hoare triple {1279#(= main_~i~1 0)} assume true; {1279#(= main_~i~1 0)} is VALID [2018-11-14 17:08:23,841 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 17:08:23,843 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 17:08:23,843 INFO L273 TraceCheckUtils]: 9: Hoare triple {1280#(<= main_~i~1 1)} assume true; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:23,844 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 17:08:23,844 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 17:08:23,845 INFO L273 TraceCheckUtils]: 12: Hoare triple {1281#(<= main_~i~1 2)} assume true; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:23,845 INFO L273 TraceCheckUtils]: 13: Hoare triple {1281#(<= main_~i~1 2)} assume !(~i~1 < 10000); {1278#false} is VALID [2018-11-14 17:08:23,845 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 17:08:23,846 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 17:08:23,846 INFO L273 TraceCheckUtils]: 16: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,846 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 17:08:23,846 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 17:08:23,846 INFO L273 TraceCheckUtils]: 19: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,847 INFO L273 TraceCheckUtils]: 20: Hoare triple {1277#true} assume !(~i~0 < 10000); {1277#true} is VALID [2018-11-14 17:08:23,847 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 17:08:23,848 INFO L273 TraceCheckUtils]: 22: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,848 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1277#true} {1278#false} #73#return; {1278#false} is VALID [2018-11-14 17:08:23,848 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 17:08:23,849 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 17:08:23,849 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 17:08:23,849 INFO L273 TraceCheckUtils]: 27: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,849 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 17:08:23,850 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 17:08:23,850 INFO L273 TraceCheckUtils]: 30: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,850 INFO L273 TraceCheckUtils]: 31: Hoare triple {1277#true} assume !(~i~0 < 10000); {1277#true} is VALID [2018-11-14 17:08:23,850 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 17:08:23,850 INFO L273 TraceCheckUtils]: 33: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,851 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {1277#true} {1278#false} #75#return; {1278#false} is VALID [2018-11-14 17:08:23,851 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 17:08:23,851 INFO L273 TraceCheckUtils]: 36: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:23,851 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 17:08:23,851 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 17:08:23,852 INFO L273 TraceCheckUtils]: 39: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:23,852 INFO L273 TraceCheckUtils]: 40: Hoare triple {1278#false} assume !(~i~2 < 9999); {1278#false} is VALID [2018-11-14 17:08:23,852 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 17:08:23,852 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 17:08:23,852 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 17:08:23,853 INFO L273 TraceCheckUtils]: 44: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,853 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 17:08:23,853 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 17:08:23,853 INFO L273 TraceCheckUtils]: 47: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,853 INFO L273 TraceCheckUtils]: 48: Hoare triple {1277#true} assume !(~i~0 < 10000); {1277#true} is VALID [2018-11-14 17:08:23,853 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 17:08:23,854 INFO L273 TraceCheckUtils]: 50: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:23,854 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {1277#true} {1278#false} #77#return; {1278#false} is VALID [2018-11-14 17:08:23,854 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 17:08:23,854 INFO L273 TraceCheckUtils]: 53: Hoare triple {1278#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1278#false} is VALID [2018-11-14 17:08:23,854 INFO L273 TraceCheckUtils]: 54: Hoare triple {1278#false} assume !false; {1278#false} is VALID [2018-11-14 17:08:23,857 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 17:08:23,858 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:23,858 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 17:08:23,869 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:08:23,902 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:08:23,903 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:23,923 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:23,925 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:24,098 INFO L256 TraceCheckUtils]: 0: Hoare triple {1277#true} call ULTIMATE.init(); {1277#true} is VALID [2018-11-14 17:08:24,099 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 17:08:24,099 INFO L273 TraceCheckUtils]: 2: Hoare triple {1277#true} assume true; {1277#true} is VALID [2018-11-14 17:08:24,100 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1277#true} {1277#true} #69#return; {1277#true} is VALID [2018-11-14 17:08:24,100 INFO L256 TraceCheckUtils]: 4: Hoare triple {1277#true} call #t~ret12 := main(); {1277#true} is VALID [2018-11-14 17:08:24,106 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 17:08:24,107 INFO L273 TraceCheckUtils]: 6: Hoare triple {1300#(<= main_~i~1 0)} assume true; {1300#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:24,112 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 17:08:24,113 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 17:08:24,113 INFO L273 TraceCheckUtils]: 9: Hoare triple {1280#(<= main_~i~1 1)} assume true; {1280#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:24,115 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 17:08:24,116 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 17:08:24,117 INFO L273 TraceCheckUtils]: 12: Hoare triple {1281#(<= main_~i~1 2)} assume true; {1281#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:24,118 INFO L273 TraceCheckUtils]: 13: Hoare triple {1281#(<= main_~i~1 2)} assume !(~i~1 < 10000); {1278#false} is VALID [2018-11-14 17:08:24,118 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 17:08:24,118 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 17:08:24,119 INFO L273 TraceCheckUtils]: 16: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,119 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 17:08:24,119 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 17:08:24,120 INFO L273 TraceCheckUtils]: 19: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,120 INFO L273 TraceCheckUtils]: 20: Hoare triple {1278#false} assume !(~i~0 < 10000); {1278#false} is VALID [2018-11-14 17:08:24,120 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 17:08:24,121 INFO L273 TraceCheckUtils]: 22: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,121 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1278#false} {1278#false} #73#return; {1278#false} is VALID [2018-11-14 17:08:24,122 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 17:08:24,122 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 17:08:24,123 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 17:08:24,123 INFO L273 TraceCheckUtils]: 27: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,123 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 17:08:24,123 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 17:08:24,124 INFO L273 TraceCheckUtils]: 30: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,124 INFO L273 TraceCheckUtils]: 31: Hoare triple {1278#false} assume !(~i~0 < 10000); {1278#false} is VALID [2018-11-14 17:08:24,124 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 17:08:24,124 INFO L273 TraceCheckUtils]: 33: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,125 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {1278#false} {1278#false} #75#return; {1278#false} is VALID [2018-11-14 17:08:24,125 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 17:08:24,125 INFO L273 TraceCheckUtils]: 36: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,125 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 17:08:24,126 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 17:08:24,126 INFO L273 TraceCheckUtils]: 39: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,126 INFO L273 TraceCheckUtils]: 40: Hoare triple {1278#false} assume !(~i~2 < 9999); {1278#false} is VALID [2018-11-14 17:08:24,126 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 17:08:24,127 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 17:08:24,127 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 17:08:24,127 INFO L273 TraceCheckUtils]: 44: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,127 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 17:08:24,128 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 17:08:24,128 INFO L273 TraceCheckUtils]: 47: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,128 INFO L273 TraceCheckUtils]: 48: Hoare triple {1278#false} assume !(~i~0 < 10000); {1278#false} is VALID [2018-11-14 17:08:24,128 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 17:08:24,129 INFO L273 TraceCheckUtils]: 50: Hoare triple {1278#false} assume true; {1278#false} is VALID [2018-11-14 17:08:24,129 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {1278#false} {1278#false} #77#return; {1278#false} is VALID [2018-11-14 17:08:24,129 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 17:08:24,129 INFO L273 TraceCheckUtils]: 53: Hoare triple {1278#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1278#false} is VALID [2018-11-14 17:08:24,130 INFO L273 TraceCheckUtils]: 54: Hoare triple {1278#false} assume !false; {1278#false} is VALID [2018-11-14 17:08:24,133 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 17:08:24,156 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:24,156 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 6 [2018-11-14 17:08:24,156 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2018-11-14 17:08:24,157 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:24,157 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-14 17:08:24,220 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 17:08:24,220 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-14 17:08:24,220 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-14 17:08:24,221 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-14 17:08:24,221 INFO L87 Difference]: Start difference. First operand 38 states and 42 transitions. Second operand 6 states. [2018-11-14 17:08:24,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:24,421 INFO L93 Difference]: Finished difference Result 66 states and 74 transitions. [2018-11-14 17:08:24,421 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-14 17:08:24,421 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2018-11-14 17:08:24,422 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:24,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 17:08:24,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2018-11-14 17:08:24,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 17:08:24,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2018-11-14 17:08:24,427 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 66 transitions. [2018-11-14 17:08:24,574 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 17:08:24,576 INFO L225 Difference]: With dead ends: 66 [2018-11-14 17:08:24,576 INFO L226 Difference]: Without dead ends: 42 [2018-11-14 17:08:24,577 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 55 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-14 17:08:24,578 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2018-11-14 17:08:24,599 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2018-11-14 17:08:24,600 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:24,600 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand 41 states. [2018-11-14 17:08:24,600 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 41 states. [2018-11-14 17:08:24,600 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 41 states. [2018-11-14 17:08:24,604 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:24,605 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2018-11-14 17:08:24,605 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2018-11-14 17:08:24,605 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:24,605 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:24,606 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 42 states. [2018-11-14 17:08:24,606 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 42 states. [2018-11-14 17:08:24,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:24,612 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2018-11-14 17:08:24,612 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2018-11-14 17:08:24,612 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:24,613 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:24,613 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:24,613 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:24,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-14 17:08:24,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2018-11-14 17:08:24,618 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 55 [2018-11-14 17:08:24,618 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:24,618 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2018-11-14 17:08:24,619 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-14 17:08:24,619 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2018-11-14 17:08:24,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-14 17:08:24,620 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:24,620 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 17:08:24,620 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:24,620 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:24,621 INFO L82 PathProgramCache]: Analyzing trace with hash -1574795812, now seen corresponding path program 3 times [2018-11-14 17:08:24,621 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:24,621 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:24,622 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:24,622 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:24,622 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:24,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:25,234 INFO L256 TraceCheckUtils]: 0: Hoare triple {1678#true} call ULTIMATE.init(); {1678#true} is VALID [2018-11-14 17:08:25,234 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 17:08:25,235 INFO L273 TraceCheckUtils]: 2: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,235 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1678#true} {1678#true} #69#return; {1678#true} is VALID [2018-11-14 17:08:25,235 INFO L256 TraceCheckUtils]: 4: Hoare triple {1678#true} call #t~ret12 := main(); {1678#true} is VALID [2018-11-14 17:08:25,236 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 17:08:25,237 INFO L273 TraceCheckUtils]: 6: Hoare triple {1680#(= main_~i~1 0)} assume true; {1680#(= main_~i~1 0)} is VALID [2018-11-14 17:08:25,237 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 17:08:25,238 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 17:08:25,239 INFO L273 TraceCheckUtils]: 9: Hoare triple {1681#(<= main_~i~1 1)} assume true; {1681#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:25,240 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 17:08:25,241 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 17:08:25,241 INFO L273 TraceCheckUtils]: 12: Hoare triple {1682#(<= main_~i~1 2)} assume true; {1682#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:25,242 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 17:08:25,243 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 17:08:25,244 INFO L273 TraceCheckUtils]: 15: Hoare triple {1683#(<= main_~i~1 3)} assume true; {1683#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:25,244 INFO L273 TraceCheckUtils]: 16: Hoare triple {1683#(<= main_~i~1 3)} assume !(~i~1 < 10000); {1679#false} is VALID [2018-11-14 17:08:25,245 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 17:08:25,245 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 17:08:25,245 INFO L273 TraceCheckUtils]: 19: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,246 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 17:08:25,246 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 17:08:25,246 INFO L273 TraceCheckUtils]: 22: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,247 INFO L273 TraceCheckUtils]: 23: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 17:08:25,247 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 17:08:25,247 INFO L273 TraceCheckUtils]: 25: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,248 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {1678#true} {1679#false} #73#return; {1679#false} is VALID [2018-11-14 17:08:25,248 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 17:08:25,248 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 17:08:25,248 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 17:08:25,249 INFO L273 TraceCheckUtils]: 30: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,249 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 17:08:25,249 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 17:08:25,249 INFO L273 TraceCheckUtils]: 33: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,249 INFO L273 TraceCheckUtils]: 34: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 17:08:25,250 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 17:08:25,250 INFO L273 TraceCheckUtils]: 36: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,250 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1678#true} {1679#false} #75#return; {1679#false} is VALID [2018-11-14 17:08:25,250 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 17:08:25,250 INFO L273 TraceCheckUtils]: 39: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 17:08:25,250 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 17:08:25,251 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 17:08:25,251 INFO L273 TraceCheckUtils]: 42: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 17:08:25,251 INFO L273 TraceCheckUtils]: 43: Hoare triple {1679#false} assume !(~i~2 < 9999); {1679#false} is VALID [2018-11-14 17:08:25,251 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 17:08:25,251 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 17:08:25,252 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 17:08:25,252 INFO L273 TraceCheckUtils]: 47: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,252 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 17:08:25,252 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 17:08:25,252 INFO L273 TraceCheckUtils]: 50: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,252 INFO L273 TraceCheckUtils]: 51: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 17:08:25,253 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 17:08:25,253 INFO L273 TraceCheckUtils]: 53: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,253 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1678#true} {1679#false} #77#return; {1679#false} is VALID [2018-11-14 17:08:25,253 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 17:08:25,253 INFO L273 TraceCheckUtils]: 56: Hoare triple {1679#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1679#false} is VALID [2018-11-14 17:08:25,253 INFO L273 TraceCheckUtils]: 57: Hoare triple {1679#false} assume !false; {1679#false} is VALID [2018-11-14 17:08:25,257 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 17:08:25,257 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:25,257 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 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 17:08:25,266 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:08:25,290 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2018-11-14 17:08:25,290 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:25,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:25,325 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:25,489 INFO L256 TraceCheckUtils]: 0: Hoare triple {1678#true} call ULTIMATE.init(); {1678#true} is VALID [2018-11-14 17:08:25,490 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 17:08:25,490 INFO L273 TraceCheckUtils]: 2: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,490 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1678#true} {1678#true} #69#return; {1678#true} is VALID [2018-11-14 17:08:25,491 INFO L256 TraceCheckUtils]: 4: Hoare triple {1678#true} call #t~ret12 := main(); {1678#true} is VALID [2018-11-14 17:08:25,491 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 17:08:25,491 INFO L273 TraceCheckUtils]: 6: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,492 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 17:08:25,492 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 17:08:25,492 INFO L273 TraceCheckUtils]: 9: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,492 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 17:08:25,493 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 17:08:25,493 INFO L273 TraceCheckUtils]: 12: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,493 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 17:08:25,494 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 17:08:25,494 INFO L273 TraceCheckUtils]: 15: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,494 INFO L273 TraceCheckUtils]: 16: Hoare triple {1678#true} assume !(~i~1 < 10000); {1678#true} is VALID [2018-11-14 17:08:25,494 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 17:08:25,494 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 17:08:25,494 INFO L273 TraceCheckUtils]: 19: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,495 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 17:08:25,495 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 17:08:25,495 INFO L273 TraceCheckUtils]: 22: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,495 INFO L273 TraceCheckUtils]: 23: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 17:08:25,495 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 17:08:25,495 INFO L273 TraceCheckUtils]: 25: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,496 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {1678#true} {1678#true} #73#return; {1678#true} is VALID [2018-11-14 17:08:25,496 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 17:08:25,496 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 17:08:25,496 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 17:08:25,496 INFO L273 TraceCheckUtils]: 30: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,496 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 17:08:25,497 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 17:08:25,497 INFO L273 TraceCheckUtils]: 33: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,497 INFO L273 TraceCheckUtils]: 34: Hoare triple {1678#true} assume !(~i~0 < 10000); {1678#true} is VALID [2018-11-14 17:08:25,497 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 17:08:25,497 INFO L273 TraceCheckUtils]: 36: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,497 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1678#true} {1678#true} #75#return; {1678#true} is VALID [2018-11-14 17:08:25,498 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 17:08:25,498 INFO L273 TraceCheckUtils]: 39: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,498 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 17:08:25,498 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 17:08:25,499 INFO L273 TraceCheckUtils]: 42: Hoare triple {1678#true} assume true; {1678#true} is VALID [2018-11-14 17:08:25,499 INFO L273 TraceCheckUtils]: 43: Hoare triple {1678#true} assume !(~i~2 < 9999); {1678#true} is VALID [2018-11-14 17:08:25,499 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 17:08:25,499 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 17:08:25,512 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 17:08:25,513 INFO L273 TraceCheckUtils]: 47: Hoare triple {1825#(<= mapavg_~i~0 0)} assume true; {1825#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:25,515 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 17:08:25,515 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 17:08:25,516 INFO L273 TraceCheckUtils]: 50: Hoare triple {1835#(<= mapavg_~i~0 1)} assume true; {1835#(<= mapavg_~i~0 1)} is VALID [2018-11-14 17:08:25,516 INFO L273 TraceCheckUtils]: 51: Hoare triple {1835#(<= mapavg_~i~0 1)} assume !(~i~0 < 10000); {1679#false} is VALID [2018-11-14 17:08:25,517 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 17:08:25,517 INFO L273 TraceCheckUtils]: 53: Hoare triple {1679#false} assume true; {1679#false} is VALID [2018-11-14 17:08:25,517 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1679#false} {1678#true} #77#return; {1679#false} is VALID [2018-11-14 17:08:25,517 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 17:08:25,517 INFO L273 TraceCheckUtils]: 56: Hoare triple {1679#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1679#false} is VALID [2018-11-14 17:08:25,518 INFO L273 TraceCheckUtils]: 57: Hoare triple {1679#false} assume !false; {1679#false} is VALID [2018-11-14 17:08:25,522 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 17:08:25,552 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:25,553 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 4] total 8 [2018-11-14 17:08:25,556 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 58 [2018-11-14 17:08:25,556 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:25,556 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-14 17:08:25,659 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 17:08:25,659 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-14 17:08:25,660 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-14 17:08:25,660 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-14 17:08:25,660 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand 8 states. [2018-11-14 17:08:26,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:26,022 INFO L93 Difference]: Finished difference Result 73 states and 85 transitions. [2018-11-14 17:08:26,023 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-14 17:08:26,023 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 58 [2018-11-14 17:08:26,023 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:26,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 17:08:26,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2018-11-14 17:08:26,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 17:08:26,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2018-11-14 17:08:26,028 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 79 transitions. [2018-11-14 17:08:26,173 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 17:08:26,175 INFO L225 Difference]: With dead ends: 73 [2018-11-14 17:08:26,176 INFO L226 Difference]: Without dead ends: 49 [2018-11-14 17:08:26,177 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-14 17:08:26,178 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2018-11-14 17:08:26,218 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 47. [2018-11-14 17:08:26,219 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:26,219 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand 47 states. [2018-11-14 17:08:26,219 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 47 states. [2018-11-14 17:08:26,219 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 47 states. [2018-11-14 17:08:26,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:26,221 INFO L93 Difference]: Finished difference Result 49 states and 53 transitions. [2018-11-14 17:08:26,222 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 53 transitions. [2018-11-14 17:08:26,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:26,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:26,222 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 49 states. [2018-11-14 17:08:26,223 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 49 states. [2018-11-14 17:08:26,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:26,225 INFO L93 Difference]: Finished difference Result 49 states and 53 transitions. [2018-11-14 17:08:26,225 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 53 transitions. [2018-11-14 17:08:26,226 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:26,226 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:26,226 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:26,226 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:26,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-14 17:08:26,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2018-11-14 17:08:26,229 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 51 transitions. Word has length 58 [2018-11-14 17:08:26,229 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:26,229 INFO L480 AbstractCegarLoop]: Abstraction has 47 states and 51 transitions. [2018-11-14 17:08:26,229 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-14 17:08:26,229 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2018-11-14 17:08:26,230 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2018-11-14 17:08:26,230 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:26,230 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 17:08:26,231 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:26,231 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:26,231 INFO L82 PathProgramCache]: Analyzing trace with hash -370044124, now seen corresponding path program 4 times [2018-11-14 17:08:26,231 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:26,231 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:26,232 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:26,232 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:26,233 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:26,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:26,628 INFO L256 TraceCheckUtils]: 0: Hoare triple {2121#true} call ULTIMATE.init(); {2121#true} is VALID [2018-11-14 17:08:26,629 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 17:08:26,629 INFO L273 TraceCheckUtils]: 2: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,630 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2121#true} {2121#true} #69#return; {2121#true} is VALID [2018-11-14 17:08:26,630 INFO L256 TraceCheckUtils]: 4: Hoare triple {2121#true} call #t~ret12 := main(); {2121#true} is VALID [2018-11-14 17:08:26,631 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 17:08:26,631 INFO L273 TraceCheckUtils]: 6: Hoare triple {2123#(= main_~i~1 0)} assume true; {2123#(= main_~i~1 0)} is VALID [2018-11-14 17:08:26,632 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 17:08:26,632 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 17:08:26,633 INFO L273 TraceCheckUtils]: 9: Hoare triple {2124#(<= main_~i~1 1)} assume true; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:26,634 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 17:08:26,635 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 17:08:26,635 INFO L273 TraceCheckUtils]: 12: Hoare triple {2125#(<= main_~i~1 2)} assume true; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:26,636 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 17:08:26,636 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 17:08:26,637 INFO L273 TraceCheckUtils]: 15: Hoare triple {2126#(<= main_~i~1 3)} assume true; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:26,637 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 17:08:26,638 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 17:08:26,638 INFO L273 TraceCheckUtils]: 18: Hoare triple {2127#(<= main_~i~1 4)} assume true; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:26,639 INFO L273 TraceCheckUtils]: 19: Hoare triple {2127#(<= main_~i~1 4)} assume !(~i~1 < 10000); {2122#false} is VALID [2018-11-14 17:08:26,639 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 17:08:26,640 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 17:08:26,640 INFO L273 TraceCheckUtils]: 22: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,640 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 17:08:26,641 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 17:08:26,641 INFO L273 TraceCheckUtils]: 25: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,641 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 17:08:26,641 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 17:08:26,642 INFO L273 TraceCheckUtils]: 28: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,642 INFO L273 TraceCheckUtils]: 29: Hoare triple {2121#true} assume !(~i~0 < 10000); {2121#true} is VALID [2018-11-14 17:08:26,642 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 17:08:26,642 INFO L273 TraceCheckUtils]: 31: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,642 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2121#true} {2122#false} #73#return; {2122#false} is VALID [2018-11-14 17:08:26,642 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 17:08:26,643 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 17:08:26,643 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 17:08:26,643 INFO L273 TraceCheckUtils]: 36: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,643 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 17:08:26,643 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 17:08:26,643 INFO L273 TraceCheckUtils]: 39: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,644 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 17:08:26,644 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 17:08:26,644 INFO L273 TraceCheckUtils]: 42: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,644 INFO L273 TraceCheckUtils]: 43: Hoare triple {2121#true} assume !(~i~0 < 10000); {2121#true} is VALID [2018-11-14 17:08:26,644 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 17:08:26,644 INFO L273 TraceCheckUtils]: 45: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,645 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {2121#true} {2122#false} #75#return; {2122#false} is VALID [2018-11-14 17:08:26,645 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 17:08:26,645 INFO L273 TraceCheckUtils]: 48: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,645 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 17:08:26,645 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 17:08:26,645 INFO L273 TraceCheckUtils]: 51: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,645 INFO L273 TraceCheckUtils]: 52: Hoare triple {2122#false} assume !(~i~2 < 9999); {2122#false} is VALID [2018-11-14 17:08:26,646 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 17:08:26,646 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 17:08:26,646 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 17:08:26,646 INFO L273 TraceCheckUtils]: 56: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,646 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 17:08:26,646 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 17:08:26,647 INFO L273 TraceCheckUtils]: 59: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,647 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 17:08:26,647 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 17:08:26,647 INFO L273 TraceCheckUtils]: 62: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,647 INFO L273 TraceCheckUtils]: 63: Hoare triple {2121#true} assume !(~i~0 < 10000); {2121#true} is VALID [2018-11-14 17:08:26,647 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 17:08:26,648 INFO L273 TraceCheckUtils]: 65: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,648 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {2121#true} {2122#false} #77#return; {2122#false} is VALID [2018-11-14 17:08:26,648 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 17:08:26,648 INFO L273 TraceCheckUtils]: 68: Hoare triple {2122#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2122#false} is VALID [2018-11-14 17:08:26,648 INFO L273 TraceCheckUtils]: 69: Hoare triple {2122#false} assume !false; {2122#false} is VALID [2018-11-14 17:08:26,666 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 17:08:26,667 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:26,667 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 17:08:26,680 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 17:08:26,743 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 17:08:26,743 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:26,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:26,761 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:26,898 INFO L256 TraceCheckUtils]: 0: Hoare triple {2121#true} call ULTIMATE.init(); {2121#true} is VALID [2018-11-14 17:08:26,899 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 17:08:26,899 INFO L273 TraceCheckUtils]: 2: Hoare triple {2121#true} assume true; {2121#true} is VALID [2018-11-14 17:08:26,899 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2121#true} {2121#true} #69#return; {2121#true} is VALID [2018-11-14 17:08:26,899 INFO L256 TraceCheckUtils]: 4: Hoare triple {2121#true} call #t~ret12 := main(); {2121#true} is VALID [2018-11-14 17:08:26,900 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 17:08:26,900 INFO L273 TraceCheckUtils]: 6: Hoare triple {2146#(<= main_~i~1 0)} assume true; {2146#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:26,901 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 17:08:26,901 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 17:08:26,902 INFO L273 TraceCheckUtils]: 9: Hoare triple {2124#(<= main_~i~1 1)} assume true; {2124#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:26,902 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 17:08:26,903 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 17:08:26,903 INFO L273 TraceCheckUtils]: 12: Hoare triple {2125#(<= main_~i~1 2)} assume true; {2125#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:26,903 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 17:08:26,904 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 17:08:26,905 INFO L273 TraceCheckUtils]: 15: Hoare triple {2126#(<= main_~i~1 3)} assume true; {2126#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:26,905 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 17:08:26,906 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 17:08:26,907 INFO L273 TraceCheckUtils]: 18: Hoare triple {2127#(<= main_~i~1 4)} assume true; {2127#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:26,907 INFO L273 TraceCheckUtils]: 19: Hoare triple {2127#(<= main_~i~1 4)} assume !(~i~1 < 10000); {2122#false} is VALID [2018-11-14 17:08:26,908 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 17:08:26,908 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 17:08:26,908 INFO L273 TraceCheckUtils]: 22: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,908 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 17:08:26,909 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 17:08:26,909 INFO L273 TraceCheckUtils]: 25: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,909 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 17:08:26,909 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 17:08:26,909 INFO L273 TraceCheckUtils]: 28: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,910 INFO L273 TraceCheckUtils]: 29: Hoare triple {2122#false} assume !(~i~0 < 10000); {2122#false} is VALID [2018-11-14 17:08:26,910 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 17:08:26,910 INFO L273 TraceCheckUtils]: 31: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,910 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2122#false} {2122#false} #73#return; {2122#false} is VALID [2018-11-14 17:08:26,910 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 17:08:26,910 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 17:08:26,911 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 17:08:26,911 INFO L273 TraceCheckUtils]: 36: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,911 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 17:08:26,911 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 17:08:26,911 INFO L273 TraceCheckUtils]: 39: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,911 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 17:08:26,912 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 17:08:26,912 INFO L273 TraceCheckUtils]: 42: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,912 INFO L273 TraceCheckUtils]: 43: Hoare triple {2122#false} assume !(~i~0 < 10000); {2122#false} is VALID [2018-11-14 17:08:26,912 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 17:08:26,912 INFO L273 TraceCheckUtils]: 45: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,912 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {2122#false} {2122#false} #75#return; {2122#false} is VALID [2018-11-14 17:08:26,912 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 17:08:26,913 INFO L273 TraceCheckUtils]: 48: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,913 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 17:08:26,913 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 17:08:26,913 INFO L273 TraceCheckUtils]: 51: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,913 INFO L273 TraceCheckUtils]: 52: Hoare triple {2122#false} assume !(~i~2 < 9999); {2122#false} is VALID [2018-11-14 17:08:26,913 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 17:08:26,914 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 17:08:26,914 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 17:08:26,914 INFO L273 TraceCheckUtils]: 56: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,914 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 17:08:26,914 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 17:08:26,915 INFO L273 TraceCheckUtils]: 59: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,915 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 17:08:26,915 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 17:08:26,915 INFO L273 TraceCheckUtils]: 62: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,915 INFO L273 TraceCheckUtils]: 63: Hoare triple {2122#false} assume !(~i~0 < 10000); {2122#false} is VALID [2018-11-14 17:08:26,916 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 17:08:26,916 INFO L273 TraceCheckUtils]: 65: Hoare triple {2122#false} assume true; {2122#false} is VALID [2018-11-14 17:08:26,916 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {2122#false} {2122#false} #77#return; {2122#false} is VALID [2018-11-14 17:08:26,916 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 17:08:26,917 INFO L273 TraceCheckUtils]: 68: Hoare triple {2122#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2122#false} is VALID [2018-11-14 17:08:26,917 INFO L273 TraceCheckUtils]: 69: Hoare triple {2122#false} assume !false; {2122#false} is VALID [2018-11-14 17:08:26,922 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 17:08:26,947 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:26,947 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2018-11-14 17:08:26,948 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 70 [2018-11-14 17:08:26,949 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:26,949 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-14 17:08:27,095 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 17:08:27,095 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-14 17:08:27,096 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-14 17:08:27,096 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-14 17:08:27,096 INFO L87 Difference]: Start difference. First operand 47 states and 51 transitions. Second operand 8 states. [2018-11-14 17:08:27,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:27,401 INFO L93 Difference]: Finished difference Result 78 states and 86 transitions. [2018-11-14 17:08:27,401 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-14 17:08:27,401 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 70 [2018-11-14 17:08:27,401 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:27,402 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 17:08:27,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 72 transitions. [2018-11-14 17:08:27,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-14 17:08:27,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 72 transitions. [2018-11-14 17:08:27,406 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 72 transitions. [2018-11-14 17:08:27,583 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 17:08:27,586 INFO L225 Difference]: With dead ends: 78 [2018-11-14 17:08:27,586 INFO L226 Difference]: Without dead ends: 51 [2018-11-14 17:08:27,587 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 17:08:27,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-14 17:08:27,623 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2018-11-14 17:08:27,623 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:27,623 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand 50 states. [2018-11-14 17:08:27,623 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 50 states. [2018-11-14 17:08:27,623 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 50 states. [2018-11-14 17:08:27,627 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:27,627 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2018-11-14 17:08:27,628 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2018-11-14 17:08:27,628 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:27,628 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:27,628 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 51 states. [2018-11-14 17:08:27,628 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 51 states. [2018-11-14 17:08:27,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:27,631 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2018-11-14 17:08:27,631 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2018-11-14 17:08:27,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:27,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:27,631 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:27,631 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:27,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-14 17:08:27,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 54 transitions. [2018-11-14 17:08:27,634 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 54 transitions. Word has length 70 [2018-11-14 17:08:27,634 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:27,634 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 54 transitions. [2018-11-14 17:08:27,634 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-14 17:08:27,634 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 54 transitions. [2018-11-14 17:08:27,635 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2018-11-14 17:08:27,635 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:27,636 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 17:08:27,636 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:27,636 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:27,636 INFO L82 PathProgramCache]: Analyzing trace with hash 636278767, now seen corresponding path program 5 times [2018-11-14 17:08:27,636 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:27,636 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:27,637 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:27,637 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:27,637 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:27,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:27,887 INFO L256 TraceCheckUtils]: 0: Hoare triple {2615#true} call ULTIMATE.init(); {2615#true} is VALID [2018-11-14 17:08:27,888 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 17:08:27,888 INFO L273 TraceCheckUtils]: 2: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,888 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2615#true} {2615#true} #69#return; {2615#true} is VALID [2018-11-14 17:08:27,888 INFO L256 TraceCheckUtils]: 4: Hoare triple {2615#true} call #t~ret12 := main(); {2615#true} is VALID [2018-11-14 17:08:27,889 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 17:08:27,889 INFO L273 TraceCheckUtils]: 6: Hoare triple {2617#(= main_~i~1 0)} assume true; {2617#(= main_~i~1 0)} is VALID [2018-11-14 17:08:27,890 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 17:08:27,890 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 17:08:27,891 INFO L273 TraceCheckUtils]: 9: Hoare triple {2618#(<= main_~i~1 1)} assume true; {2618#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:27,891 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 17:08:27,891 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 17:08:27,892 INFO L273 TraceCheckUtils]: 12: Hoare triple {2619#(<= main_~i~1 2)} assume true; {2619#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:27,892 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 17:08:27,893 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 17:08:27,894 INFO L273 TraceCheckUtils]: 15: Hoare triple {2620#(<= main_~i~1 3)} assume true; {2620#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:27,894 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 17:08:27,895 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 17:08:27,895 INFO L273 TraceCheckUtils]: 18: Hoare triple {2621#(<= main_~i~1 4)} assume true; {2621#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:27,896 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 17:08:27,897 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 17:08:27,897 INFO L273 TraceCheckUtils]: 21: Hoare triple {2622#(<= main_~i~1 5)} assume true; {2622#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:27,898 INFO L273 TraceCheckUtils]: 22: Hoare triple {2622#(<= main_~i~1 5)} assume !(~i~1 < 10000); {2616#false} is VALID [2018-11-14 17:08:27,898 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 17:08:27,898 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 17:08:27,899 INFO L273 TraceCheckUtils]: 25: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,899 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 17:08:27,899 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 17:08:27,899 INFO L273 TraceCheckUtils]: 28: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,900 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 17:08:27,900 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 17:08:27,900 INFO L273 TraceCheckUtils]: 31: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,900 INFO L273 TraceCheckUtils]: 32: Hoare triple {2615#true} assume !(~i~0 < 10000); {2615#true} is VALID [2018-11-14 17:08:27,900 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 17:08:27,901 INFO L273 TraceCheckUtils]: 34: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,901 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {2615#true} {2616#false} #73#return; {2616#false} is VALID [2018-11-14 17:08:27,901 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 17:08:27,901 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 17:08:27,902 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 17:08:27,902 INFO L273 TraceCheckUtils]: 39: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,902 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 17:08:27,902 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 17:08:27,902 INFO L273 TraceCheckUtils]: 42: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,903 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 17:08:27,903 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 17:08:27,903 INFO L273 TraceCheckUtils]: 45: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,903 INFO L273 TraceCheckUtils]: 46: Hoare triple {2615#true} assume !(~i~0 < 10000); {2615#true} is VALID [2018-11-14 17:08:27,903 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 17:08:27,903 INFO L273 TraceCheckUtils]: 48: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,903 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2615#true} {2616#false} #75#return; {2616#false} is VALID [2018-11-14 17:08:27,904 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 17:08:27,904 INFO L273 TraceCheckUtils]: 51: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:27,904 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 17:08:27,904 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 17:08:27,904 INFO L273 TraceCheckUtils]: 54: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:27,904 INFO L273 TraceCheckUtils]: 55: Hoare triple {2616#false} assume !(~i~2 < 9999); {2616#false} is VALID [2018-11-14 17:08:27,904 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 17:08:27,904 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 17:08:27,905 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 17:08:27,905 INFO L273 TraceCheckUtils]: 59: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,905 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 17:08:27,905 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 17:08:27,905 INFO L273 TraceCheckUtils]: 62: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,905 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 17:08:27,905 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 17:08:27,905 INFO L273 TraceCheckUtils]: 65: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,906 INFO L273 TraceCheckUtils]: 66: Hoare triple {2615#true} assume !(~i~0 < 10000); {2615#true} is VALID [2018-11-14 17:08:27,906 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 17:08:27,906 INFO L273 TraceCheckUtils]: 68: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:27,906 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {2615#true} {2616#false} #77#return; {2616#false} is VALID [2018-11-14 17:08:27,906 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 17:08:27,906 INFO L273 TraceCheckUtils]: 71: Hoare triple {2616#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2616#false} is VALID [2018-11-14 17:08:27,906 INFO L273 TraceCheckUtils]: 72: Hoare triple {2616#false} assume !false; {2616#false} is VALID [2018-11-14 17:08:27,909 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 17:08:27,909 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:27,909 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 17:08:27,920 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 17:08:27,981 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2018-11-14 17:08:27,982 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:28,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:28,010 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:28,141 INFO L256 TraceCheckUtils]: 0: Hoare triple {2615#true} call ULTIMATE.init(); {2615#true} is VALID [2018-11-14 17:08:28,142 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 17:08:28,142 INFO L273 TraceCheckUtils]: 2: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:28,142 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2615#true} {2615#true} #69#return; {2615#true} is VALID [2018-11-14 17:08:28,142 INFO L256 TraceCheckUtils]: 4: Hoare triple {2615#true} call #t~ret12 := main(); {2615#true} is VALID [2018-11-14 17:08:28,143 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 17:08:28,143 INFO L273 TraceCheckUtils]: 6: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:28,143 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 17:08:28,143 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 17:08:28,144 INFO L273 TraceCheckUtils]: 9: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:28,144 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 17:08:28,144 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 17:08:28,144 INFO L273 TraceCheckUtils]: 12: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:28,144 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 17:08:28,144 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 17:08:28,144 INFO L273 TraceCheckUtils]: 15: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:28,144 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 17:08:28,144 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 17:08:28,145 INFO L273 TraceCheckUtils]: 18: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:28,145 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 17:08:28,145 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 17:08:28,145 INFO L273 TraceCheckUtils]: 21: Hoare triple {2615#true} assume true; {2615#true} is VALID [2018-11-14 17:08:28,145 INFO L273 TraceCheckUtils]: 22: Hoare triple {2615#true} assume !(~i~1 < 10000); {2615#true} is VALID [2018-11-14 17:08:28,145 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 17:08:28,146 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 17:08:28,146 INFO L273 TraceCheckUtils]: 25: Hoare triple {2698#(<= mapavg_~i~0 0)} assume true; {2698#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:28,146 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 17:08:28,147 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 17:08:28,147 INFO L273 TraceCheckUtils]: 28: Hoare triple {2708#(<= mapavg_~i~0 1)} assume true; {2708#(<= mapavg_~i~0 1)} is VALID [2018-11-14 17:08:28,148 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 17:08:28,148 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 17:08:28,148 INFO L273 TraceCheckUtils]: 31: Hoare triple {2718#(<= mapavg_~i~0 2)} assume true; {2718#(<= mapavg_~i~0 2)} is VALID [2018-11-14 17:08:28,149 INFO L273 TraceCheckUtils]: 32: Hoare triple {2718#(<= mapavg_~i~0 2)} assume !(~i~0 < 10000); {2616#false} is VALID [2018-11-14 17:08:28,149 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 17:08:28,149 INFO L273 TraceCheckUtils]: 34: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,150 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {2616#false} {2615#true} #73#return; {2616#false} is VALID [2018-11-14 17:08:28,150 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 17:08:28,150 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 17:08:28,151 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 17:08:28,151 INFO L273 TraceCheckUtils]: 39: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,151 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 17:08:28,152 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 17:08:28,152 INFO L273 TraceCheckUtils]: 42: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,152 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 17:08:28,152 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 17:08:28,153 INFO L273 TraceCheckUtils]: 45: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,153 INFO L273 TraceCheckUtils]: 46: Hoare triple {2616#false} assume !(~i~0 < 10000); {2616#false} is VALID [2018-11-14 17:08:28,153 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 17:08:28,154 INFO L273 TraceCheckUtils]: 48: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,154 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2616#false} {2616#false} #75#return; {2616#false} is VALID [2018-11-14 17:08:28,154 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 17:08:28,155 INFO L273 TraceCheckUtils]: 51: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,155 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 17:08:28,155 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 17:08:28,155 INFO L273 TraceCheckUtils]: 54: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,155 INFO L273 TraceCheckUtils]: 55: Hoare triple {2616#false} assume !(~i~2 < 9999); {2616#false} is VALID [2018-11-14 17:08:28,155 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 17:08:28,156 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 17:08:28,156 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 17:08:28,156 INFO L273 TraceCheckUtils]: 59: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,156 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 17:08:28,156 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 17:08:28,157 INFO L273 TraceCheckUtils]: 62: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,157 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 17:08:28,157 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 17:08:28,157 INFO L273 TraceCheckUtils]: 65: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,157 INFO L273 TraceCheckUtils]: 66: Hoare triple {2616#false} assume !(~i~0 < 10000); {2616#false} is VALID [2018-11-14 17:08:28,157 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 17:08:28,158 INFO L273 TraceCheckUtils]: 68: Hoare triple {2616#false} assume true; {2616#false} is VALID [2018-11-14 17:08:28,158 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {2616#false} {2616#false} #77#return; {2616#false} is VALID [2018-11-14 17:08:28,158 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 17:08:28,158 INFO L273 TraceCheckUtils]: 71: Hoare triple {2616#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2616#false} is VALID [2018-11-14 17:08:28,158 INFO L273 TraceCheckUtils]: 72: Hoare triple {2616#false} assume !false; {2616#false} is VALID [2018-11-14 17:08:28,161 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 17:08:28,191 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:28,192 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 5] total 11 [2018-11-14 17:08:28,192 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 73 [2018-11-14 17:08:28,193 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:28,193 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 17:08:28,330 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 17:08:28,330 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 17:08:28,331 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 17:08:28,331 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-14 17:08:28,331 INFO L87 Difference]: Start difference. First operand 50 states and 54 transitions. Second operand 11 states. [2018-11-14 17:08:29,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:29,127 INFO L93 Difference]: Finished difference Result 85 states and 97 transitions. [2018-11-14 17:08:29,127 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 17:08:29,128 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 73 [2018-11-14 17:08:29,128 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:29,128 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:08:29,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2018-11-14 17:08:29,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:08:29,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2018-11-14 17:08:29,133 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 88 transitions. [2018-11-14 17:08:29,219 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 17:08:29,221 INFO L225 Difference]: With dead ends: 85 [2018-11-14 17:08:29,221 INFO L226 Difference]: Without dead ends: 58 [2018-11-14 17:08:29,224 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 17:08:29,225 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2018-11-14 17:08:29,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 56. [2018-11-14 17:08:29,244 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:29,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand 56 states. [2018-11-14 17:08:29,244 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 56 states. [2018-11-14 17:08:29,245 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 56 states. [2018-11-14 17:08:29,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:29,247 INFO L93 Difference]: Finished difference Result 58 states and 62 transitions. [2018-11-14 17:08:29,247 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 62 transitions. [2018-11-14 17:08:29,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:29,248 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:29,248 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 58 states. [2018-11-14 17:08:29,248 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 58 states. [2018-11-14 17:08:29,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:29,251 INFO L93 Difference]: Finished difference Result 58 states and 62 transitions. [2018-11-14 17:08:29,251 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 62 transitions. [2018-11-14 17:08:29,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:29,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:29,251 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:29,251 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:29,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 56 states. [2018-11-14 17:08:29,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 60 transitions. [2018-11-14 17:08:29,254 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 60 transitions. Word has length 73 [2018-11-14 17:08:29,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:29,254 INFO L480 AbstractCegarLoop]: Abstraction has 56 states and 60 transitions. [2018-11-14 17:08:29,254 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 17:08:29,254 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 60 transitions. [2018-11-14 17:08:29,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2018-11-14 17:08:29,255 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:29,256 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 17:08:29,256 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:29,256 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:29,256 INFO L82 PathProgramCache]: Analyzing trace with hash 1472404135, now seen corresponding path program 6 times [2018-11-14 17:08:29,256 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:29,257 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:29,257 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:29,257 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:29,257 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:29,278 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:29,535 INFO L256 TraceCheckUtils]: 0: Hoare triple {3152#true} call ULTIMATE.init(); {3152#true} is VALID [2018-11-14 17:08:29,535 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 17:08:29,535 INFO L273 TraceCheckUtils]: 2: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,536 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3152#true} {3152#true} #69#return; {3152#true} is VALID [2018-11-14 17:08:29,536 INFO L256 TraceCheckUtils]: 4: Hoare triple {3152#true} call #t~ret12 := main(); {3152#true} is VALID [2018-11-14 17:08:29,536 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 17:08:29,537 INFO L273 TraceCheckUtils]: 6: Hoare triple {3154#(= main_~i~1 0)} assume true; {3154#(= main_~i~1 0)} is VALID [2018-11-14 17:08:29,537 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 17:08:29,538 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 17:08:29,539 INFO L273 TraceCheckUtils]: 9: Hoare triple {3155#(<= main_~i~1 1)} assume true; {3155#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:29,539 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 17:08:29,540 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 17:08:29,541 INFO L273 TraceCheckUtils]: 12: Hoare triple {3156#(<= main_~i~1 2)} assume true; {3156#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:29,541 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 17:08:29,542 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 17:08:29,543 INFO L273 TraceCheckUtils]: 15: Hoare triple {3157#(<= main_~i~1 3)} assume true; {3157#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:29,543 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 17:08:29,544 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 17:08:29,545 INFO L273 TraceCheckUtils]: 18: Hoare triple {3158#(<= main_~i~1 4)} assume true; {3158#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:29,545 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 17:08:29,546 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 17:08:29,546 INFO L273 TraceCheckUtils]: 21: Hoare triple {3159#(<= main_~i~1 5)} assume true; {3159#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:29,547 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 17:08:29,548 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 17:08:29,548 INFO L273 TraceCheckUtils]: 24: Hoare triple {3160#(<= main_~i~1 6)} assume true; {3160#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:29,549 INFO L273 TraceCheckUtils]: 25: Hoare triple {3160#(<= main_~i~1 6)} assume !(~i~1 < 10000); {3153#false} is VALID [2018-11-14 17:08:29,549 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 17:08:29,550 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 17:08:29,550 INFO L273 TraceCheckUtils]: 28: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,550 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 17:08:29,550 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 17:08:29,550 INFO L273 TraceCheckUtils]: 31: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,551 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 17:08:29,551 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 17:08:29,551 INFO L273 TraceCheckUtils]: 34: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,551 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 17:08:29,551 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 17:08:29,552 INFO L273 TraceCheckUtils]: 37: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,552 INFO L273 TraceCheckUtils]: 38: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 17:08:29,552 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 17:08:29,552 INFO L273 TraceCheckUtils]: 40: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,552 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3152#true} {3153#false} #73#return; {3153#false} is VALID [2018-11-14 17:08:29,552 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 17:08:29,553 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 17:08:29,553 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 17:08:29,553 INFO L273 TraceCheckUtils]: 45: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,553 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 17:08:29,553 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 17:08:29,553 INFO L273 TraceCheckUtils]: 48: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,553 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 17:08:29,553 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 17:08:29,554 INFO L273 TraceCheckUtils]: 51: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,554 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 17:08:29,554 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 17:08:29,554 INFO L273 TraceCheckUtils]: 54: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,554 INFO L273 TraceCheckUtils]: 55: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 17:08:29,554 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 17:08:29,554 INFO L273 TraceCheckUtils]: 57: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,555 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {3152#true} {3153#false} #75#return; {3153#false} is VALID [2018-11-14 17:08:29,555 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 17:08:29,555 INFO L273 TraceCheckUtils]: 60: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 17:08:29,555 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 17:08:29,555 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 17:08:29,555 INFO L273 TraceCheckUtils]: 63: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 17:08:29,556 INFO L273 TraceCheckUtils]: 64: Hoare triple {3153#false} assume !(~i~2 < 9999); {3153#false} is VALID [2018-11-14 17:08:29,556 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 17:08:29,556 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 17:08:29,556 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 17:08:29,556 INFO L273 TraceCheckUtils]: 68: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,556 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 17:08:29,556 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 17:08:29,557 INFO L273 TraceCheckUtils]: 71: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,557 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 17:08:29,557 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 17:08:29,557 INFO L273 TraceCheckUtils]: 74: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,557 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 17:08:29,557 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 17:08:29,558 INFO L273 TraceCheckUtils]: 77: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,558 INFO L273 TraceCheckUtils]: 78: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 17:08:29,558 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 17:08:29,558 INFO L273 TraceCheckUtils]: 80: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,558 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3152#true} {3153#false} #77#return; {3153#false} is VALID [2018-11-14 17:08:29,558 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 17:08:29,558 INFO L273 TraceCheckUtils]: 83: Hoare triple {3153#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3153#false} is VALID [2018-11-14 17:08:29,559 INFO L273 TraceCheckUtils]: 84: Hoare triple {3153#false} assume !false; {3153#false} is VALID [2018-11-14 17:08:29,565 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 17:08:29,566 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:29,566 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 17:08:29,575 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 17:08:29,666 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2018-11-14 17:08:29,667 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:29,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:29,707 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:29,843 INFO L256 TraceCheckUtils]: 0: Hoare triple {3152#true} call ULTIMATE.init(); {3152#true} is VALID [2018-11-14 17:08:29,844 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 17:08:29,844 INFO L273 TraceCheckUtils]: 2: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,844 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3152#true} {3152#true} #69#return; {3152#true} is VALID [2018-11-14 17:08:29,845 INFO L256 TraceCheckUtils]: 4: Hoare triple {3152#true} call #t~ret12 := main(); {3152#true} is VALID [2018-11-14 17:08:29,845 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 17:08:29,845 INFO L273 TraceCheckUtils]: 6: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,846 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 17:08:29,846 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 17:08:29,846 INFO L273 TraceCheckUtils]: 9: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,846 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 17:08:29,846 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 17:08:29,846 INFO L273 TraceCheckUtils]: 12: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,846 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 17:08:29,846 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 17:08:29,847 INFO L273 TraceCheckUtils]: 15: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,847 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 17:08:29,847 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 17:08:29,847 INFO L273 TraceCheckUtils]: 18: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,847 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 17:08:29,847 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 17:08:29,848 INFO L273 TraceCheckUtils]: 21: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,848 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 17:08:29,848 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 17:08:29,848 INFO L273 TraceCheckUtils]: 24: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,848 INFO L273 TraceCheckUtils]: 25: Hoare triple {3152#true} assume !(~i~1 < 10000); {3152#true} is VALID [2018-11-14 17:08:29,848 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 17:08:29,849 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 17:08:29,849 INFO L273 TraceCheckUtils]: 28: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,849 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 17:08:29,849 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 17:08:29,849 INFO L273 TraceCheckUtils]: 31: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,849 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 17:08:29,850 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 17:08:29,850 INFO L273 TraceCheckUtils]: 34: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,850 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 17:08:29,850 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 17:08:29,850 INFO L273 TraceCheckUtils]: 37: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,850 INFO L273 TraceCheckUtils]: 38: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 17:08:29,851 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 17:08:29,851 INFO L273 TraceCheckUtils]: 40: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,851 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3152#true} {3152#true} #73#return; {3152#true} is VALID [2018-11-14 17:08:29,851 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 17:08:29,851 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 17:08:29,851 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 17:08:29,852 INFO L273 TraceCheckUtils]: 45: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,852 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 17:08:29,852 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 17:08:29,852 INFO L273 TraceCheckUtils]: 48: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,852 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 17:08:29,852 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 17:08:29,853 INFO L273 TraceCheckUtils]: 51: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,853 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 17:08:29,853 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 17:08:29,853 INFO L273 TraceCheckUtils]: 54: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,853 INFO L273 TraceCheckUtils]: 55: Hoare triple {3152#true} assume !(~i~0 < 10000); {3152#true} is VALID [2018-11-14 17:08:29,853 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 17:08:29,854 INFO L273 TraceCheckUtils]: 57: Hoare triple {3152#true} assume true; {3152#true} is VALID [2018-11-14 17:08:29,854 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {3152#true} {3152#true} #75#return; {3152#true} is VALID [2018-11-14 17:08:29,869 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 17:08:29,873 INFO L273 TraceCheckUtils]: 60: Hoare triple {3341#(<= main_~i~2 0)} assume true; {3341#(<= main_~i~2 0)} is VALID [2018-11-14 17:08:29,873 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 17:08:29,875 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 17:08:29,877 INFO L273 TraceCheckUtils]: 63: Hoare triple {3351#(<= main_~i~2 1)} assume true; {3351#(<= main_~i~2 1)} is VALID [2018-11-14 17:08:29,877 INFO L273 TraceCheckUtils]: 64: Hoare triple {3351#(<= main_~i~2 1)} assume !(~i~2 < 9999); {3153#false} is VALID [2018-11-14 17:08:29,878 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 17:08:29,878 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 17:08:29,878 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 17:08:29,878 INFO L273 TraceCheckUtils]: 68: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 17:08:29,878 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 17:08:29,878 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 17:08:29,878 INFO L273 TraceCheckUtils]: 71: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 17:08:29,879 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 17:08:29,879 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 17:08:29,879 INFO L273 TraceCheckUtils]: 74: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 17:08:29,879 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 17:08:29,879 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 17:08:29,879 INFO L273 TraceCheckUtils]: 77: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 17:08:29,879 INFO L273 TraceCheckUtils]: 78: Hoare triple {3153#false} assume !(~i~0 < 10000); {3153#false} is VALID [2018-11-14 17:08:29,879 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 17:08:29,880 INFO L273 TraceCheckUtils]: 80: Hoare triple {3153#false} assume true; {3153#false} is VALID [2018-11-14 17:08:29,882 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3153#false} {3153#false} #77#return; {3153#false} is VALID [2018-11-14 17:08:29,882 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 17:08:29,882 INFO L273 TraceCheckUtils]: 83: Hoare triple {3153#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3153#false} is VALID [2018-11-14 17:08:29,882 INFO L273 TraceCheckUtils]: 84: Hoare triple {3153#false} assume !false; {3153#false} is VALID [2018-11-14 17:08:29,886 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 17:08:29,909 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:29,910 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 4] total 11 [2018-11-14 17:08:29,910 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 85 [2018-11-14 17:08:29,911 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:29,911 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 17:08:30,014 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 17:08:30,014 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 17:08:30,015 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 17:08:30,015 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2018-11-14 17:08:30,015 INFO L87 Difference]: Start difference. First operand 56 states and 60 transitions. Second operand 11 states. [2018-11-14 17:08:30,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:30,362 INFO L93 Difference]: Finished difference Result 94 states and 103 transitions. [2018-11-14 17:08:30,362 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 17:08:30,362 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 85 [2018-11-14 17:08:30,362 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:30,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:08:30,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-14 17:08:30,364 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:08:30,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-14 17:08:30,365 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 85 transitions. [2018-11-14 17:08:30,447 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 17:08:30,449 INFO L225 Difference]: With dead ends: 94 [2018-11-14 17:08:30,449 INFO L226 Difference]: Without dead ends: 64 [2018-11-14 17:08:30,450 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 17:08:30,450 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-14 17:08:30,477 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 62. [2018-11-14 17:08:30,478 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:30,478 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand 62 states. [2018-11-14 17:08:30,478 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 62 states. [2018-11-14 17:08:30,478 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 62 states. [2018-11-14 17:08:30,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:30,480 INFO L93 Difference]: Finished difference Result 64 states and 68 transitions. [2018-11-14 17:08:30,480 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 68 transitions. [2018-11-14 17:08:30,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:30,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:30,480 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand 64 states. [2018-11-14 17:08:30,480 INFO L87 Difference]: Start difference. First operand 62 states. Second operand 64 states. [2018-11-14 17:08:30,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:30,482 INFO L93 Difference]: Finished difference Result 64 states and 68 transitions. [2018-11-14 17:08:30,482 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 68 transitions. [2018-11-14 17:08:30,482 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:30,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:30,483 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:30,483 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:30,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 62 states. [2018-11-14 17:08:30,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 66 transitions. [2018-11-14 17:08:30,485 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 66 transitions. Word has length 85 [2018-11-14 17:08:30,485 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:30,485 INFO L480 AbstractCegarLoop]: Abstraction has 62 states and 66 transitions. [2018-11-14 17:08:30,485 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 17:08:30,486 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 66 transitions. [2018-11-14 17:08:30,486 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2018-11-14 17:08:30,486 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:30,487 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 17:08:30,487 INFO L423 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:30,487 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:30,487 INFO L82 PathProgramCache]: Analyzing trace with hash -1407266017, now seen corresponding path program 7 times [2018-11-14 17:08:30,488 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:30,488 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:30,488 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:30,488 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:30,489 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:30,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:30,675 INFO L256 TraceCheckUtils]: 0: Hoare triple {3757#true} call ULTIMATE.init(); {3757#true} is VALID [2018-11-14 17:08:30,675 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 17:08:30,675 INFO L273 TraceCheckUtils]: 2: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,676 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3757#true} {3757#true} #69#return; {3757#true} is VALID [2018-11-14 17:08:30,676 INFO L256 TraceCheckUtils]: 4: Hoare triple {3757#true} call #t~ret12 := main(); {3757#true} is VALID [2018-11-14 17:08:30,677 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 17:08:30,677 INFO L273 TraceCheckUtils]: 6: Hoare triple {3759#(= main_~i~1 0)} assume true; {3759#(= main_~i~1 0)} is VALID [2018-11-14 17:08:30,677 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 17:08:30,678 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 17:08:30,678 INFO L273 TraceCheckUtils]: 9: Hoare triple {3760#(<= main_~i~1 1)} assume true; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:30,679 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 17:08:30,679 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 17:08:30,680 INFO L273 TraceCheckUtils]: 12: Hoare triple {3761#(<= main_~i~1 2)} assume true; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:30,680 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 17:08:30,681 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 17:08:30,682 INFO L273 TraceCheckUtils]: 15: Hoare triple {3762#(<= main_~i~1 3)} assume true; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:30,682 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 17:08:30,683 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 17:08:30,683 INFO L273 TraceCheckUtils]: 18: Hoare triple {3763#(<= main_~i~1 4)} assume true; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:30,684 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 17:08:30,685 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 17:08:30,685 INFO L273 TraceCheckUtils]: 21: Hoare triple {3764#(<= main_~i~1 5)} assume true; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:30,686 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 17:08:30,687 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 17:08:30,687 INFO L273 TraceCheckUtils]: 24: Hoare triple {3765#(<= main_~i~1 6)} assume true; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:30,688 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 17:08:30,688 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 17:08:30,689 INFO L273 TraceCheckUtils]: 27: Hoare triple {3766#(<= main_~i~1 7)} assume true; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:30,690 INFO L273 TraceCheckUtils]: 28: Hoare triple {3766#(<= main_~i~1 7)} assume !(~i~1 < 10000); {3758#false} is VALID [2018-11-14 17:08:30,690 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 17:08:30,690 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 17:08:30,690 INFO L273 TraceCheckUtils]: 31: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,691 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 17:08:30,691 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 17:08:30,691 INFO L273 TraceCheckUtils]: 34: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,691 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 17:08:30,691 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 17:08:30,692 INFO L273 TraceCheckUtils]: 37: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,692 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 17:08:30,692 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 17:08:30,692 INFO L273 TraceCheckUtils]: 40: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,692 INFO L273 TraceCheckUtils]: 41: Hoare triple {3757#true} assume !(~i~0 < 10000); {3757#true} is VALID [2018-11-14 17:08:30,692 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 17:08:30,693 INFO L273 TraceCheckUtils]: 43: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,693 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3757#true} {3758#false} #73#return; {3758#false} is VALID [2018-11-14 17:08:30,693 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 17:08:30,693 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 17:08:30,693 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 17:08:30,693 INFO L273 TraceCheckUtils]: 48: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,693 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 17:08:30,693 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 17:08:30,694 INFO L273 TraceCheckUtils]: 51: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,694 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 17:08:30,694 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 17:08:30,694 INFO L273 TraceCheckUtils]: 54: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,694 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 17:08:30,694 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 17:08:30,694 INFO L273 TraceCheckUtils]: 57: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,694 INFO L273 TraceCheckUtils]: 58: Hoare triple {3757#true} assume !(~i~0 < 10000); {3757#true} is VALID [2018-11-14 17:08:30,695 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 17:08:30,695 INFO L273 TraceCheckUtils]: 60: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,695 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3757#true} {3758#false} #75#return; {3758#false} is VALID [2018-11-14 17:08:30,695 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 17:08:30,695 INFO L273 TraceCheckUtils]: 63: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,695 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 17:08:30,695 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 17:08:30,695 INFO L273 TraceCheckUtils]: 66: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,695 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 17:08:30,696 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 17:08:30,696 INFO L273 TraceCheckUtils]: 69: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,696 INFO L273 TraceCheckUtils]: 70: Hoare triple {3758#false} assume !(~i~2 < 9999); {3758#false} is VALID [2018-11-14 17:08:30,696 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 17:08:30,696 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 17:08:30,696 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 17:08:30,696 INFO L273 TraceCheckUtils]: 74: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,696 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 17:08:30,697 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 17:08:30,697 INFO L273 TraceCheckUtils]: 77: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,697 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 17:08:30,697 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 17:08:30,697 INFO L273 TraceCheckUtils]: 80: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,697 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 17:08:30,697 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 17:08:30,697 INFO L273 TraceCheckUtils]: 83: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,698 INFO L273 TraceCheckUtils]: 84: Hoare triple {3757#true} assume !(~i~0 < 10000); {3757#true} is VALID [2018-11-14 17:08:30,698 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 17:08:30,698 INFO L273 TraceCheckUtils]: 86: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,698 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3757#true} {3758#false} #77#return; {3758#false} is VALID [2018-11-14 17:08:30,698 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 17:08:30,698 INFO L273 TraceCheckUtils]: 89: Hoare triple {3758#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3758#false} is VALID [2018-11-14 17:08:30,698 INFO L273 TraceCheckUtils]: 90: Hoare triple {3758#false} assume !false; {3758#false} is VALID [2018-11-14 17:08:30,703 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 17:08:30,703 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:30,703 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 17:08:30,714 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:30,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:30,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:30,791 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:30,911 INFO L256 TraceCheckUtils]: 0: Hoare triple {3757#true} call ULTIMATE.init(); {3757#true} is VALID [2018-11-14 17:08:30,912 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 17:08:30,912 INFO L273 TraceCheckUtils]: 2: Hoare triple {3757#true} assume true; {3757#true} is VALID [2018-11-14 17:08:30,912 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3757#true} {3757#true} #69#return; {3757#true} is VALID [2018-11-14 17:08:30,913 INFO L256 TraceCheckUtils]: 4: Hoare triple {3757#true} call #t~ret12 := main(); {3757#true} is VALID [2018-11-14 17:08:30,914 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 17:08:30,914 INFO L273 TraceCheckUtils]: 6: Hoare triple {3785#(<= main_~i~1 0)} assume true; {3785#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:30,914 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 17:08:30,915 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 17:08:30,915 INFO L273 TraceCheckUtils]: 9: Hoare triple {3760#(<= main_~i~1 1)} assume true; {3760#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:30,916 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 17:08:30,917 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 17:08:30,917 INFO L273 TraceCheckUtils]: 12: Hoare triple {3761#(<= main_~i~1 2)} assume true; {3761#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:30,918 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 17:08:30,919 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 17:08:30,920 INFO L273 TraceCheckUtils]: 15: Hoare triple {3762#(<= main_~i~1 3)} assume true; {3762#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:30,920 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 17:08:30,921 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 17:08:30,922 INFO L273 TraceCheckUtils]: 18: Hoare triple {3763#(<= main_~i~1 4)} assume true; {3763#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:30,923 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 17:08:30,923 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 17:08:30,924 INFO L273 TraceCheckUtils]: 21: Hoare triple {3764#(<= main_~i~1 5)} assume true; {3764#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:30,925 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 17:08:30,926 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 17:08:30,926 INFO L273 TraceCheckUtils]: 24: Hoare triple {3765#(<= main_~i~1 6)} assume true; {3765#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:30,927 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 17:08:30,928 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 17:08:30,928 INFO L273 TraceCheckUtils]: 27: Hoare triple {3766#(<= main_~i~1 7)} assume true; {3766#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:30,929 INFO L273 TraceCheckUtils]: 28: Hoare triple {3766#(<= main_~i~1 7)} assume !(~i~1 < 10000); {3758#false} is VALID [2018-11-14 17:08:30,930 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 17:08:30,930 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 17:08:30,930 INFO L273 TraceCheckUtils]: 31: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,930 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 17:08:30,931 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 17:08:30,931 INFO L273 TraceCheckUtils]: 34: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,931 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 17:08:30,931 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 17:08:30,932 INFO L273 TraceCheckUtils]: 37: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,932 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 17:08:30,932 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 17:08:30,932 INFO L273 TraceCheckUtils]: 40: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,932 INFO L273 TraceCheckUtils]: 41: Hoare triple {3758#false} assume !(~i~0 < 10000); {3758#false} is VALID [2018-11-14 17:08:30,932 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 17:08:30,933 INFO L273 TraceCheckUtils]: 43: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,933 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3758#false} {3758#false} #73#return; {3758#false} is VALID [2018-11-14 17:08:30,933 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 17:08:30,933 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 17:08:30,933 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 17:08:30,933 INFO L273 TraceCheckUtils]: 48: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,933 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 17:08:30,934 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 17:08:30,934 INFO L273 TraceCheckUtils]: 51: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,934 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 17:08:30,934 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 17:08:30,934 INFO L273 TraceCheckUtils]: 54: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,934 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 17:08:30,935 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 17:08:30,935 INFO L273 TraceCheckUtils]: 57: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,935 INFO L273 TraceCheckUtils]: 58: Hoare triple {3758#false} assume !(~i~0 < 10000); {3758#false} is VALID [2018-11-14 17:08:30,935 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 17:08:30,935 INFO L273 TraceCheckUtils]: 60: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,935 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3758#false} {3758#false} #75#return; {3758#false} is VALID [2018-11-14 17:08:30,936 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 17:08:30,936 INFO L273 TraceCheckUtils]: 63: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,936 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 17:08:30,936 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 17:08:30,936 INFO L273 TraceCheckUtils]: 66: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,936 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 17:08:30,936 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 17:08:30,937 INFO L273 TraceCheckUtils]: 69: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,937 INFO L273 TraceCheckUtils]: 70: Hoare triple {3758#false} assume !(~i~2 < 9999); {3758#false} is VALID [2018-11-14 17:08:30,937 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 17:08:30,937 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 17:08:30,937 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 17:08:30,937 INFO L273 TraceCheckUtils]: 74: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,937 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 17:08:30,938 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 17:08:30,938 INFO L273 TraceCheckUtils]: 77: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,938 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 17:08:30,938 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 17:08:30,938 INFO L273 TraceCheckUtils]: 80: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,938 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 17:08:30,938 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 17:08:30,938 INFO L273 TraceCheckUtils]: 83: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,938 INFO L273 TraceCheckUtils]: 84: Hoare triple {3758#false} assume !(~i~0 < 10000); {3758#false} is VALID [2018-11-14 17:08:30,939 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 17:08:30,939 INFO L273 TraceCheckUtils]: 86: Hoare triple {3758#false} assume true; {3758#false} is VALID [2018-11-14 17:08:30,939 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3758#false} {3758#false} #77#return; {3758#false} is VALID [2018-11-14 17:08:30,939 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 17:08:30,939 INFO L273 TraceCheckUtils]: 89: Hoare triple {3758#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3758#false} is VALID [2018-11-14 17:08:30,939 INFO L273 TraceCheckUtils]: 90: Hoare triple {3758#false} assume !false; {3758#false} is VALID [2018-11-14 17:08:30,944 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 17:08:30,970 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:30,970 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 11 [2018-11-14 17:08:30,971 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 91 [2018-11-14 17:08:30,973 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:30,973 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 17:08:31,073 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 17:08:31,073 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 17:08:31,074 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 17:08:31,074 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-14 17:08:31,074 INFO L87 Difference]: Start difference. First operand 62 states and 66 transitions. Second operand 11 states. [2018-11-14 17:08:31,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:31,611 INFO L93 Difference]: Finished difference Result 99 states and 107 transitions. [2018-11-14 17:08:31,612 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-14 17:08:31,612 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 91 [2018-11-14 17:08:31,612 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:31,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:08:31,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-14 17:08:31,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:08:31,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-14 17:08:31,615 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 81 transitions. [2018-11-14 17:08:31,694 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 17:08:31,696 INFO L225 Difference]: With dead ends: 99 [2018-11-14 17:08:31,696 INFO L226 Difference]: Without dead ends: 66 [2018-11-14 17:08:31,697 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 17:08:31,697 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2018-11-14 17:08:31,718 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 65. [2018-11-14 17:08:31,719 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:31,719 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand 65 states. [2018-11-14 17:08:31,719 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 65 states. [2018-11-14 17:08:31,719 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 65 states. [2018-11-14 17:08:31,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:31,721 INFO L93 Difference]: Finished difference Result 66 states and 70 transitions. [2018-11-14 17:08:31,721 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 70 transitions. [2018-11-14 17:08:31,721 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:31,721 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:31,721 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand 66 states. [2018-11-14 17:08:31,721 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 66 states. [2018-11-14 17:08:31,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:31,723 INFO L93 Difference]: Finished difference Result 66 states and 70 transitions. [2018-11-14 17:08:31,723 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 70 transitions. [2018-11-14 17:08:31,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:31,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:31,724 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:31,724 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:31,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 65 states. [2018-11-14 17:08:31,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 69 transitions. [2018-11-14 17:08:31,725 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 69 transitions. Word has length 91 [2018-11-14 17:08:31,726 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:31,726 INFO L480 AbstractCegarLoop]: Abstraction has 65 states and 69 transitions. [2018-11-14 17:08:31,726 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 17:08:31,726 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 69 transitions. [2018-11-14 17:08:31,727 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2018-11-14 17:08:31,727 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:31,727 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 17:08:31,727 INFO L423 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:31,727 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:31,728 INFO L82 PathProgramCache]: Analyzing trace with hash 2090928948, now seen corresponding path program 8 times [2018-11-14 17:08:31,728 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:31,728 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:31,729 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:31,729 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:31,729 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:31,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:32,455 INFO L256 TraceCheckUtils]: 0: Hoare triple {4395#true} call ULTIMATE.init(); {4395#true} is VALID [2018-11-14 17:08:32,455 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 17:08:32,455 INFO L273 TraceCheckUtils]: 2: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,455 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4395#true} {4395#true} #69#return; {4395#true} is VALID [2018-11-14 17:08:32,455 INFO L256 TraceCheckUtils]: 4: Hoare triple {4395#true} call #t~ret12 := main(); {4395#true} is VALID [2018-11-14 17:08:32,456 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 17:08:32,457 INFO L273 TraceCheckUtils]: 6: Hoare triple {4397#(= main_~i~1 0)} assume true; {4397#(= main_~i~1 0)} is VALID [2018-11-14 17:08:32,457 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 17:08:32,458 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 17:08:32,458 INFO L273 TraceCheckUtils]: 9: Hoare triple {4398#(<= main_~i~1 1)} assume true; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:32,458 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 17:08:32,459 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 17:08:32,459 INFO L273 TraceCheckUtils]: 12: Hoare triple {4399#(<= main_~i~1 2)} assume true; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:32,460 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 17:08:32,461 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 17:08:32,461 INFO L273 TraceCheckUtils]: 15: Hoare triple {4400#(<= main_~i~1 3)} assume true; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:32,462 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 17:08:32,463 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 17:08:32,464 INFO L273 TraceCheckUtils]: 18: Hoare triple {4401#(<= main_~i~1 4)} assume true; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:32,464 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 17:08:32,465 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 17:08:32,466 INFO L273 TraceCheckUtils]: 21: Hoare triple {4402#(<= main_~i~1 5)} assume true; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:32,467 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 17:08:32,467 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 17:08:32,468 INFO L273 TraceCheckUtils]: 24: Hoare triple {4403#(<= main_~i~1 6)} assume true; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:32,469 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 17:08:32,470 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 17:08:32,470 INFO L273 TraceCheckUtils]: 27: Hoare triple {4404#(<= main_~i~1 7)} assume true; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:32,471 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 17:08:32,472 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 17:08:32,472 INFO L273 TraceCheckUtils]: 30: Hoare triple {4405#(<= main_~i~1 8)} assume true; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:32,473 INFO L273 TraceCheckUtils]: 31: Hoare triple {4405#(<= main_~i~1 8)} assume !(~i~1 < 10000); {4396#false} is VALID [2018-11-14 17:08:32,473 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 17:08:32,474 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 17:08:32,474 INFO L273 TraceCheckUtils]: 34: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,474 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 17:08:32,474 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 17:08:32,475 INFO L273 TraceCheckUtils]: 37: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,475 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 17:08:32,475 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 17:08:32,475 INFO L273 TraceCheckUtils]: 40: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,476 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 17:08:32,476 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 17:08:32,476 INFO L273 TraceCheckUtils]: 43: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,476 INFO L273 TraceCheckUtils]: 44: Hoare triple {4395#true} assume !(~i~0 < 10000); {4395#true} is VALID [2018-11-14 17:08:32,477 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 17:08:32,477 INFO L273 TraceCheckUtils]: 46: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,477 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {4395#true} {4396#false} #73#return; {4396#false} is VALID [2018-11-14 17:08:32,478 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 17:08:32,478 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 17:08:32,478 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 17:08:32,478 INFO L273 TraceCheckUtils]: 51: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,478 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 17:08:32,478 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 17:08:32,478 INFO L273 TraceCheckUtils]: 54: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,479 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 17:08:32,479 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 17:08:32,479 INFO L273 TraceCheckUtils]: 57: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,479 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 17:08:32,479 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 17:08:32,479 INFO L273 TraceCheckUtils]: 60: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,480 INFO L273 TraceCheckUtils]: 61: Hoare triple {4395#true} assume !(~i~0 < 10000); {4395#true} is VALID [2018-11-14 17:08:32,480 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 17:08:32,480 INFO L273 TraceCheckUtils]: 63: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,480 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {4395#true} {4396#false} #75#return; {4396#false} is VALID [2018-11-14 17:08:32,480 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 17:08:32,480 INFO L273 TraceCheckUtils]: 66: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,480 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 17:08:32,481 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 17:08:32,481 INFO L273 TraceCheckUtils]: 69: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,481 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 17:08:32,481 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 17:08:32,481 INFO L273 TraceCheckUtils]: 72: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,481 INFO L273 TraceCheckUtils]: 73: Hoare triple {4396#false} assume !(~i~2 < 9999); {4396#false} is VALID [2018-11-14 17:08:32,481 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 17:08:32,482 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 17:08:32,482 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 17:08:32,482 INFO L273 TraceCheckUtils]: 77: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,482 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 17:08:32,482 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 17:08:32,482 INFO L273 TraceCheckUtils]: 80: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,483 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 17:08:32,483 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 17:08:32,483 INFO L273 TraceCheckUtils]: 83: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,483 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 17:08:32,483 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 17:08:32,483 INFO L273 TraceCheckUtils]: 86: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,483 INFO L273 TraceCheckUtils]: 87: Hoare triple {4395#true} assume !(~i~0 < 10000); {4395#true} is VALID [2018-11-14 17:08:32,484 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 17:08:32,484 INFO L273 TraceCheckUtils]: 89: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,484 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {4395#true} {4396#false} #77#return; {4396#false} is VALID [2018-11-14 17:08:32,484 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 17:08:32,484 INFO L273 TraceCheckUtils]: 92: Hoare triple {4396#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4396#false} is VALID [2018-11-14 17:08:32,484 INFO L273 TraceCheckUtils]: 93: Hoare triple {4396#false} assume !false; {4396#false} is VALID [2018-11-14 17:08:32,492 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 17:08:32,492 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:32,492 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 17:08:32,502 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:08:32,548 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:08:32,548 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:32,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:32,572 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:32,721 INFO L256 TraceCheckUtils]: 0: Hoare triple {4395#true} call ULTIMATE.init(); {4395#true} is VALID [2018-11-14 17:08:32,721 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 17:08:32,721 INFO L273 TraceCheckUtils]: 2: Hoare triple {4395#true} assume true; {4395#true} is VALID [2018-11-14 17:08:32,722 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4395#true} {4395#true} #69#return; {4395#true} is VALID [2018-11-14 17:08:32,722 INFO L256 TraceCheckUtils]: 4: Hoare triple {4395#true} call #t~ret12 := main(); {4395#true} is VALID [2018-11-14 17:08:32,723 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 17:08:32,723 INFO L273 TraceCheckUtils]: 6: Hoare triple {4424#(<= main_~i~1 0)} assume true; {4424#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:32,723 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 17:08:32,724 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 17:08:32,724 INFO L273 TraceCheckUtils]: 9: Hoare triple {4398#(<= main_~i~1 1)} assume true; {4398#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:32,725 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 17:08:32,725 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 17:08:32,726 INFO L273 TraceCheckUtils]: 12: Hoare triple {4399#(<= main_~i~1 2)} assume true; {4399#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:32,727 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 17:08:32,727 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 17:08:32,728 INFO L273 TraceCheckUtils]: 15: Hoare triple {4400#(<= main_~i~1 3)} assume true; {4400#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:32,729 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 17:08:32,730 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 17:08:32,730 INFO L273 TraceCheckUtils]: 18: Hoare triple {4401#(<= main_~i~1 4)} assume true; {4401#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:32,731 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 17:08:32,732 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 17:08:32,732 INFO L273 TraceCheckUtils]: 21: Hoare triple {4402#(<= main_~i~1 5)} assume true; {4402#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:32,733 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 17:08:32,734 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 17:08:32,735 INFO L273 TraceCheckUtils]: 24: Hoare triple {4403#(<= main_~i~1 6)} assume true; {4403#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:32,735 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 17:08:32,736 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 17:08:32,737 INFO L273 TraceCheckUtils]: 27: Hoare triple {4404#(<= main_~i~1 7)} assume true; {4404#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:32,737 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 17:08:32,738 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 17:08:32,739 INFO L273 TraceCheckUtils]: 30: Hoare triple {4405#(<= main_~i~1 8)} assume true; {4405#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:32,740 INFO L273 TraceCheckUtils]: 31: Hoare triple {4405#(<= main_~i~1 8)} assume !(~i~1 < 10000); {4396#false} is VALID [2018-11-14 17:08:32,740 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 17:08:32,740 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 17:08:32,740 INFO L273 TraceCheckUtils]: 34: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,741 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 17:08:32,741 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 17:08:32,741 INFO L273 TraceCheckUtils]: 37: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,741 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 17:08:32,742 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 17:08:32,742 INFO L273 TraceCheckUtils]: 40: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,742 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 17:08:32,742 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 17:08:32,743 INFO L273 TraceCheckUtils]: 43: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,743 INFO L273 TraceCheckUtils]: 44: Hoare triple {4396#false} assume !(~i~0 < 10000); {4396#false} is VALID [2018-11-14 17:08:32,743 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 17:08:32,743 INFO L273 TraceCheckUtils]: 46: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,743 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {4396#false} {4396#false} #73#return; {4396#false} is VALID [2018-11-14 17:08:32,743 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 17:08:32,743 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 17:08:32,744 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 17:08:32,744 INFO L273 TraceCheckUtils]: 51: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,744 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 17:08:32,744 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 17:08:32,744 INFO L273 TraceCheckUtils]: 54: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,744 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 17:08:32,745 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 17:08:32,745 INFO L273 TraceCheckUtils]: 57: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,745 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 17:08:32,745 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 17:08:32,745 INFO L273 TraceCheckUtils]: 60: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,745 INFO L273 TraceCheckUtils]: 61: Hoare triple {4396#false} assume !(~i~0 < 10000); {4396#false} is VALID [2018-11-14 17:08:32,745 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 17:08:32,746 INFO L273 TraceCheckUtils]: 63: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,746 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {4396#false} {4396#false} #75#return; {4396#false} is VALID [2018-11-14 17:08:32,746 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 17:08:32,746 INFO L273 TraceCheckUtils]: 66: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,746 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 17:08:32,746 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 17:08:32,747 INFO L273 TraceCheckUtils]: 69: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,747 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 17:08:32,747 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 17:08:32,747 INFO L273 TraceCheckUtils]: 72: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,747 INFO L273 TraceCheckUtils]: 73: Hoare triple {4396#false} assume !(~i~2 < 9999); {4396#false} is VALID [2018-11-14 17:08:32,747 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 17:08:32,747 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 17:08:32,748 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 17:08:32,748 INFO L273 TraceCheckUtils]: 77: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,748 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 17:08:32,748 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 17:08:32,748 INFO L273 TraceCheckUtils]: 80: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,748 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 17:08:32,748 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 17:08:32,749 INFO L273 TraceCheckUtils]: 83: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,749 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 17:08:32,749 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 17:08:32,749 INFO L273 TraceCheckUtils]: 86: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,749 INFO L273 TraceCheckUtils]: 87: Hoare triple {4396#false} assume !(~i~0 < 10000); {4396#false} is VALID [2018-11-14 17:08:32,749 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 17:08:32,750 INFO L273 TraceCheckUtils]: 89: Hoare triple {4396#false} assume true; {4396#false} is VALID [2018-11-14 17:08:32,750 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {4396#false} {4396#false} #77#return; {4396#false} is VALID [2018-11-14 17:08:32,750 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 17:08:32,750 INFO L273 TraceCheckUtils]: 92: Hoare triple {4396#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4396#false} is VALID [2018-11-14 17:08:32,750 INFO L273 TraceCheckUtils]: 93: Hoare triple {4396#false} assume !false; {4396#false} is VALID [2018-11-14 17:08:32,758 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 17:08:32,779 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:32,779 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 12 [2018-11-14 17:08:32,779 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 94 [2018-11-14 17:08:32,780 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:32,780 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-14 17:08:32,878 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 17:08:32,878 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-14 17:08:32,879 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-14 17:08:32,879 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-14 17:08:32,879 INFO L87 Difference]: Start difference. First operand 65 states and 69 transitions. Second operand 12 states. [2018-11-14 17:08:33,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:33,214 INFO L93 Difference]: Finished difference Result 102 states and 110 transitions. [2018-11-14 17:08:33,214 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 17:08:33,214 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 94 [2018-11-14 17:08:33,214 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:33,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 17:08:33,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-14 17:08:33,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 17:08:33,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 84 transitions. [2018-11-14 17:08:33,217 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 84 transitions. [2018-11-14 17:08:33,366 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 17:08:33,368 INFO L225 Difference]: With dead ends: 102 [2018-11-14 17:08:33,368 INFO L226 Difference]: Without dead ends: 69 [2018-11-14 17:08:33,369 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-14 17:08:33,369 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2018-11-14 17:08:33,411 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2018-11-14 17:08:33,411 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:33,411 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand 68 states. [2018-11-14 17:08:33,411 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 68 states. [2018-11-14 17:08:33,412 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 68 states. [2018-11-14 17:08:33,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:33,413 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2018-11-14 17:08:33,413 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2018-11-14 17:08:33,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:33,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:33,414 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 69 states. [2018-11-14 17:08:33,414 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 69 states. [2018-11-14 17:08:33,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:33,416 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2018-11-14 17:08:33,416 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2018-11-14 17:08:33,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:33,416 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:33,416 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:33,416 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:33,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-14 17:08:33,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 72 transitions. [2018-11-14 17:08:33,418 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 72 transitions. Word has length 94 [2018-11-14 17:08:33,418 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:33,418 INFO L480 AbstractCegarLoop]: Abstraction has 68 states and 72 transitions. [2018-11-14 17:08:33,419 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-14 17:08:33,419 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 72 transitions. [2018-11-14 17:08:33,419 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2018-11-14 17:08:33,420 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:33,420 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 17:08:33,420 INFO L423 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:33,420 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:33,420 INFO L82 PathProgramCache]: Analyzing trace with hash -564306177, now seen corresponding path program 9 times [2018-11-14 17:08:33,421 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:33,421 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:33,421 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:33,421 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:33,422 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:33,438 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:33,777 INFO L256 TraceCheckUtils]: 0: Hoare triple {5057#true} call ULTIMATE.init(); {5057#true} is VALID [2018-11-14 17:08:33,778 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 17:08:33,778 INFO L273 TraceCheckUtils]: 2: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,778 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5057#true} {5057#true} #69#return; {5057#true} is VALID [2018-11-14 17:08:33,779 INFO L256 TraceCheckUtils]: 4: Hoare triple {5057#true} call #t~ret12 := main(); {5057#true} is VALID [2018-11-14 17:08:33,779 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 17:08:33,780 INFO L273 TraceCheckUtils]: 6: Hoare triple {5059#(= main_~i~1 0)} assume true; {5059#(= main_~i~1 0)} is VALID [2018-11-14 17:08:33,780 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 17:08:33,781 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 17:08:33,781 INFO L273 TraceCheckUtils]: 9: Hoare triple {5060#(<= main_~i~1 1)} assume true; {5060#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:33,782 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 17:08:33,782 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 17:08:33,783 INFO L273 TraceCheckUtils]: 12: Hoare triple {5061#(<= main_~i~1 2)} assume true; {5061#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:33,783 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 17:08:33,783 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 17:08:33,784 INFO L273 TraceCheckUtils]: 15: Hoare triple {5062#(<= main_~i~1 3)} assume true; {5062#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:33,784 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 17:08:33,785 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 17:08:33,785 INFO L273 TraceCheckUtils]: 18: Hoare triple {5063#(<= main_~i~1 4)} assume true; {5063#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:33,786 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 17:08:33,787 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 17:08:33,787 INFO L273 TraceCheckUtils]: 21: Hoare triple {5064#(<= main_~i~1 5)} assume true; {5064#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:33,788 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 17:08:33,788 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 17:08:33,789 INFO L273 TraceCheckUtils]: 24: Hoare triple {5065#(<= main_~i~1 6)} assume true; {5065#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:33,789 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 17:08:33,790 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 17:08:33,791 INFO L273 TraceCheckUtils]: 27: Hoare triple {5066#(<= main_~i~1 7)} assume true; {5066#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:33,791 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 17:08:33,792 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 17:08:33,793 INFO L273 TraceCheckUtils]: 30: Hoare triple {5067#(<= main_~i~1 8)} assume true; {5067#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:33,793 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 17:08:33,794 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 17:08:33,795 INFO L273 TraceCheckUtils]: 33: Hoare triple {5068#(<= main_~i~1 9)} assume true; {5068#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:33,795 INFO L273 TraceCheckUtils]: 34: Hoare triple {5068#(<= main_~i~1 9)} assume !(~i~1 < 10000); {5058#false} is VALID [2018-11-14 17:08:33,795 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 17:08:33,796 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 17:08:33,796 INFO L273 TraceCheckUtils]: 37: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,796 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 17:08:33,796 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 17:08:33,797 INFO L273 TraceCheckUtils]: 40: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,797 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 17:08:33,797 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 17:08:33,797 INFO L273 TraceCheckUtils]: 43: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,797 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 17:08:33,798 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 17:08:33,798 INFO L273 TraceCheckUtils]: 46: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,798 INFO L273 TraceCheckUtils]: 47: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 17:08:33,798 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 17:08:33,799 INFO L273 TraceCheckUtils]: 49: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,799 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {5057#true} {5058#false} #73#return; {5058#false} is VALID [2018-11-14 17:08:33,799 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 17:08:33,799 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 17:08:33,799 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 17:08:33,800 INFO L273 TraceCheckUtils]: 54: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,800 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 17:08:33,800 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 17:08:33,800 INFO L273 TraceCheckUtils]: 57: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,800 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 17:08:33,800 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 17:08:33,801 INFO L273 TraceCheckUtils]: 60: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,801 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 17:08:33,801 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 17:08:33,801 INFO L273 TraceCheckUtils]: 63: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,801 INFO L273 TraceCheckUtils]: 64: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 17:08:33,801 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 17:08:33,802 INFO L273 TraceCheckUtils]: 66: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,802 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5057#true} {5058#false} #75#return; {5058#false} is VALID [2018-11-14 17:08:33,802 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 17:08:33,802 INFO L273 TraceCheckUtils]: 69: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 17:08:33,802 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 17:08:33,803 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 17:08:33,803 INFO L273 TraceCheckUtils]: 72: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 17:08:33,803 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 17:08:33,803 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 17:08:33,803 INFO L273 TraceCheckUtils]: 75: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 17:08:33,803 INFO L273 TraceCheckUtils]: 76: Hoare triple {5058#false} assume !(~i~2 < 9999); {5058#false} is VALID [2018-11-14 17:08:33,803 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 17:08:33,804 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 17:08:33,804 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 17:08:33,804 INFO L273 TraceCheckUtils]: 80: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,804 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 17:08:33,804 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 17:08:33,804 INFO L273 TraceCheckUtils]: 83: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,805 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 17:08:33,805 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 17:08:33,805 INFO L273 TraceCheckUtils]: 86: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,805 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 17:08:33,805 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 17:08:33,805 INFO L273 TraceCheckUtils]: 89: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,806 INFO L273 TraceCheckUtils]: 90: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 17:08:33,806 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 17:08:33,806 INFO L273 TraceCheckUtils]: 92: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:33,806 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {5057#true} {5058#false} #77#return; {5058#false} is VALID [2018-11-14 17:08:33,806 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 17:08:33,806 INFO L273 TraceCheckUtils]: 95: Hoare triple {5058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5058#false} is VALID [2018-11-14 17:08:33,807 INFO L273 TraceCheckUtils]: 96: Hoare triple {5058#false} assume !false; {5058#false} is VALID [2018-11-14 17:08:33,812 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 17:08:33,812 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:33,813 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 17:08:33,827 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:08:33,863 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-14 17:08:33,863 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:33,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:33,883 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:34,016 INFO L256 TraceCheckUtils]: 0: Hoare triple {5057#true} call ULTIMATE.init(); {5057#true} is VALID [2018-11-14 17:08:34,016 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 17:08:34,016 INFO L273 TraceCheckUtils]: 2: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,017 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5057#true} {5057#true} #69#return; {5057#true} is VALID [2018-11-14 17:08:34,017 INFO L256 TraceCheckUtils]: 4: Hoare triple {5057#true} call #t~ret12 := main(); {5057#true} is VALID [2018-11-14 17:08:34,017 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 17:08:34,017 INFO L273 TraceCheckUtils]: 6: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,018 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 17:08:34,018 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 17:08:34,018 INFO L273 TraceCheckUtils]: 9: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,018 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 17:08:34,018 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 17:08:34,018 INFO L273 TraceCheckUtils]: 12: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,018 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 17:08:34,018 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 17:08:34,018 INFO L273 TraceCheckUtils]: 15: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,019 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 17:08:34,019 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 17:08:34,019 INFO L273 TraceCheckUtils]: 18: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,019 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 17:08:34,019 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 17:08:34,019 INFO L273 TraceCheckUtils]: 21: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,019 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 17:08:34,019 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 17:08:34,020 INFO L273 TraceCheckUtils]: 24: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,020 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 17:08:34,020 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 17:08:34,020 INFO L273 TraceCheckUtils]: 27: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,020 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 17:08:34,020 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 17:08:34,020 INFO L273 TraceCheckUtils]: 30: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,020 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 17:08:34,021 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 17:08:34,021 INFO L273 TraceCheckUtils]: 33: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,021 INFO L273 TraceCheckUtils]: 34: Hoare triple {5057#true} assume !(~i~1 < 10000); {5057#true} is VALID [2018-11-14 17:08:34,021 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 17:08:34,021 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 17:08:34,021 INFO L273 TraceCheckUtils]: 37: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,021 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 17:08:34,021 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 17:08:34,021 INFO L273 TraceCheckUtils]: 40: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,022 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 17:08:34,022 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 17:08:34,022 INFO L273 TraceCheckUtils]: 43: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,022 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 17:08:34,022 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 17:08:34,022 INFO L273 TraceCheckUtils]: 46: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,022 INFO L273 TraceCheckUtils]: 47: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 17:08:34,023 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 17:08:34,023 INFO L273 TraceCheckUtils]: 49: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,023 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {5057#true} {5057#true} #73#return; {5057#true} is VALID [2018-11-14 17:08:34,023 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 17:08:34,023 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 17:08:34,023 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 17:08:34,023 INFO L273 TraceCheckUtils]: 54: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,023 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 17:08:34,023 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 17:08:34,024 INFO L273 TraceCheckUtils]: 57: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,024 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 17:08:34,024 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 17:08:34,024 INFO L273 TraceCheckUtils]: 60: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,024 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 17:08:34,024 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 17:08:34,024 INFO L273 TraceCheckUtils]: 63: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,024 INFO L273 TraceCheckUtils]: 64: Hoare triple {5057#true} assume !(~i~0 < 10000); {5057#true} is VALID [2018-11-14 17:08:34,025 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 17:08:34,025 INFO L273 TraceCheckUtils]: 66: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,025 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5057#true} {5057#true} #75#return; {5057#true} is VALID [2018-11-14 17:08:34,025 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 17:08:34,025 INFO L273 TraceCheckUtils]: 69: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,025 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 17:08:34,025 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 17:08:34,025 INFO L273 TraceCheckUtils]: 72: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,026 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 17:08:34,026 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 17:08:34,026 INFO L273 TraceCheckUtils]: 75: Hoare triple {5057#true} assume true; {5057#true} is VALID [2018-11-14 17:08:34,026 INFO L273 TraceCheckUtils]: 76: Hoare triple {5057#true} assume !(~i~2 < 9999); {5057#true} is VALID [2018-11-14 17:08:34,026 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 17:08:34,026 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 17:08:34,027 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 17:08:34,027 INFO L273 TraceCheckUtils]: 80: Hoare triple {5309#(<= mapavg_~i~0 0)} assume true; {5309#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:34,027 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 17:08:34,028 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 17:08:34,028 INFO L273 TraceCheckUtils]: 83: Hoare triple {5319#(<= mapavg_~i~0 1)} assume true; {5319#(<= mapavg_~i~0 1)} is VALID [2018-11-14 17:08:34,029 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 17:08:34,029 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 17:08:34,030 INFO L273 TraceCheckUtils]: 86: Hoare triple {5329#(<= mapavg_~i~0 2)} assume true; {5329#(<= mapavg_~i~0 2)} is VALID [2018-11-14 17:08:34,030 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 17:08:34,030 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 17:08:34,031 INFO L273 TraceCheckUtils]: 89: Hoare triple {5339#(<= mapavg_~i~0 3)} assume true; {5339#(<= mapavg_~i~0 3)} is VALID [2018-11-14 17:08:34,031 INFO L273 TraceCheckUtils]: 90: Hoare triple {5339#(<= mapavg_~i~0 3)} assume !(~i~0 < 10000); {5058#false} is VALID [2018-11-14 17:08:34,032 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 17:08:34,032 INFO L273 TraceCheckUtils]: 92: Hoare triple {5058#false} assume true; {5058#false} is VALID [2018-11-14 17:08:34,032 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {5058#false} {5057#true} #77#return; {5058#false} is VALID [2018-11-14 17:08:34,032 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 17:08:34,032 INFO L273 TraceCheckUtils]: 95: Hoare triple {5058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5058#false} is VALID [2018-11-14 17:08:34,033 INFO L273 TraceCheckUtils]: 96: Hoare triple {5058#false} assume !false; {5058#false} is VALID [2018-11-14 17:08:34,037 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 17:08:34,058 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:34,058 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 6] total 16 [2018-11-14 17:08:34,059 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2018-11-14 17:08:34,060 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:34,060 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-14 17:08:34,142 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 17:08:34,143 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-14 17:08:34,143 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-14 17:08:34,143 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2018-11-14 17:08:34,144 INFO L87 Difference]: Start difference. First operand 68 states and 72 transitions. Second operand 16 states. [2018-11-14 17:08:34,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:34,602 INFO L93 Difference]: Finished difference Result 109 states and 121 transitions. [2018-11-14 17:08:34,602 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 17:08:34,602 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2018-11-14 17:08:34,603 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:34,603 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 17:08:34,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 103 transitions. [2018-11-14 17:08:34,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 17:08:34,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 103 transitions. [2018-11-14 17:08:34,606 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 103 transitions. [2018-11-14 17:08:35,616 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 17:08:35,618 INFO L225 Difference]: With dead ends: 109 [2018-11-14 17:08:35,618 INFO L226 Difference]: Without dead ends: 76 [2018-11-14 17:08:35,619 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2018-11-14 17:08:35,619 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2018-11-14 17:08:35,642 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 74. [2018-11-14 17:08:35,643 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:35,643 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand 74 states. [2018-11-14 17:08:35,643 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand 74 states. [2018-11-14 17:08:35,643 INFO L87 Difference]: Start difference. First operand 76 states. Second operand 74 states. [2018-11-14 17:08:35,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:35,646 INFO L93 Difference]: Finished difference Result 76 states and 80 transitions. [2018-11-14 17:08:35,647 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 80 transitions. [2018-11-14 17:08:35,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:35,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:35,647 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand 76 states. [2018-11-14 17:08:35,647 INFO L87 Difference]: Start difference. First operand 74 states. Second operand 76 states. [2018-11-14 17:08:35,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:35,650 INFO L93 Difference]: Finished difference Result 76 states and 80 transitions. [2018-11-14 17:08:35,650 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 80 transitions. [2018-11-14 17:08:35,650 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:35,650 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:35,651 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:35,651 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:35,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 74 states. [2018-11-14 17:08:35,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 78 transitions. [2018-11-14 17:08:35,653 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 78 transitions. Word has length 97 [2018-11-14 17:08:35,653 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:35,653 INFO L480 AbstractCegarLoop]: Abstraction has 74 states and 78 transitions. [2018-11-14 17:08:35,653 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-14 17:08:35,653 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 78 transitions. [2018-11-14 17:08:35,654 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2018-11-14 17:08:35,654 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:35,655 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 17:08:35,655 INFO L423 AbstractCegarLoop]: === Iteration 14 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:35,655 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:35,655 INFO L82 PathProgramCache]: Analyzing trace with hash -898579917, now seen corresponding path program 10 times [2018-11-14 17:08:35,655 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:35,655 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:35,656 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:35,656 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:35,656 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:35,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:35,895 INFO L256 TraceCheckUtils]: 0: Hoare triple {5763#true} call ULTIMATE.init(); {5763#true} is VALID [2018-11-14 17:08:35,895 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 17:08:35,895 INFO L273 TraceCheckUtils]: 2: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,896 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5763#true} {5763#true} #69#return; {5763#true} is VALID [2018-11-14 17:08:35,896 INFO L256 TraceCheckUtils]: 4: Hoare triple {5763#true} call #t~ret12 := main(); {5763#true} is VALID [2018-11-14 17:08:35,896 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 17:08:35,897 INFO L273 TraceCheckUtils]: 6: Hoare triple {5765#(= main_~i~1 0)} assume true; {5765#(= main_~i~1 0)} is VALID [2018-11-14 17:08:35,897 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 17:08:35,898 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 17:08:35,898 INFO L273 TraceCheckUtils]: 9: Hoare triple {5766#(<= main_~i~1 1)} assume true; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:35,898 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 17:08:35,899 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 17:08:35,899 INFO L273 TraceCheckUtils]: 12: Hoare triple {5767#(<= main_~i~1 2)} assume true; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:35,900 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 17:08:35,901 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 17:08:35,901 INFO L273 TraceCheckUtils]: 15: Hoare triple {5768#(<= main_~i~1 3)} assume true; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:35,902 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 17:08:35,902 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 17:08:35,903 INFO L273 TraceCheckUtils]: 18: Hoare triple {5769#(<= main_~i~1 4)} assume true; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:35,903 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 17:08:35,904 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 17:08:35,905 INFO L273 TraceCheckUtils]: 21: Hoare triple {5770#(<= main_~i~1 5)} assume true; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:35,905 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 17:08:35,906 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 17:08:35,906 INFO L273 TraceCheckUtils]: 24: Hoare triple {5771#(<= main_~i~1 6)} assume true; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:35,907 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 17:08:35,908 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 17:08:35,908 INFO L273 TraceCheckUtils]: 27: Hoare triple {5772#(<= main_~i~1 7)} assume true; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:35,909 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 17:08:35,909 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 17:08:35,910 INFO L273 TraceCheckUtils]: 30: Hoare triple {5773#(<= main_~i~1 8)} assume true; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:35,910 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 17:08:35,911 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 17:08:35,912 INFO L273 TraceCheckUtils]: 33: Hoare triple {5774#(<= main_~i~1 9)} assume true; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:35,912 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 17:08:35,913 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 17:08:35,914 INFO L273 TraceCheckUtils]: 36: Hoare triple {5775#(<= main_~i~1 10)} assume true; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:35,914 INFO L273 TraceCheckUtils]: 37: Hoare triple {5775#(<= main_~i~1 10)} assume !(~i~1 < 10000); {5764#false} is VALID [2018-11-14 17:08:35,914 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 17:08:35,915 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 17:08:35,915 INFO L273 TraceCheckUtils]: 40: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,915 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 17:08:35,915 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 17:08:35,915 INFO L273 TraceCheckUtils]: 43: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,916 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 17:08:35,916 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 17:08:35,916 INFO L273 TraceCheckUtils]: 46: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,916 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 17:08:35,916 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 17:08:35,917 INFO L273 TraceCheckUtils]: 49: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,917 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 17:08:35,917 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 17:08:35,917 INFO L273 TraceCheckUtils]: 52: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,917 INFO L273 TraceCheckUtils]: 53: Hoare triple {5763#true} assume !(~i~0 < 10000); {5763#true} is VALID [2018-11-14 17:08:35,918 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 17:08:35,918 INFO L273 TraceCheckUtils]: 55: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,918 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5763#true} {5764#false} #73#return; {5764#false} is VALID [2018-11-14 17:08:35,918 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 17:08:35,918 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 17:08:35,918 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 17:08:35,919 INFO L273 TraceCheckUtils]: 60: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,919 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 17:08:35,919 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 17:08:35,919 INFO L273 TraceCheckUtils]: 63: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,919 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 17:08:35,919 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 17:08:35,920 INFO L273 TraceCheckUtils]: 66: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,920 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 17:08:35,920 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 17:08:35,920 INFO L273 TraceCheckUtils]: 69: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,920 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 17:08:35,920 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 17:08:35,920 INFO L273 TraceCheckUtils]: 72: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,920 INFO L273 TraceCheckUtils]: 73: Hoare triple {5763#true} assume !(~i~0 < 10000); {5763#true} is VALID [2018-11-14 17:08:35,921 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 17:08:35,921 INFO L273 TraceCheckUtils]: 75: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,921 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {5763#true} {5764#false} #75#return; {5764#false} is VALID [2018-11-14 17:08:35,921 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 17:08:35,921 INFO L273 TraceCheckUtils]: 78: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:35,921 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 17:08:35,921 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 17:08:35,921 INFO L273 TraceCheckUtils]: 81: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:35,921 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 17:08:35,922 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 17:08:35,922 INFO L273 TraceCheckUtils]: 84: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:35,922 INFO L273 TraceCheckUtils]: 85: Hoare triple {5764#false} assume !(~i~2 < 9999); {5764#false} is VALID [2018-11-14 17:08:35,922 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 17:08:35,922 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 17:08:35,922 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 17:08:35,922 INFO L273 TraceCheckUtils]: 89: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,922 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 17:08:35,923 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 17:08:35,923 INFO L273 TraceCheckUtils]: 92: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,923 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 17:08:35,923 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 17:08:35,923 INFO L273 TraceCheckUtils]: 95: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,923 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 17:08:35,923 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 17:08:35,923 INFO L273 TraceCheckUtils]: 98: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,924 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 17:08:35,924 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 17:08:35,924 INFO L273 TraceCheckUtils]: 101: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,924 INFO L273 TraceCheckUtils]: 102: Hoare triple {5763#true} assume !(~i~0 < 10000); {5763#true} is VALID [2018-11-14 17:08:35,924 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 17:08:35,924 INFO L273 TraceCheckUtils]: 104: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:35,924 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {5763#true} {5764#false} #77#return; {5764#false} is VALID [2018-11-14 17:08:35,924 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 17:08:35,924 INFO L273 TraceCheckUtils]: 107: Hoare triple {5764#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5764#false} is VALID [2018-11-14 17:08:35,925 INFO L273 TraceCheckUtils]: 108: Hoare triple {5764#false} assume !false; {5764#false} is VALID [2018-11-14 17:08:35,930 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 17:08:35,930 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:35,930 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 17:08:35,939 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 17:08:35,985 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 17:08:35,985 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:36,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:36,003 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:36,410 INFO L256 TraceCheckUtils]: 0: Hoare triple {5763#true} call ULTIMATE.init(); {5763#true} is VALID [2018-11-14 17:08:36,410 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 17:08:36,410 INFO L273 TraceCheckUtils]: 2: Hoare triple {5763#true} assume true; {5763#true} is VALID [2018-11-14 17:08:36,410 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5763#true} {5763#true} #69#return; {5763#true} is VALID [2018-11-14 17:08:36,411 INFO L256 TraceCheckUtils]: 4: Hoare triple {5763#true} call #t~ret12 := main(); {5763#true} is VALID [2018-11-14 17:08:36,412 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 17:08:36,412 INFO L273 TraceCheckUtils]: 6: Hoare triple {5794#(<= main_~i~1 0)} assume true; {5794#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:36,414 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 17:08:36,414 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 17:08:36,416 INFO L273 TraceCheckUtils]: 9: Hoare triple {5766#(<= main_~i~1 1)} assume true; {5766#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:36,416 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 17:08:36,418 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 17:08:36,418 INFO L273 TraceCheckUtils]: 12: Hoare triple {5767#(<= main_~i~1 2)} assume true; {5767#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:36,420 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 17:08:36,420 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 17:08:36,422 INFO L273 TraceCheckUtils]: 15: Hoare triple {5768#(<= main_~i~1 3)} assume true; {5768#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:36,422 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 17:08:36,424 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 17:08:36,424 INFO L273 TraceCheckUtils]: 18: Hoare triple {5769#(<= main_~i~1 4)} assume true; {5769#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:36,426 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 17:08:36,426 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 17:08:36,428 INFO L273 TraceCheckUtils]: 21: Hoare triple {5770#(<= main_~i~1 5)} assume true; {5770#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:36,428 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 17:08:36,430 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 17:08:36,430 INFO L273 TraceCheckUtils]: 24: Hoare triple {5771#(<= main_~i~1 6)} assume true; {5771#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:36,432 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 17:08:36,432 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 17:08:36,434 INFO L273 TraceCheckUtils]: 27: Hoare triple {5772#(<= main_~i~1 7)} assume true; {5772#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:36,434 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 17:08:36,436 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 17:08:36,436 INFO L273 TraceCheckUtils]: 30: Hoare triple {5773#(<= main_~i~1 8)} assume true; {5773#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:36,438 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 17:08:36,438 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 17:08:36,440 INFO L273 TraceCheckUtils]: 33: Hoare triple {5774#(<= main_~i~1 9)} assume true; {5774#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:36,440 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 17:08:36,442 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 17:08:36,442 INFO L273 TraceCheckUtils]: 36: Hoare triple {5775#(<= main_~i~1 10)} assume true; {5775#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:36,444 INFO L273 TraceCheckUtils]: 37: Hoare triple {5775#(<= main_~i~1 10)} assume !(~i~1 < 10000); {5764#false} is VALID [2018-11-14 17:08:36,444 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 17:08:36,444 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 17:08:36,444 INFO L273 TraceCheckUtils]: 40: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,444 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 17:08:36,444 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 17:08:36,444 INFO L273 TraceCheckUtils]: 43: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,444 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 17:08:36,445 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 17:08:36,445 INFO L273 TraceCheckUtils]: 46: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,445 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 17:08:36,445 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 17:08:36,445 INFO L273 TraceCheckUtils]: 49: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,445 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 17:08:36,445 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 17:08:36,446 INFO L273 TraceCheckUtils]: 52: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,446 INFO L273 TraceCheckUtils]: 53: Hoare triple {5764#false} assume !(~i~0 < 10000); {5764#false} is VALID [2018-11-14 17:08:36,446 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 17:08:36,446 INFO L273 TraceCheckUtils]: 55: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,446 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5764#false} {5764#false} #73#return; {5764#false} is VALID [2018-11-14 17:08:36,447 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 17:08:36,447 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 17:08:36,447 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 17:08:36,447 INFO L273 TraceCheckUtils]: 60: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,447 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 17:08:36,447 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 17:08:36,447 INFO L273 TraceCheckUtils]: 63: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,448 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 17:08:36,448 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 17:08:36,448 INFO L273 TraceCheckUtils]: 66: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,448 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 17:08:36,448 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 17:08:36,448 INFO L273 TraceCheckUtils]: 69: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,449 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 17:08:36,449 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 17:08:36,449 INFO L273 TraceCheckUtils]: 72: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,449 INFO L273 TraceCheckUtils]: 73: Hoare triple {5764#false} assume !(~i~0 < 10000); {5764#false} is VALID [2018-11-14 17:08:36,449 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 17:08:36,449 INFO L273 TraceCheckUtils]: 75: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,450 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {5764#false} {5764#false} #75#return; {5764#false} is VALID [2018-11-14 17:08:36,450 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 17:08:36,450 INFO L273 TraceCheckUtils]: 78: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,450 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 17:08:36,450 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 17:08:36,450 INFO L273 TraceCheckUtils]: 81: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,451 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 17:08:36,451 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 17:08:36,451 INFO L273 TraceCheckUtils]: 84: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,451 INFO L273 TraceCheckUtils]: 85: Hoare triple {5764#false} assume !(~i~2 < 9999); {5764#false} is VALID [2018-11-14 17:08:36,451 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 17:08:36,451 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 17:08:36,452 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 17:08:36,452 INFO L273 TraceCheckUtils]: 89: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,452 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 17:08:36,452 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 17:08:36,452 INFO L273 TraceCheckUtils]: 92: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,452 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 17:08:36,452 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 17:08:36,453 INFO L273 TraceCheckUtils]: 95: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,453 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 17:08:36,453 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 17:08:36,453 INFO L273 TraceCheckUtils]: 98: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,453 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 17:08:36,453 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 17:08:36,454 INFO L273 TraceCheckUtils]: 101: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,454 INFO L273 TraceCheckUtils]: 102: Hoare triple {5764#false} assume !(~i~0 < 10000); {5764#false} is VALID [2018-11-14 17:08:36,454 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 17:08:36,454 INFO L273 TraceCheckUtils]: 104: Hoare triple {5764#false} assume true; {5764#false} is VALID [2018-11-14 17:08:36,454 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {5764#false} {5764#false} #77#return; {5764#false} is VALID [2018-11-14 17:08:36,454 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 17:08:36,455 INFO L273 TraceCheckUtils]: 107: Hoare triple {5764#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5764#false} is VALID [2018-11-14 17:08:36,455 INFO L273 TraceCheckUtils]: 108: Hoare triple {5764#false} assume !false; {5764#false} is VALID [2018-11-14 17:08:36,460 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 17:08:36,481 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:36,481 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-14 17:08:36,481 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 109 [2018-11-14 17:08:36,482 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:36,482 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-14 17:08:36,578 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 17:08:36,578 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-14 17:08:36,578 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-14 17:08:36,579 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-14 17:08:36,579 INFO L87 Difference]: Start difference. First operand 74 states and 78 transitions. Second operand 14 states. [2018-11-14 17:08:36,934 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:36,935 INFO L93 Difference]: Finished difference Result 114 states and 122 transitions. [2018-11-14 17:08:36,935 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-14 17:08:36,935 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 109 [2018-11-14 17:08:36,935 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:36,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 17:08:36,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 90 transitions. [2018-11-14 17:08:36,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-14 17:08:36,939 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 90 transitions. [2018-11-14 17:08:36,939 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 90 transitions. [2018-11-14 17:08:37,403 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 17:08:37,405 INFO L225 Difference]: With dead ends: 114 [2018-11-14 17:08:37,406 INFO L226 Difference]: Without dead ends: 78 [2018-11-14 17:08:37,406 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 109 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-14 17:08:37,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2018-11-14 17:08:37,428 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 77. [2018-11-14 17:08:37,428 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:37,428 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand 77 states. [2018-11-14 17:08:37,428 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand 77 states. [2018-11-14 17:08:37,428 INFO L87 Difference]: Start difference. First operand 78 states. Second operand 77 states. [2018-11-14 17:08:37,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:37,430 INFO L93 Difference]: Finished difference Result 78 states and 82 transitions. [2018-11-14 17:08:37,430 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 82 transitions. [2018-11-14 17:08:37,431 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:37,431 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:37,431 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 78 states. [2018-11-14 17:08:37,431 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 78 states. [2018-11-14 17:08:37,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:37,433 INFO L93 Difference]: Finished difference Result 78 states and 82 transitions. [2018-11-14 17:08:37,434 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 82 transitions. [2018-11-14 17:08:37,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:37,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:37,434 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:37,434 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:37,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 77 states. [2018-11-14 17:08:37,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 81 transitions. [2018-11-14 17:08:37,436 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 81 transitions. Word has length 109 [2018-11-14 17:08:37,437 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:37,437 INFO L480 AbstractCegarLoop]: Abstraction has 77 states and 81 transitions. [2018-11-14 17:08:37,437 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-14 17:08:37,437 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 81 transitions. [2018-11-14 17:08:37,438 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 113 [2018-11-14 17:08:37,438 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:37,438 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 17:08:37,439 INFO L423 AbstractCegarLoop]: === Iteration 15 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:37,439 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:37,439 INFO L82 PathProgramCache]: Analyzing trace with hash 1657732872, now seen corresponding path program 11 times [2018-11-14 17:08:37,439 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:37,439 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:37,440 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:37,440 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:37,440 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:37,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:38,396 INFO L256 TraceCheckUtils]: 0: Hoare triple {6518#true} call ULTIMATE.init(); {6518#true} is VALID [2018-11-14 17:08:38,396 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 17:08:38,397 INFO L273 TraceCheckUtils]: 2: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,397 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6518#true} {6518#true} #69#return; {6518#true} is VALID [2018-11-14 17:08:38,397 INFO L256 TraceCheckUtils]: 4: Hoare triple {6518#true} call #t~ret12 := main(); {6518#true} is VALID [2018-11-14 17:08:38,398 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 17:08:38,398 INFO L273 TraceCheckUtils]: 6: Hoare triple {6520#(= main_~i~1 0)} assume true; {6520#(= main_~i~1 0)} is VALID [2018-11-14 17:08:38,399 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 17:08:38,399 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 17:08:38,400 INFO L273 TraceCheckUtils]: 9: Hoare triple {6521#(<= main_~i~1 1)} assume true; {6521#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:38,401 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 17:08:38,401 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 17:08:38,402 INFO L273 TraceCheckUtils]: 12: Hoare triple {6522#(<= main_~i~1 2)} assume true; {6522#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:38,402 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 17:08:38,403 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 17:08:38,404 INFO L273 TraceCheckUtils]: 15: Hoare triple {6523#(<= main_~i~1 3)} assume true; {6523#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:38,404 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 17:08:38,405 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 17:08:38,406 INFO L273 TraceCheckUtils]: 18: Hoare triple {6524#(<= main_~i~1 4)} assume true; {6524#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:38,406 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 17:08:38,407 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 17:08:38,407 INFO L273 TraceCheckUtils]: 21: Hoare triple {6525#(<= main_~i~1 5)} assume true; {6525#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:38,408 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 17:08:38,409 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 17:08:38,409 INFO L273 TraceCheckUtils]: 24: Hoare triple {6526#(<= main_~i~1 6)} assume true; {6526#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:38,410 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 17:08:38,410 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 17:08:38,411 INFO L273 TraceCheckUtils]: 27: Hoare triple {6527#(<= main_~i~1 7)} assume true; {6527#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:38,411 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 17:08:38,412 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 17:08:38,413 INFO L273 TraceCheckUtils]: 30: Hoare triple {6528#(<= main_~i~1 8)} assume true; {6528#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:38,413 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 17:08:38,414 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 17:08:38,415 INFO L273 TraceCheckUtils]: 33: Hoare triple {6529#(<= main_~i~1 9)} assume true; {6529#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:38,415 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 17:08:38,416 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 17:08:38,416 INFO L273 TraceCheckUtils]: 36: Hoare triple {6530#(<= main_~i~1 10)} assume true; {6530#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:38,417 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 17:08:38,418 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 17:08:38,418 INFO L273 TraceCheckUtils]: 39: Hoare triple {6531#(<= main_~i~1 11)} assume true; {6531#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:38,419 INFO L273 TraceCheckUtils]: 40: Hoare triple {6531#(<= main_~i~1 11)} assume !(~i~1 < 10000); {6519#false} is VALID [2018-11-14 17:08:38,419 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 17:08:38,419 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 17:08:38,419 INFO L273 TraceCheckUtils]: 43: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,420 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 17:08:38,420 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 17:08:38,420 INFO L273 TraceCheckUtils]: 46: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,420 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 17:08:38,420 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 17:08:38,421 INFO L273 TraceCheckUtils]: 49: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,421 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 17:08:38,421 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 17:08:38,421 INFO L273 TraceCheckUtils]: 52: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,421 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 17:08:38,422 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 17:08:38,422 INFO L273 TraceCheckUtils]: 55: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,422 INFO L273 TraceCheckUtils]: 56: Hoare triple {6518#true} assume !(~i~0 < 10000); {6518#true} is VALID [2018-11-14 17:08:38,422 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 17:08:38,422 INFO L273 TraceCheckUtils]: 58: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,423 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6518#true} {6519#false} #73#return; {6519#false} is VALID [2018-11-14 17:08:38,423 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 17:08:38,423 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 17:08:38,423 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 17:08:38,423 INFO L273 TraceCheckUtils]: 63: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,424 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 17:08:38,424 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 17:08:38,424 INFO L273 TraceCheckUtils]: 66: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,424 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 17:08:38,424 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 17:08:38,424 INFO L273 TraceCheckUtils]: 69: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,424 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 17:08:38,425 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 17:08:38,425 INFO L273 TraceCheckUtils]: 72: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,425 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 17:08:38,425 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 17:08:38,425 INFO L273 TraceCheckUtils]: 75: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,425 INFO L273 TraceCheckUtils]: 76: Hoare triple {6518#true} assume !(~i~0 < 10000); {6518#true} is VALID [2018-11-14 17:08:38,425 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 17:08:38,425 INFO L273 TraceCheckUtils]: 78: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,425 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6518#true} {6519#false} #75#return; {6519#false} is VALID [2018-11-14 17:08:38,426 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 17:08:38,426 INFO L273 TraceCheckUtils]: 81: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,426 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 17:08:38,426 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 17:08:38,426 INFO L273 TraceCheckUtils]: 84: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,426 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 17:08:38,426 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 17:08:38,426 INFO L273 TraceCheckUtils]: 87: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,427 INFO L273 TraceCheckUtils]: 88: Hoare triple {6519#false} assume !(~i~2 < 9999); {6519#false} is VALID [2018-11-14 17:08:38,427 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 17:08:38,427 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 17:08:38,427 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 17:08:38,427 INFO L273 TraceCheckUtils]: 92: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,427 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 17:08:38,427 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 17:08:38,427 INFO L273 TraceCheckUtils]: 95: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,427 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 17:08:38,428 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 17:08:38,428 INFO L273 TraceCheckUtils]: 98: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,428 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 17:08:38,428 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 17:08:38,428 INFO L273 TraceCheckUtils]: 101: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,428 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 17:08:38,428 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 17:08:38,428 INFO L273 TraceCheckUtils]: 104: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,428 INFO L273 TraceCheckUtils]: 105: Hoare triple {6518#true} assume !(~i~0 < 10000); {6518#true} is VALID [2018-11-14 17:08:38,429 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 17:08:38,429 INFO L273 TraceCheckUtils]: 107: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,429 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {6518#true} {6519#false} #77#return; {6519#false} is VALID [2018-11-14 17:08:38,429 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 17:08:38,429 INFO L273 TraceCheckUtils]: 110: Hoare triple {6519#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6519#false} is VALID [2018-11-14 17:08:38,429 INFO L273 TraceCheckUtils]: 111: Hoare triple {6519#false} assume !false; {6519#false} is VALID [2018-11-14 17:08:38,435 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 17:08:38,435 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:38,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 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 17:08:38,445 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 17:08:38,656 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2018-11-14 17:08:38,657 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:38,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:38,679 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:38,888 INFO L256 TraceCheckUtils]: 0: Hoare triple {6518#true} call ULTIMATE.init(); {6518#true} is VALID [2018-11-14 17:08:38,888 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 17:08:38,888 INFO L273 TraceCheckUtils]: 2: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,888 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6518#true} {6518#true} #69#return; {6518#true} is VALID [2018-11-14 17:08:38,888 INFO L256 TraceCheckUtils]: 4: Hoare triple {6518#true} call #t~ret12 := main(); {6518#true} is VALID [2018-11-14 17:08:38,889 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 17:08:38,889 INFO L273 TraceCheckUtils]: 6: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,889 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 17:08:38,889 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 17:08:38,889 INFO L273 TraceCheckUtils]: 9: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,890 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 17:08:38,890 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 17:08:38,890 INFO L273 TraceCheckUtils]: 12: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,890 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 17:08:38,890 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 17:08:38,890 INFO L273 TraceCheckUtils]: 15: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,891 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 17:08:38,891 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 17:08:38,891 INFO L273 TraceCheckUtils]: 18: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,891 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 17:08:38,891 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 17:08:38,891 INFO L273 TraceCheckUtils]: 21: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,892 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 17:08:38,892 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 17:08:38,892 INFO L273 TraceCheckUtils]: 24: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,892 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 17:08:38,892 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 17:08:38,892 INFO L273 TraceCheckUtils]: 27: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,893 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 17:08:38,893 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 17:08:38,893 INFO L273 TraceCheckUtils]: 30: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,893 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 17:08:38,893 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 17:08:38,894 INFO L273 TraceCheckUtils]: 33: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,894 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 17:08:38,894 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 17:08:38,894 INFO L273 TraceCheckUtils]: 36: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,894 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 17:08:38,894 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 17:08:38,895 INFO L273 TraceCheckUtils]: 39: Hoare triple {6518#true} assume true; {6518#true} is VALID [2018-11-14 17:08:38,895 INFO L273 TraceCheckUtils]: 40: Hoare triple {6518#true} assume !(~i~1 < 10000); {6518#true} is VALID [2018-11-14 17:08:38,895 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 17:08:38,910 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 17:08:38,919 INFO L273 TraceCheckUtils]: 43: Hoare triple {6661#(<= mapavg_~i~0 0)} assume true; {6661#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:38,934 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 17:08:38,943 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 17:08:38,958 INFO L273 TraceCheckUtils]: 46: Hoare triple {6671#(<= mapavg_~i~0 1)} assume true; {6671#(<= mapavg_~i~0 1)} is VALID [2018-11-14 17:08:38,967 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 17:08:38,979 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 17:08:38,989 INFO L273 TraceCheckUtils]: 49: Hoare triple {6681#(<= mapavg_~i~0 2)} assume true; {6681#(<= mapavg_~i~0 2)} is VALID [2018-11-14 17:08:38,989 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 17:08:38,991 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 17:08:38,991 INFO L273 TraceCheckUtils]: 52: Hoare triple {6691#(<= mapavg_~i~0 3)} assume true; {6691#(<= mapavg_~i~0 3)} is VALID [2018-11-14 17:08:38,993 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 17:08:38,993 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 17:08:38,995 INFO L273 TraceCheckUtils]: 55: Hoare triple {6701#(<= mapavg_~i~0 4)} assume true; {6701#(<= mapavg_~i~0 4)} is VALID [2018-11-14 17:08:38,995 INFO L273 TraceCheckUtils]: 56: Hoare triple {6701#(<= mapavg_~i~0 4)} assume !(~i~0 < 10000); {6519#false} is VALID [2018-11-14 17:08:38,995 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 17:08:38,995 INFO L273 TraceCheckUtils]: 58: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,995 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6519#false} {6518#true} #73#return; {6519#false} is VALID [2018-11-14 17:08:38,996 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 17:08:38,996 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 17:08:38,996 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 17:08:38,996 INFO L273 TraceCheckUtils]: 63: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,996 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 17:08:38,996 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 17:08:38,996 INFO L273 TraceCheckUtils]: 66: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,996 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 17:08:38,997 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 17:08:38,997 INFO L273 TraceCheckUtils]: 69: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,997 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 17:08:38,997 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 17:08:38,997 INFO L273 TraceCheckUtils]: 72: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,997 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 17:08:38,997 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 17:08:38,998 INFO L273 TraceCheckUtils]: 75: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,998 INFO L273 TraceCheckUtils]: 76: Hoare triple {6519#false} assume !(~i~0 < 10000); {6519#false} is VALID [2018-11-14 17:08:38,998 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 17:08:38,998 INFO L273 TraceCheckUtils]: 78: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,999 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6519#false} {6519#false} #75#return; {6519#false} is VALID [2018-11-14 17:08:38,999 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 17:08:38,999 INFO L273 TraceCheckUtils]: 81: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,999 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 17:08:38,999 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 17:08:38,999 INFO L273 TraceCheckUtils]: 84: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:38,999 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 17:08:38,999 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 17:08:39,000 INFO L273 TraceCheckUtils]: 87: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:39,000 INFO L273 TraceCheckUtils]: 88: Hoare triple {6519#false} assume !(~i~2 < 9999); {6519#false} is VALID [2018-11-14 17:08:39,000 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 17:08:39,000 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 17:08:39,000 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 17:08:39,000 INFO L273 TraceCheckUtils]: 92: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:39,000 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 17:08:39,000 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 17:08:39,001 INFO L273 TraceCheckUtils]: 95: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:39,001 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 17:08:39,001 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 17:08:39,001 INFO L273 TraceCheckUtils]: 98: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:39,001 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 17:08:39,001 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 17:08:39,001 INFO L273 TraceCheckUtils]: 101: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:39,001 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 17:08:39,001 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 17:08:39,002 INFO L273 TraceCheckUtils]: 104: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:39,002 INFO L273 TraceCheckUtils]: 105: Hoare triple {6519#false} assume !(~i~0 < 10000); {6519#false} is VALID [2018-11-14 17:08:39,002 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 17:08:39,002 INFO L273 TraceCheckUtils]: 107: Hoare triple {6519#false} assume true; {6519#false} is VALID [2018-11-14 17:08:39,002 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {6519#false} {6519#false} #77#return; {6519#false} is VALID [2018-11-14 17:08:39,002 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 17:08:39,002 INFO L273 TraceCheckUtils]: 110: Hoare triple {6519#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6519#false} is VALID [2018-11-14 17:08:39,002 INFO L273 TraceCheckUtils]: 111: Hoare triple {6519#false} assume !false; {6519#false} is VALID [2018-11-14 17:08:39,007 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 17:08:39,028 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:39,028 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 7] total 19 [2018-11-14 17:08:39,029 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 112 [2018-11-14 17:08:39,030 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:39,030 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-14 17:08:39,122 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 17:08:39,122 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-14 17:08:39,123 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-14 17:08:39,123 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=231, Unknown=0, NotChecked=0, Total=342 [2018-11-14 17:08:39,123 INFO L87 Difference]: Start difference. First operand 77 states and 81 transitions. Second operand 19 states. [2018-11-14 17:08:39,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:39,566 INFO L93 Difference]: Finished difference Result 121 states and 133 transitions. [2018-11-14 17:08:39,566 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-14 17:08:39,566 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 112 [2018-11-14 17:08:39,567 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:39,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 17:08:39,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 112 transitions. [2018-11-14 17:08:39,568 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 17:08:39,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 112 transitions. [2018-11-14 17:08:39,570 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 112 transitions. [2018-11-14 17:08:39,671 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 17:08:39,673 INFO L225 Difference]: With dead ends: 121 [2018-11-14 17:08:39,674 INFO L226 Difference]: Without dead ends: 85 [2018-11-14 17:08:39,674 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 108 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=111, Invalid=231, Unknown=0, NotChecked=0, Total=342 [2018-11-14 17:08:39,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2018-11-14 17:08:39,767 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 83. [2018-11-14 17:08:39,767 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:39,767 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand 83 states. [2018-11-14 17:08:39,768 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 83 states. [2018-11-14 17:08:39,768 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 83 states. [2018-11-14 17:08:39,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:39,770 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2018-11-14 17:08:39,770 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2018-11-14 17:08:39,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:39,771 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:39,771 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 85 states. [2018-11-14 17:08:39,771 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 85 states. [2018-11-14 17:08:39,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:39,774 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2018-11-14 17:08:39,774 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2018-11-14 17:08:39,774 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:39,774 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:39,774 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:39,775 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:39,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2018-11-14 17:08:39,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 87 transitions. [2018-11-14 17:08:39,777 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 87 transitions. Word has length 112 [2018-11-14 17:08:39,777 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:39,777 INFO L480 AbstractCegarLoop]: Abstraction has 83 states and 87 transitions. [2018-11-14 17:08:39,777 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-14 17:08:39,777 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 87 transitions. [2018-11-14 17:08:39,778 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2018-11-14 17:08:39,778 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:39,779 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 17:08:39,779 INFO L423 AbstractCegarLoop]: === Iteration 16 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:39,779 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:39,779 INFO L82 PathProgramCache]: Analyzing trace with hash 1732897364, now seen corresponding path program 12 times [2018-11-14 17:08:39,779 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:39,780 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:39,780 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:39,780 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:39,781 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:39,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:41,511 INFO L256 TraceCheckUtils]: 0: Hoare triple {7318#true} call ULTIMATE.init(); {7318#true} is VALID [2018-11-14 17:08:41,511 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 17:08:41,511 INFO L273 TraceCheckUtils]: 2: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,512 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7318#true} {7318#true} #69#return; {7318#true} is VALID [2018-11-14 17:08:41,512 INFO L256 TraceCheckUtils]: 4: Hoare triple {7318#true} call #t~ret12 := main(); {7318#true} is VALID [2018-11-14 17:08:41,512 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 17:08:41,513 INFO L273 TraceCheckUtils]: 6: Hoare triple {7320#(= main_~i~1 0)} assume true; {7320#(= main_~i~1 0)} is VALID [2018-11-14 17:08:41,515 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 17:08:41,515 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 17:08:41,517 INFO L273 TraceCheckUtils]: 9: Hoare triple {7321#(<= main_~i~1 1)} assume true; {7321#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:41,517 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 17:08:41,519 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 17:08:41,519 INFO L273 TraceCheckUtils]: 12: Hoare triple {7322#(<= main_~i~1 2)} assume true; {7322#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:41,521 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 17:08:41,521 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 17:08:41,523 INFO L273 TraceCheckUtils]: 15: Hoare triple {7323#(<= main_~i~1 3)} assume true; {7323#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:41,523 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 17:08:41,525 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 17:08:41,525 INFO L273 TraceCheckUtils]: 18: Hoare triple {7324#(<= main_~i~1 4)} assume true; {7324#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:41,527 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 17:08:41,528 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 17:08:41,529 INFO L273 TraceCheckUtils]: 21: Hoare triple {7325#(<= main_~i~1 5)} assume true; {7325#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:41,529 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 17:08:41,531 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 17:08:41,531 INFO L273 TraceCheckUtils]: 24: Hoare triple {7326#(<= main_~i~1 6)} assume true; {7326#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:41,533 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 17:08:41,534 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 17:08:41,535 INFO L273 TraceCheckUtils]: 27: Hoare triple {7327#(<= main_~i~1 7)} assume true; {7327#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:41,535 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 17:08:41,537 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 17:08:41,537 INFO L273 TraceCheckUtils]: 30: Hoare triple {7328#(<= main_~i~1 8)} assume true; {7328#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:41,539 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 17:08:41,540 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 17:08:41,541 INFO L273 TraceCheckUtils]: 33: Hoare triple {7329#(<= main_~i~1 9)} assume true; {7329#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:41,541 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 17:08:41,543 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 17:08:41,545 INFO L273 TraceCheckUtils]: 36: Hoare triple {7330#(<= main_~i~1 10)} assume true; {7330#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:41,545 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 17:08:41,546 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 17:08:41,547 INFO L273 TraceCheckUtils]: 39: Hoare triple {7331#(<= main_~i~1 11)} assume true; {7331#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:41,547 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 17:08:41,550 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 17:08:41,550 INFO L273 TraceCheckUtils]: 42: Hoare triple {7332#(<= main_~i~1 12)} assume true; {7332#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:41,552 INFO L273 TraceCheckUtils]: 43: Hoare triple {7332#(<= main_~i~1 12)} assume !(~i~1 < 10000); {7319#false} is VALID [2018-11-14 17:08:41,552 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 17:08:41,552 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 17:08:41,552 INFO L273 TraceCheckUtils]: 46: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,552 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 17:08:41,552 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 17:08:41,553 INFO L273 TraceCheckUtils]: 49: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,553 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 17:08:41,553 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 17:08:41,553 INFO L273 TraceCheckUtils]: 52: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,554 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 17:08:41,554 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 17:08:41,554 INFO L273 TraceCheckUtils]: 55: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,554 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 17:08:41,555 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 17:08:41,555 INFO L273 TraceCheckUtils]: 58: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,555 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 17:08:41,555 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 17:08:41,556 INFO L273 TraceCheckUtils]: 61: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,556 INFO L273 TraceCheckUtils]: 62: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 17:08:41,556 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 17:08:41,556 INFO L273 TraceCheckUtils]: 64: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,556 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7318#true} {7319#false} #73#return; {7319#false} is VALID [2018-11-14 17:08:41,556 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 17:08:41,557 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 17:08:41,557 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 17:08:41,557 INFO L273 TraceCheckUtils]: 69: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,557 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 17:08:41,557 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 17:08:41,557 INFO L273 TraceCheckUtils]: 72: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,557 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 17:08:41,558 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 17:08:41,558 INFO L273 TraceCheckUtils]: 75: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,558 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 17:08:41,558 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 17:08:41,558 INFO L273 TraceCheckUtils]: 78: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,558 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 17:08:41,559 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 17:08:41,559 INFO L273 TraceCheckUtils]: 81: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,559 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 17:08:41,559 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 17:08:41,559 INFO L273 TraceCheckUtils]: 84: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,559 INFO L273 TraceCheckUtils]: 85: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 17:08:41,559 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 17:08:41,560 INFO L273 TraceCheckUtils]: 87: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,560 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {7318#true} {7319#false} #75#return; {7319#false} is VALID [2018-11-14 17:08:41,560 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 17:08:41,560 INFO L273 TraceCheckUtils]: 90: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,560 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 17:08:41,560 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 17:08:41,561 INFO L273 TraceCheckUtils]: 93: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,561 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 17:08:41,561 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 17:08:41,561 INFO L273 TraceCheckUtils]: 96: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,561 INFO L273 TraceCheckUtils]: 97: Hoare triple {7319#false} assume !(~i~2 < 9999); {7319#false} is VALID [2018-11-14 17:08:41,561 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 17:08:41,561 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 17:08:41,562 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 17:08:41,562 INFO L273 TraceCheckUtils]: 101: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,562 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 17:08:41,562 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 17:08:41,562 INFO L273 TraceCheckUtils]: 104: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,562 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 17:08:41,562 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 17:08:41,563 INFO L273 TraceCheckUtils]: 107: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,563 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 17:08:41,563 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 17:08:41,563 INFO L273 TraceCheckUtils]: 110: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,563 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 17:08:41,563 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 17:08:41,564 INFO L273 TraceCheckUtils]: 113: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,564 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 17:08:41,564 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 17:08:41,564 INFO L273 TraceCheckUtils]: 116: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,564 INFO L273 TraceCheckUtils]: 117: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 17:08:41,564 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 17:08:41,564 INFO L273 TraceCheckUtils]: 119: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,565 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {7318#true} {7319#false} #77#return; {7319#false} is VALID [2018-11-14 17:08:41,565 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 17:08:41,565 INFO L273 TraceCheckUtils]: 122: Hoare triple {7319#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7319#false} is VALID [2018-11-14 17:08:41,565 INFO L273 TraceCheckUtils]: 123: Hoare triple {7319#false} assume !false; {7319#false} is VALID [2018-11-14 17:08:41,579 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 17:08:41,580 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:41,580 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 17:08:41,589 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 17:08:41,699 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2018-11-14 17:08:41,699 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:41,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:41,727 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:41,884 INFO L256 TraceCheckUtils]: 0: Hoare triple {7318#true} call ULTIMATE.init(); {7318#true} is VALID [2018-11-14 17:08:41,884 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 17:08:41,885 INFO L273 TraceCheckUtils]: 2: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,885 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7318#true} {7318#true} #69#return; {7318#true} is VALID [2018-11-14 17:08:41,885 INFO L256 TraceCheckUtils]: 4: Hoare triple {7318#true} call #t~ret12 := main(); {7318#true} is VALID [2018-11-14 17:08:41,886 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 17:08:41,886 INFO L273 TraceCheckUtils]: 6: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,886 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 17:08:41,886 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 17:08:41,887 INFO L273 TraceCheckUtils]: 9: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,887 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 17:08:41,887 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 17:08:41,887 INFO L273 TraceCheckUtils]: 12: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,887 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 17:08:41,887 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 17:08:41,887 INFO L273 TraceCheckUtils]: 15: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,888 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 17:08:41,888 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 17:08:41,888 INFO L273 TraceCheckUtils]: 18: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,888 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 17:08:41,888 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 17:08:41,888 INFO L273 TraceCheckUtils]: 21: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,889 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 17:08:41,889 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 17:08:41,889 INFO L273 TraceCheckUtils]: 24: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,889 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 17:08:41,889 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 17:08:41,889 INFO L273 TraceCheckUtils]: 27: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,889 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 17:08:41,890 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 17:08:41,890 INFO L273 TraceCheckUtils]: 30: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,890 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 17:08:41,890 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 17:08:41,890 INFO L273 TraceCheckUtils]: 33: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,890 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 17:08:41,890 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 17:08:41,891 INFO L273 TraceCheckUtils]: 36: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,891 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 17:08:41,891 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 17:08:41,891 INFO L273 TraceCheckUtils]: 39: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,891 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 17:08:41,891 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 17:08:41,892 INFO L273 TraceCheckUtils]: 42: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,892 INFO L273 TraceCheckUtils]: 43: Hoare triple {7318#true} assume !(~i~1 < 10000); {7318#true} is VALID [2018-11-14 17:08:41,892 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 17:08:41,892 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 17:08:41,892 INFO L273 TraceCheckUtils]: 46: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,892 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 17:08:41,892 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 17:08:41,893 INFO L273 TraceCheckUtils]: 49: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,893 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 17:08:41,893 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 17:08:41,893 INFO L273 TraceCheckUtils]: 52: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,893 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 17:08:41,893 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 17:08:41,894 INFO L273 TraceCheckUtils]: 55: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,894 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 17:08:41,894 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 17:08:41,894 INFO L273 TraceCheckUtils]: 58: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,894 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 17:08:41,894 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 17:08:41,894 INFO L273 TraceCheckUtils]: 61: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,895 INFO L273 TraceCheckUtils]: 62: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 17:08:41,895 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 17:08:41,895 INFO L273 TraceCheckUtils]: 64: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,895 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {7318#true} {7318#true} #73#return; {7318#true} is VALID [2018-11-14 17:08:41,895 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 17:08:41,895 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 17:08:41,895 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 17:08:41,896 INFO L273 TraceCheckUtils]: 69: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,896 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 17:08:41,896 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 17:08:41,896 INFO L273 TraceCheckUtils]: 72: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,896 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 17:08:41,896 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 17:08:41,897 INFO L273 TraceCheckUtils]: 75: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,897 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 17:08:41,897 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 17:08:41,897 INFO L273 TraceCheckUtils]: 78: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,897 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 17:08:41,897 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 17:08:41,897 INFO L273 TraceCheckUtils]: 81: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,898 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 17:08:41,898 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 17:08:41,898 INFO L273 TraceCheckUtils]: 84: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,898 INFO L273 TraceCheckUtils]: 85: Hoare triple {7318#true} assume !(~i~0 < 10000); {7318#true} is VALID [2018-11-14 17:08:41,898 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 17:08:41,898 INFO L273 TraceCheckUtils]: 87: Hoare triple {7318#true} assume true; {7318#true} is VALID [2018-11-14 17:08:41,899 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {7318#true} {7318#true} #75#return; {7318#true} is VALID [2018-11-14 17:08:41,899 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 17:08:41,900 INFO L273 TraceCheckUtils]: 90: Hoare triple {7603#(<= main_~i~2 0)} assume true; {7603#(<= main_~i~2 0)} is VALID [2018-11-14 17:08:41,900 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 17:08:41,901 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 17:08:41,901 INFO L273 TraceCheckUtils]: 93: Hoare triple {7613#(<= main_~i~2 1)} assume true; {7613#(<= main_~i~2 1)} is VALID [2018-11-14 17:08:41,901 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 17:08:41,902 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 17:08:41,903 INFO L273 TraceCheckUtils]: 96: Hoare triple {7623#(<= main_~i~2 2)} assume true; {7623#(<= main_~i~2 2)} is VALID [2018-11-14 17:08:41,904 INFO L273 TraceCheckUtils]: 97: Hoare triple {7623#(<= main_~i~2 2)} assume !(~i~2 < 9999); {7319#false} is VALID [2018-11-14 17:08:41,904 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 17:08:41,904 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 17:08:41,905 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 17:08:41,905 INFO L273 TraceCheckUtils]: 101: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,905 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 17:08:41,905 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 17:08:41,906 INFO L273 TraceCheckUtils]: 104: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,906 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 17:08:41,906 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 17:08:41,906 INFO L273 TraceCheckUtils]: 107: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,907 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 17:08:41,907 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 17:08:41,907 INFO L273 TraceCheckUtils]: 110: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,907 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 17:08:41,907 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 17:08:41,907 INFO L273 TraceCheckUtils]: 113: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,907 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 17:08:41,908 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 17:08:41,908 INFO L273 TraceCheckUtils]: 116: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,908 INFO L273 TraceCheckUtils]: 117: Hoare triple {7319#false} assume !(~i~0 < 10000); {7319#false} is VALID [2018-11-14 17:08:41,908 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 17:08:41,908 INFO L273 TraceCheckUtils]: 119: Hoare triple {7319#false} assume true; {7319#false} is VALID [2018-11-14 17:08:41,908 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {7319#false} {7319#false} #77#return; {7319#false} is VALID [2018-11-14 17:08:41,909 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 17:08:41,909 INFO L273 TraceCheckUtils]: 122: Hoare triple {7319#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7319#false} is VALID [2018-11-14 17:08:41,909 INFO L273 TraceCheckUtils]: 123: Hoare triple {7319#false} assume !false; {7319#false} is VALID [2018-11-14 17:08:41,938 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 17:08:41,959 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:41,960 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 5] total 18 [2018-11-14 17:08:41,960 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 124 [2018-11-14 17:08:41,961 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:41,961 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-14 17:08:42,063 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 17:08:42,064 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-14 17:08:42,064 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-14 17:08:42,064 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=114, Invalid=192, Unknown=0, NotChecked=0, Total=306 [2018-11-14 17:08:42,065 INFO L87 Difference]: Start difference. First operand 83 states and 87 transitions. Second operand 18 states. [2018-11-14 17:08:42,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:42,732 INFO L93 Difference]: Finished difference Result 130 states and 139 transitions. [2018-11-14 17:08:42,732 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-14 17:08:42,732 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 124 [2018-11-14 17:08:42,732 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:42,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 17:08:42,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 17:08:42,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 17:08:42,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-14 17:08:42,736 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 106 transitions. [2018-11-14 17:08:42,838 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 17:08:42,840 INFO L225 Difference]: With dead ends: 130 [2018-11-14 17:08:42,841 INFO L226 Difference]: Without dead ends: 91 [2018-11-14 17:08:42,842 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 122 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=114, Invalid=192, Unknown=0, NotChecked=0, Total=306 [2018-11-14 17:08:42,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2018-11-14 17:08:42,866 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 89. [2018-11-14 17:08:42,867 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:42,867 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand 89 states. [2018-11-14 17:08:42,867 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 89 states. [2018-11-14 17:08:42,867 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 89 states. [2018-11-14 17:08:42,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:42,871 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2018-11-14 17:08:42,871 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2018-11-14 17:08:42,871 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:42,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:42,872 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand 91 states. [2018-11-14 17:08:42,872 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 91 states. [2018-11-14 17:08:42,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:42,874 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2018-11-14 17:08:42,874 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2018-11-14 17:08:42,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:42,875 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:42,875 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:42,875 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:42,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 89 states. [2018-11-14 17:08:42,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 93 transitions. [2018-11-14 17:08:42,878 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 93 transitions. Word has length 124 [2018-11-14 17:08:42,878 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:42,878 INFO L480 AbstractCegarLoop]: Abstraction has 89 states and 93 transitions. [2018-11-14 17:08:42,878 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-14 17:08:42,878 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 93 transitions. [2018-11-14 17:08:42,879 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 131 [2018-11-14 17:08:42,880 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:42,880 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 17:08:42,880 INFO L423 AbstractCegarLoop]: === Iteration 17 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:42,880 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:42,880 INFO L82 PathProgramCache]: Analyzing trace with hash 918106204, now seen corresponding path program 13 times [2018-11-14 17:08:42,881 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:42,881 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:42,882 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:42,882 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:42,882 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:42,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:43,159 INFO L256 TraceCheckUtils]: 0: Hoare triple {8185#true} call ULTIMATE.init(); {8185#true} is VALID [2018-11-14 17:08:43,160 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 17:08:43,160 INFO L273 TraceCheckUtils]: 2: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,160 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8185#true} {8185#true} #69#return; {8185#true} is VALID [2018-11-14 17:08:43,160 INFO L256 TraceCheckUtils]: 4: Hoare triple {8185#true} call #t~ret12 := main(); {8185#true} is VALID [2018-11-14 17:08:43,161 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 17:08:43,162 INFO L273 TraceCheckUtils]: 6: Hoare triple {8187#(= main_~i~1 0)} assume true; {8187#(= main_~i~1 0)} is VALID [2018-11-14 17:08:43,162 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 17:08:43,163 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 17:08:43,163 INFO L273 TraceCheckUtils]: 9: Hoare triple {8188#(<= main_~i~1 1)} assume true; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:43,163 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 17:08:43,164 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 17:08:43,164 INFO L273 TraceCheckUtils]: 12: Hoare triple {8189#(<= main_~i~1 2)} assume true; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:43,165 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 17:08:43,166 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 17:08:43,166 INFO L273 TraceCheckUtils]: 15: Hoare triple {8190#(<= main_~i~1 3)} assume true; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:43,167 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 17:08:43,167 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 17:08:43,168 INFO L273 TraceCheckUtils]: 18: Hoare triple {8191#(<= main_~i~1 4)} assume true; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:43,168 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 17:08:43,172 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 17:08:43,173 INFO L273 TraceCheckUtils]: 21: Hoare triple {8192#(<= main_~i~1 5)} assume true; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:43,173 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 17:08:43,174 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 17:08:43,174 INFO L273 TraceCheckUtils]: 24: Hoare triple {8193#(<= main_~i~1 6)} assume true; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:43,175 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 17:08:43,175 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 17:08:43,176 INFO L273 TraceCheckUtils]: 27: Hoare triple {8194#(<= main_~i~1 7)} assume true; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:43,176 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 17:08:43,177 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 17:08:43,178 INFO L273 TraceCheckUtils]: 30: Hoare triple {8195#(<= main_~i~1 8)} assume true; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:43,178 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 17:08:43,179 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 17:08:43,179 INFO L273 TraceCheckUtils]: 33: Hoare triple {8196#(<= main_~i~1 9)} assume true; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:43,180 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 17:08:43,181 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 17:08:43,181 INFO L273 TraceCheckUtils]: 36: Hoare triple {8197#(<= main_~i~1 10)} assume true; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:43,182 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 17:08:43,183 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 17:08:43,183 INFO L273 TraceCheckUtils]: 39: Hoare triple {8198#(<= main_~i~1 11)} assume true; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:43,184 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 17:08:43,184 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 17:08:43,185 INFO L273 TraceCheckUtils]: 42: Hoare triple {8199#(<= main_~i~1 12)} assume true; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:43,186 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 17:08:43,186 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 17:08:43,187 INFO L273 TraceCheckUtils]: 45: Hoare triple {8200#(<= main_~i~1 13)} assume true; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:43,188 INFO L273 TraceCheckUtils]: 46: Hoare triple {8200#(<= main_~i~1 13)} assume !(~i~1 < 10000); {8186#false} is VALID [2018-11-14 17:08:43,188 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 17:08:43,188 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 17:08:43,188 INFO L273 TraceCheckUtils]: 49: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,188 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 17:08:43,189 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 17:08:43,189 INFO L273 TraceCheckUtils]: 52: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,189 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 17:08:43,189 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 17:08:43,189 INFO L273 TraceCheckUtils]: 55: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,190 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 17:08:43,190 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 17:08:43,190 INFO L273 TraceCheckUtils]: 58: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,190 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 17:08:43,190 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 17:08:43,191 INFO L273 TraceCheckUtils]: 61: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,191 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 17:08:43,191 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 17:08:43,191 INFO L273 TraceCheckUtils]: 64: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,191 INFO L273 TraceCheckUtils]: 65: Hoare triple {8185#true} assume !(~i~0 < 10000); {8185#true} is VALID [2018-11-14 17:08:43,191 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 17:08:43,191 INFO L273 TraceCheckUtils]: 67: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,192 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {8185#true} {8186#false} #73#return; {8186#false} is VALID [2018-11-14 17:08:43,192 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 17:08:43,192 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 17:08:43,192 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 17:08:43,192 INFO L273 TraceCheckUtils]: 72: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,192 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 17:08:43,192 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 17:08:43,192 INFO L273 TraceCheckUtils]: 75: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,193 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 17:08:43,193 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 17:08:43,193 INFO L273 TraceCheckUtils]: 78: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,193 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 17:08:43,193 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 17:08:43,193 INFO L273 TraceCheckUtils]: 81: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,193 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 17:08:43,193 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 17:08:43,193 INFO L273 TraceCheckUtils]: 84: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,194 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 17:08:43,194 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 17:08:43,194 INFO L273 TraceCheckUtils]: 87: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,194 INFO L273 TraceCheckUtils]: 88: Hoare triple {8185#true} assume !(~i~0 < 10000); {8185#true} is VALID [2018-11-14 17:08:43,194 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 17:08:43,194 INFO L273 TraceCheckUtils]: 90: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,194 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8185#true} {8186#false} #75#return; {8186#false} is VALID [2018-11-14 17:08:43,194 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 17:08:43,195 INFO L273 TraceCheckUtils]: 93: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,195 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 17:08:43,195 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 17:08:43,195 INFO L273 TraceCheckUtils]: 96: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,195 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 17:08:43,195 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 17:08:43,195 INFO L273 TraceCheckUtils]: 99: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,195 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 17:08:43,195 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 17:08:43,196 INFO L273 TraceCheckUtils]: 102: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,196 INFO L273 TraceCheckUtils]: 103: Hoare triple {8186#false} assume !(~i~2 < 9999); {8186#false} is VALID [2018-11-14 17:08:43,196 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 17:08:43,196 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 17:08:43,196 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 17:08:43,196 INFO L273 TraceCheckUtils]: 107: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,196 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 17:08:43,196 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 17:08:43,197 INFO L273 TraceCheckUtils]: 110: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,197 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 17:08:43,197 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 17:08:43,197 INFO L273 TraceCheckUtils]: 113: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,197 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 17:08:43,197 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 17:08:43,197 INFO L273 TraceCheckUtils]: 116: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,197 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 17:08:43,197 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 17:08:43,198 INFO L273 TraceCheckUtils]: 119: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,198 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 17:08:43,198 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 17:08:43,198 INFO L273 TraceCheckUtils]: 122: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,198 INFO L273 TraceCheckUtils]: 123: Hoare triple {8185#true} assume !(~i~0 < 10000); {8185#true} is VALID [2018-11-14 17:08:43,198 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 17:08:43,198 INFO L273 TraceCheckUtils]: 125: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,198 INFO L268 TraceCheckUtils]: 126: Hoare quadruple {8185#true} {8186#false} #77#return; {8186#false} is VALID [2018-11-14 17:08:43,198 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 17:08:43,199 INFO L273 TraceCheckUtils]: 128: Hoare triple {8186#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8186#false} is VALID [2018-11-14 17:08:43,199 INFO L273 TraceCheckUtils]: 129: Hoare triple {8186#false} assume !false; {8186#false} is VALID [2018-11-14 17:08:43,205 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 17:08:43,206 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:43,206 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 17:08:43,216 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:43,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:43,307 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:43,309 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:43,558 INFO L256 TraceCheckUtils]: 0: Hoare triple {8185#true} call ULTIMATE.init(); {8185#true} is VALID [2018-11-14 17:08:43,558 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 17:08:43,558 INFO L273 TraceCheckUtils]: 2: Hoare triple {8185#true} assume true; {8185#true} is VALID [2018-11-14 17:08:43,558 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8185#true} {8185#true} #69#return; {8185#true} is VALID [2018-11-14 17:08:43,559 INFO L256 TraceCheckUtils]: 4: Hoare triple {8185#true} call #t~ret12 := main(); {8185#true} is VALID [2018-11-14 17:08:43,559 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 17:08:43,560 INFO L273 TraceCheckUtils]: 6: Hoare triple {8219#(<= main_~i~1 0)} assume true; {8219#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:43,560 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 17:08:43,561 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 17:08:43,561 INFO L273 TraceCheckUtils]: 9: Hoare triple {8188#(<= main_~i~1 1)} assume true; {8188#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:43,561 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 17:08:43,562 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 17:08:43,562 INFO L273 TraceCheckUtils]: 12: Hoare triple {8189#(<= main_~i~1 2)} assume true; {8189#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:43,563 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 17:08:43,564 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 17:08:43,564 INFO L273 TraceCheckUtils]: 15: Hoare triple {8190#(<= main_~i~1 3)} assume true; {8190#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:43,565 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 17:08:43,566 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 17:08:43,566 INFO L273 TraceCheckUtils]: 18: Hoare triple {8191#(<= main_~i~1 4)} assume true; {8191#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:43,567 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 17:08:43,567 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 17:08:43,568 INFO L273 TraceCheckUtils]: 21: Hoare triple {8192#(<= main_~i~1 5)} assume true; {8192#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:43,568 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 17:08:43,569 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 17:08:43,570 INFO L273 TraceCheckUtils]: 24: Hoare triple {8193#(<= main_~i~1 6)} assume true; {8193#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:43,570 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 17:08:43,571 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 17:08:43,572 INFO L273 TraceCheckUtils]: 27: Hoare triple {8194#(<= main_~i~1 7)} assume true; {8194#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:43,572 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 17:08:43,573 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 17:08:43,574 INFO L273 TraceCheckUtils]: 30: Hoare triple {8195#(<= main_~i~1 8)} assume true; {8195#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:43,574 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 17:08:43,575 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 17:08:43,575 INFO L273 TraceCheckUtils]: 33: Hoare triple {8196#(<= main_~i~1 9)} assume true; {8196#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:43,576 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 17:08:43,577 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 17:08:43,577 INFO L273 TraceCheckUtils]: 36: Hoare triple {8197#(<= main_~i~1 10)} assume true; {8197#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:43,578 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 17:08:43,579 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 17:08:43,579 INFO L273 TraceCheckUtils]: 39: Hoare triple {8198#(<= main_~i~1 11)} assume true; {8198#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:43,580 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 17:08:43,581 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 17:08:43,581 INFO L273 TraceCheckUtils]: 42: Hoare triple {8199#(<= main_~i~1 12)} assume true; {8199#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:43,582 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 17:08:43,582 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 17:08:43,583 INFO L273 TraceCheckUtils]: 45: Hoare triple {8200#(<= main_~i~1 13)} assume true; {8200#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:43,584 INFO L273 TraceCheckUtils]: 46: Hoare triple {8200#(<= main_~i~1 13)} assume !(~i~1 < 10000); {8186#false} is VALID [2018-11-14 17:08:43,584 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 17:08:43,584 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 17:08:43,584 INFO L273 TraceCheckUtils]: 49: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,585 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 17:08:43,585 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 17:08:43,585 INFO L273 TraceCheckUtils]: 52: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,585 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 17:08:43,585 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 17:08:43,586 INFO L273 TraceCheckUtils]: 55: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,586 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 17:08:43,586 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 17:08:43,586 INFO L273 TraceCheckUtils]: 58: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,586 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 17:08:43,587 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 17:08:43,587 INFO L273 TraceCheckUtils]: 61: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,587 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 17:08:43,587 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 17:08:43,587 INFO L273 TraceCheckUtils]: 64: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,588 INFO L273 TraceCheckUtils]: 65: Hoare triple {8186#false} assume !(~i~0 < 10000); {8186#false} is VALID [2018-11-14 17:08:43,588 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 17:08:43,588 INFO L273 TraceCheckUtils]: 67: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,588 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {8186#false} {8186#false} #73#return; {8186#false} is VALID [2018-11-14 17:08:43,588 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 17:08:43,588 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 17:08:43,588 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 17:08:43,588 INFO L273 TraceCheckUtils]: 72: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,589 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 17:08:43,589 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 17:08:43,589 INFO L273 TraceCheckUtils]: 75: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,589 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 17:08:43,589 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 17:08:43,589 INFO L273 TraceCheckUtils]: 78: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,589 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 17:08:43,589 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 17:08:43,589 INFO L273 TraceCheckUtils]: 81: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,590 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 17:08:43,590 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 17:08:43,590 INFO L273 TraceCheckUtils]: 84: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,590 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 17:08:43,590 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 17:08:43,590 INFO L273 TraceCheckUtils]: 87: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,590 INFO L273 TraceCheckUtils]: 88: Hoare triple {8186#false} assume !(~i~0 < 10000); {8186#false} is VALID [2018-11-14 17:08:43,590 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 17:08:43,591 INFO L273 TraceCheckUtils]: 90: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,591 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8186#false} {8186#false} #75#return; {8186#false} is VALID [2018-11-14 17:08:43,591 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 17:08:43,591 INFO L273 TraceCheckUtils]: 93: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,591 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 17:08:43,591 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 17:08:43,591 INFO L273 TraceCheckUtils]: 96: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,591 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 17:08:43,591 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 17:08:43,592 INFO L273 TraceCheckUtils]: 99: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,592 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 17:08:43,592 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 17:08:43,592 INFO L273 TraceCheckUtils]: 102: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,592 INFO L273 TraceCheckUtils]: 103: Hoare triple {8186#false} assume !(~i~2 < 9999); {8186#false} is VALID [2018-11-14 17:08:43,592 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 17:08:43,592 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 17:08:43,592 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 17:08:43,593 INFO L273 TraceCheckUtils]: 107: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,593 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 17:08:43,593 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 17:08:43,593 INFO L273 TraceCheckUtils]: 110: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,593 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 17:08:43,593 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 17:08:43,593 INFO L273 TraceCheckUtils]: 113: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,593 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 17:08:43,593 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 17:08:43,594 INFO L273 TraceCheckUtils]: 116: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,594 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 17:08:43,594 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 17:08:43,594 INFO L273 TraceCheckUtils]: 119: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,594 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 17:08:43,594 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 17:08:43,594 INFO L273 TraceCheckUtils]: 122: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,594 INFO L273 TraceCheckUtils]: 123: Hoare triple {8186#false} assume !(~i~0 < 10000); {8186#false} is VALID [2018-11-14 17:08:43,595 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 17:08:43,595 INFO L273 TraceCheckUtils]: 125: Hoare triple {8186#false} assume true; {8186#false} is VALID [2018-11-14 17:08:43,595 INFO L268 TraceCheckUtils]: 126: Hoare quadruple {8186#false} {8186#false} #77#return; {8186#false} is VALID [2018-11-14 17:08:43,595 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 17:08:43,595 INFO L273 TraceCheckUtils]: 128: Hoare triple {8186#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8186#false} is VALID [2018-11-14 17:08:43,595 INFO L273 TraceCheckUtils]: 129: Hoare triple {8186#false} assume !false; {8186#false} is VALID [2018-11-14 17:08:43,602 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 17:08:43,624 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:43,625 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-14 17:08:43,625 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 130 [2018-11-14 17:08:43,626 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:43,626 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-14 17:08:43,741 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 17:08:43,741 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-14 17:08:43,742 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-14 17:08:43,742 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-14 17:08:43,742 INFO L87 Difference]: Start difference. First operand 89 states and 93 transitions. Second operand 17 states. [2018-11-14 17:08:44,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:44,182 INFO L93 Difference]: Finished difference Result 135 states and 143 transitions. [2018-11-14 17:08:44,182 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 17:08:44,182 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 130 [2018-11-14 17:08:44,183 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:44,183 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 17:08:44,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 99 transitions. [2018-11-14 17:08:44,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 17:08:44,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 99 transitions. [2018-11-14 17:08:44,185 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 99 transitions. [2018-11-14 17:08:44,275 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 17:08:44,278 INFO L225 Difference]: With dead ends: 135 [2018-11-14 17:08:44,278 INFO L226 Difference]: Without dead ends: 93 [2018-11-14 17:08:44,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 17:08:44,279 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2018-11-14 17:08:44,419 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 92. [2018-11-14 17:08:44,419 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:44,419 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand 92 states. [2018-11-14 17:08:44,419 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand 92 states. [2018-11-14 17:08:44,420 INFO L87 Difference]: Start difference. First operand 93 states. Second operand 92 states. [2018-11-14 17:08:44,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:44,421 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2018-11-14 17:08:44,421 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2018-11-14 17:08:44,422 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:44,422 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:44,422 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand 93 states. [2018-11-14 17:08:44,422 INFO L87 Difference]: Start difference. First operand 92 states. Second operand 93 states. [2018-11-14 17:08:44,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:44,424 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2018-11-14 17:08:44,424 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2018-11-14 17:08:44,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:44,424 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:44,424 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:44,425 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:44,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 92 states. [2018-11-14 17:08:44,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 96 transitions. [2018-11-14 17:08:44,427 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 96 transitions. Word has length 130 [2018-11-14 17:08:44,427 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:44,427 INFO L480 AbstractCegarLoop]: Abstraction has 92 states and 96 transitions. [2018-11-14 17:08:44,427 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-14 17:08:44,427 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2018-11-14 17:08:44,428 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 134 [2018-11-14 17:08:44,428 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:44,428 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 17:08:44,429 INFO L423 AbstractCegarLoop]: === Iteration 18 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:44,429 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:44,429 INFO L82 PathProgramCache]: Analyzing trace with hash 1780267687, now seen corresponding path program 14 times [2018-11-14 17:08:44,429 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:44,429 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:44,430 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:44,430 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:44,430 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:44,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:45,025 INFO L256 TraceCheckUtils]: 0: Hoare triple {9084#true} call ULTIMATE.init(); {9084#true} is VALID [2018-11-14 17:08:45,025 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 17:08:45,026 INFO L273 TraceCheckUtils]: 2: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,026 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9084#true} {9084#true} #69#return; {9084#true} is VALID [2018-11-14 17:08:45,026 INFO L256 TraceCheckUtils]: 4: Hoare triple {9084#true} call #t~ret12 := main(); {9084#true} is VALID [2018-11-14 17:08:45,027 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 17:08:45,027 INFO L273 TraceCheckUtils]: 6: Hoare triple {9086#(= main_~i~1 0)} assume true; {9086#(= main_~i~1 0)} is VALID [2018-11-14 17:08:45,027 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 17:08:45,028 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 17:08:45,028 INFO L273 TraceCheckUtils]: 9: Hoare triple {9087#(<= main_~i~1 1)} assume true; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:45,029 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 17:08:45,029 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 17:08:45,029 INFO L273 TraceCheckUtils]: 12: Hoare triple {9088#(<= main_~i~1 2)} assume true; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:45,030 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 17:08:45,031 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 17:08:45,031 INFO L273 TraceCheckUtils]: 15: Hoare triple {9089#(<= main_~i~1 3)} assume true; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:45,032 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 17:08:45,033 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 17:08:45,033 INFO L273 TraceCheckUtils]: 18: Hoare triple {9090#(<= main_~i~1 4)} assume true; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:45,034 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 17:08:45,034 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 17:08:45,035 INFO L273 TraceCheckUtils]: 21: Hoare triple {9091#(<= main_~i~1 5)} assume true; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:45,035 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 17:08:45,036 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 17:08:45,037 INFO L273 TraceCheckUtils]: 24: Hoare triple {9092#(<= main_~i~1 6)} assume true; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:45,037 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 17:08:45,038 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 17:08:45,039 INFO L273 TraceCheckUtils]: 27: Hoare triple {9093#(<= main_~i~1 7)} assume true; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:45,039 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 17:08:45,040 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 17:08:45,040 INFO L273 TraceCheckUtils]: 30: Hoare triple {9094#(<= main_~i~1 8)} assume true; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:45,041 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 17:08:45,042 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 17:08:45,042 INFO L273 TraceCheckUtils]: 33: Hoare triple {9095#(<= main_~i~1 9)} assume true; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:45,043 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 17:08:45,044 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 17:08:45,044 INFO L273 TraceCheckUtils]: 36: Hoare triple {9096#(<= main_~i~1 10)} assume true; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:45,045 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 17:08:45,045 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 17:08:45,049 INFO L273 TraceCheckUtils]: 39: Hoare triple {9097#(<= main_~i~1 11)} assume true; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:45,049 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 17:08:45,050 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 17:08:45,050 INFO L273 TraceCheckUtils]: 42: Hoare triple {9098#(<= main_~i~1 12)} assume true; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:45,050 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 17:08:45,051 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 17:08:45,051 INFO L273 TraceCheckUtils]: 45: Hoare triple {9099#(<= main_~i~1 13)} assume true; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:45,051 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 17:08:45,052 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 17:08:45,052 INFO L273 TraceCheckUtils]: 48: Hoare triple {9100#(<= main_~i~1 14)} assume true; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:45,053 INFO L273 TraceCheckUtils]: 49: Hoare triple {9100#(<= main_~i~1 14)} assume !(~i~1 < 10000); {9085#false} is VALID [2018-11-14 17:08:45,053 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 17:08:45,053 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 17:08:45,053 INFO L273 TraceCheckUtils]: 52: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,053 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 17:08:45,054 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 17:08:45,054 INFO L273 TraceCheckUtils]: 55: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,054 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 17:08:45,054 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 17:08:45,054 INFO L273 TraceCheckUtils]: 58: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,055 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 17:08:45,055 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 17:08:45,055 INFO L273 TraceCheckUtils]: 61: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,055 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 17:08:45,055 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 17:08:45,055 INFO L273 TraceCheckUtils]: 64: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,055 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 17:08:45,055 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 17:08:45,055 INFO L273 TraceCheckUtils]: 67: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,056 INFO L273 TraceCheckUtils]: 68: Hoare triple {9084#true} assume !(~i~0 < 10000); {9084#true} is VALID [2018-11-14 17:08:45,056 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 17:08:45,056 INFO L273 TraceCheckUtils]: 70: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,056 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {9084#true} {9085#false} #73#return; {9085#false} is VALID [2018-11-14 17:08:45,056 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 17:08:45,056 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 17:08:45,056 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 17:08:45,056 INFO L273 TraceCheckUtils]: 75: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,057 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 17:08:45,057 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 17:08:45,057 INFO L273 TraceCheckUtils]: 78: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,057 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 17:08:45,057 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 17:08:45,057 INFO L273 TraceCheckUtils]: 81: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,057 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 17:08:45,057 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 17:08:45,057 INFO L273 TraceCheckUtils]: 84: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,058 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 17:08:45,058 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 17:08:45,058 INFO L273 TraceCheckUtils]: 87: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,058 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 17:08:45,058 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 17:08:45,058 INFO L273 TraceCheckUtils]: 90: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,058 INFO L273 TraceCheckUtils]: 91: Hoare triple {9084#true} assume !(~i~0 < 10000); {9084#true} is VALID [2018-11-14 17:08:45,058 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 17:08:45,059 INFO L273 TraceCheckUtils]: 93: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,059 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {9084#true} {9085#false} #75#return; {9085#false} is VALID [2018-11-14 17:08:45,059 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 17:08:45,059 INFO L273 TraceCheckUtils]: 96: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,059 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 17:08:45,059 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 17:08:45,060 INFO L273 TraceCheckUtils]: 99: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,060 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 17:08:45,060 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 17:08:45,060 INFO L273 TraceCheckUtils]: 102: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,060 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 17:08:45,061 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 17:08:45,061 INFO L273 TraceCheckUtils]: 105: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,061 INFO L273 TraceCheckUtils]: 106: Hoare triple {9085#false} assume !(~i~2 < 9999); {9085#false} is VALID [2018-11-14 17:08:45,061 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 17:08:45,061 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 17:08:45,061 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 17:08:45,062 INFO L273 TraceCheckUtils]: 110: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,062 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 17:08:45,062 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 17:08:45,062 INFO L273 TraceCheckUtils]: 113: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,062 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 17:08:45,062 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 17:08:45,063 INFO L273 TraceCheckUtils]: 116: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,063 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 17:08:45,063 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 17:08:45,063 INFO L273 TraceCheckUtils]: 119: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,063 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 17:08:45,063 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 17:08:45,064 INFO L273 TraceCheckUtils]: 122: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,064 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 17:08:45,064 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 17:08:45,064 INFO L273 TraceCheckUtils]: 125: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,064 INFO L273 TraceCheckUtils]: 126: Hoare triple {9084#true} assume !(~i~0 < 10000); {9084#true} is VALID [2018-11-14 17:08:45,064 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 17:08:45,065 INFO L273 TraceCheckUtils]: 128: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,065 INFO L268 TraceCheckUtils]: 129: Hoare quadruple {9084#true} {9085#false} #77#return; {9085#false} is VALID [2018-11-14 17:08:45,065 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 17:08:45,065 INFO L273 TraceCheckUtils]: 131: Hoare triple {9085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9085#false} is VALID [2018-11-14 17:08:45,065 INFO L273 TraceCheckUtils]: 132: Hoare triple {9085#false} assume !false; {9085#false} is VALID [2018-11-14 17:08:45,075 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 17:08:45,076 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:45,076 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 17:08:45,092 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:08:45,154 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:08:45,154 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:45,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:45,190 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:45,447 INFO L256 TraceCheckUtils]: 0: Hoare triple {9084#true} call ULTIMATE.init(); {9084#true} is VALID [2018-11-14 17:08:45,447 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 17:08:45,447 INFO L273 TraceCheckUtils]: 2: Hoare triple {9084#true} assume true; {9084#true} is VALID [2018-11-14 17:08:45,447 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9084#true} {9084#true} #69#return; {9084#true} is VALID [2018-11-14 17:08:45,448 INFO L256 TraceCheckUtils]: 4: Hoare triple {9084#true} call #t~ret12 := main(); {9084#true} is VALID [2018-11-14 17:08:45,448 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 17:08:45,449 INFO L273 TraceCheckUtils]: 6: Hoare triple {9119#(<= main_~i~1 0)} assume true; {9119#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:45,449 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 17:08:45,449 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 17:08:45,450 INFO L273 TraceCheckUtils]: 9: Hoare triple {9087#(<= main_~i~1 1)} assume true; {9087#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:45,450 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 17:08:45,450 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 17:08:45,451 INFO L273 TraceCheckUtils]: 12: Hoare triple {9088#(<= main_~i~1 2)} assume true; {9088#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:45,451 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 17:08:45,452 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 17:08:45,452 INFO L273 TraceCheckUtils]: 15: Hoare triple {9089#(<= main_~i~1 3)} assume true; {9089#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:45,458 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 17:08:45,459 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 17:08:45,459 INFO L273 TraceCheckUtils]: 18: Hoare triple {9090#(<= main_~i~1 4)} assume true; {9090#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:45,460 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 17:08:45,460 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 17:08:45,461 INFO L273 TraceCheckUtils]: 21: Hoare triple {9091#(<= main_~i~1 5)} assume true; {9091#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:45,461 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 17:08:45,462 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 17:08:45,462 INFO L273 TraceCheckUtils]: 24: Hoare triple {9092#(<= main_~i~1 6)} assume true; {9092#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:45,463 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 17:08:45,464 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 17:08:45,464 INFO L273 TraceCheckUtils]: 27: Hoare triple {9093#(<= main_~i~1 7)} assume true; {9093#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:45,465 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 17:08:45,465 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 17:08:45,466 INFO L273 TraceCheckUtils]: 30: Hoare triple {9094#(<= main_~i~1 8)} assume true; {9094#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:45,466 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 17:08:45,467 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 17:08:45,468 INFO L273 TraceCheckUtils]: 33: Hoare triple {9095#(<= main_~i~1 9)} assume true; {9095#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:45,468 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 17:08:45,469 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 17:08:45,470 INFO L273 TraceCheckUtils]: 36: Hoare triple {9096#(<= main_~i~1 10)} assume true; {9096#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:45,470 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 17:08:45,471 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 17:08:45,471 INFO L273 TraceCheckUtils]: 39: Hoare triple {9097#(<= main_~i~1 11)} assume true; {9097#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:45,472 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 17:08:45,473 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 17:08:45,473 INFO L273 TraceCheckUtils]: 42: Hoare triple {9098#(<= main_~i~1 12)} assume true; {9098#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:45,474 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 17:08:45,474 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 17:08:45,475 INFO L273 TraceCheckUtils]: 45: Hoare triple {9099#(<= main_~i~1 13)} assume true; {9099#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:45,475 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 17:08:45,476 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 17:08:45,477 INFO L273 TraceCheckUtils]: 48: Hoare triple {9100#(<= main_~i~1 14)} assume true; {9100#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:45,477 INFO L273 TraceCheckUtils]: 49: Hoare triple {9100#(<= main_~i~1 14)} assume !(~i~1 < 10000); {9085#false} is VALID [2018-11-14 17:08:45,478 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 17:08:45,478 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 17:08:45,478 INFO L273 TraceCheckUtils]: 52: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,478 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 17:08:45,478 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 17:08:45,479 INFO L273 TraceCheckUtils]: 55: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,479 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 17:08:45,479 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 17:08:45,479 INFO L273 TraceCheckUtils]: 58: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,479 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 17:08:45,480 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 17:08:45,480 INFO L273 TraceCheckUtils]: 61: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,480 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 17:08:45,480 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 17:08:45,480 INFO L273 TraceCheckUtils]: 64: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,480 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 17:08:45,480 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 17:08:45,481 INFO L273 TraceCheckUtils]: 67: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,481 INFO L273 TraceCheckUtils]: 68: Hoare triple {9085#false} assume !(~i~0 < 10000); {9085#false} is VALID [2018-11-14 17:08:45,481 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 17:08:45,481 INFO L273 TraceCheckUtils]: 70: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,481 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {9085#false} {9085#false} #73#return; {9085#false} is VALID [2018-11-14 17:08:45,481 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 17:08:45,481 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 17:08:45,481 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 17:08:45,482 INFO L273 TraceCheckUtils]: 75: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,482 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 17:08:45,482 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 17:08:45,482 INFO L273 TraceCheckUtils]: 78: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,482 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 17:08:45,482 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 17:08:45,482 INFO L273 TraceCheckUtils]: 81: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,482 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 17:08:45,482 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 17:08:45,483 INFO L273 TraceCheckUtils]: 84: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,483 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 17:08:45,483 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 17:08:45,483 INFO L273 TraceCheckUtils]: 87: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,483 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 17:08:45,483 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 17:08:45,483 INFO L273 TraceCheckUtils]: 90: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,483 INFO L273 TraceCheckUtils]: 91: Hoare triple {9085#false} assume !(~i~0 < 10000); {9085#false} is VALID [2018-11-14 17:08:45,483 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 17:08:45,484 INFO L273 TraceCheckUtils]: 93: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,484 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {9085#false} {9085#false} #75#return; {9085#false} is VALID [2018-11-14 17:08:45,484 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 17:08:45,484 INFO L273 TraceCheckUtils]: 96: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,484 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 17:08:45,484 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 17:08:45,484 INFO L273 TraceCheckUtils]: 99: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,484 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 17:08:45,484 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 17:08:45,485 INFO L273 TraceCheckUtils]: 102: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,485 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 17:08:45,485 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 17:08:45,485 INFO L273 TraceCheckUtils]: 105: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,485 INFO L273 TraceCheckUtils]: 106: Hoare triple {9085#false} assume !(~i~2 < 9999); {9085#false} is VALID [2018-11-14 17:08:45,485 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 17:08:45,485 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 17:08:45,485 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 17:08:45,485 INFO L273 TraceCheckUtils]: 110: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,486 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 17:08:45,486 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 17:08:45,486 INFO L273 TraceCheckUtils]: 113: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,486 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 17:08:45,486 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 17:08:45,486 INFO L273 TraceCheckUtils]: 116: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,486 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 17:08:45,486 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 17:08:45,486 INFO L273 TraceCheckUtils]: 119: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,487 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 17:08:45,487 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 17:08:45,487 INFO L273 TraceCheckUtils]: 122: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,487 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 17:08:45,487 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 17:08:45,487 INFO L273 TraceCheckUtils]: 125: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,487 INFO L273 TraceCheckUtils]: 126: Hoare triple {9085#false} assume !(~i~0 < 10000); {9085#false} is VALID [2018-11-14 17:08:45,487 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 17:08:45,488 INFO L273 TraceCheckUtils]: 128: Hoare triple {9085#false} assume true; {9085#false} is VALID [2018-11-14 17:08:45,488 INFO L268 TraceCheckUtils]: 129: Hoare quadruple {9085#false} {9085#false} #77#return; {9085#false} is VALID [2018-11-14 17:08:45,488 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 17:08:45,488 INFO L273 TraceCheckUtils]: 131: Hoare triple {9085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9085#false} is VALID [2018-11-14 17:08:45,488 INFO L273 TraceCheckUtils]: 132: Hoare triple {9085#false} assume !false; {9085#false} is VALID [2018-11-14 17:08:45,496 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 17:08:45,516 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:45,516 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-14 17:08:45,517 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 133 [2018-11-14 17:08:45,517 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:45,517 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-14 17:08:45,623 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 17:08:45,623 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-14 17:08:45,624 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-14 17:08:45,624 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-14 17:08:45,624 INFO L87 Difference]: Start difference. First operand 92 states and 96 transitions. Second operand 18 states. [2018-11-14 17:08:46,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:46,705 INFO L93 Difference]: Finished difference Result 138 states and 146 transitions. [2018-11-14 17:08:46,705 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-14 17:08:46,705 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 133 [2018-11-14 17:08:46,705 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:46,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 17:08:46,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 102 transitions. [2018-11-14 17:08:46,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-14 17:08:46,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 102 transitions. [2018-11-14 17:08:46,707 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 102 transitions. [2018-11-14 17:08:46,825 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 17:08:46,827 INFO L225 Difference]: With dead ends: 138 [2018-11-14 17:08:46,828 INFO L226 Difference]: Without dead ends: 96 [2018-11-14 17:08:46,829 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-14 17:08:46,829 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2018-11-14 17:08:46,852 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 95. [2018-11-14 17:08:46,852 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:46,852 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand 95 states. [2018-11-14 17:08:46,852 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand 95 states. [2018-11-14 17:08:46,852 INFO L87 Difference]: Start difference. First operand 96 states. Second operand 95 states. [2018-11-14 17:08:46,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:46,854 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2018-11-14 17:08:46,854 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2018-11-14 17:08:46,854 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:46,854 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:46,854 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 96 states. [2018-11-14 17:08:46,854 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 96 states. [2018-11-14 17:08:46,856 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:46,856 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2018-11-14 17:08:46,856 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2018-11-14 17:08:46,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:46,856 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:46,857 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:46,857 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:46,857 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 95 states. [2018-11-14 17:08:46,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 99 transitions. [2018-11-14 17:08:46,859 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 99 transitions. Word has length 133 [2018-11-14 17:08:46,859 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:46,859 INFO L480 AbstractCegarLoop]: Abstraction has 95 states and 99 transitions. [2018-11-14 17:08:46,859 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-14 17:08:46,859 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 99 transitions. [2018-11-14 17:08:46,860 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 137 [2018-11-14 17:08:46,860 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:46,860 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 17:08:46,860 INFO L423 AbstractCegarLoop]: === Iteration 19 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:46,861 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:46,861 INFO L82 PathProgramCache]: Analyzing trace with hash -1766389636, now seen corresponding path program 15 times [2018-11-14 17:08:46,861 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:46,861 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:46,862 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:46,862 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:46,862 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:46,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:47,130 INFO L256 TraceCheckUtils]: 0: Hoare triple {10007#true} call ULTIMATE.init(); {10007#true} is VALID [2018-11-14 17:08:47,131 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 17:08:47,131 INFO L273 TraceCheckUtils]: 2: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,131 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10007#true} {10007#true} #69#return; {10007#true} is VALID [2018-11-14 17:08:47,131 INFO L256 TraceCheckUtils]: 4: Hoare triple {10007#true} call #t~ret12 := main(); {10007#true} is VALID [2018-11-14 17:08:47,132 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 17:08:47,132 INFO L273 TraceCheckUtils]: 6: Hoare triple {10009#(= main_~i~1 0)} assume true; {10009#(= main_~i~1 0)} is VALID [2018-11-14 17:08:47,133 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 17:08:47,134 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 17:08:47,134 INFO L273 TraceCheckUtils]: 9: Hoare triple {10010#(<= main_~i~1 1)} assume true; {10010#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:47,134 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 17:08:47,135 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 17:08:47,135 INFO L273 TraceCheckUtils]: 12: Hoare triple {10011#(<= main_~i~1 2)} assume true; {10011#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:47,135 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 17:08:47,136 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 17:08:47,136 INFO L273 TraceCheckUtils]: 15: Hoare triple {10012#(<= main_~i~1 3)} assume true; {10012#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:47,136 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 17:08:47,137 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 17:08:47,138 INFO L273 TraceCheckUtils]: 18: Hoare triple {10013#(<= main_~i~1 4)} assume true; {10013#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:47,138 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 17:08:47,139 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 17:08:47,139 INFO L273 TraceCheckUtils]: 21: Hoare triple {10014#(<= main_~i~1 5)} assume true; {10014#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:47,140 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 17:08:47,141 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 17:08:47,141 INFO L273 TraceCheckUtils]: 24: Hoare triple {10015#(<= main_~i~1 6)} assume true; {10015#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:47,142 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 17:08:47,142 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 17:08:47,143 INFO L273 TraceCheckUtils]: 27: Hoare triple {10016#(<= main_~i~1 7)} assume true; {10016#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:47,144 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 17:08:47,144 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 17:08:47,145 INFO L273 TraceCheckUtils]: 30: Hoare triple {10017#(<= main_~i~1 8)} assume true; {10017#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:47,145 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 17:08:47,146 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 17:08:47,147 INFO L273 TraceCheckUtils]: 33: Hoare triple {10018#(<= main_~i~1 9)} assume true; {10018#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:47,147 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 17:08:47,148 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 17:08:47,148 INFO L273 TraceCheckUtils]: 36: Hoare triple {10019#(<= main_~i~1 10)} assume true; {10019#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:47,149 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 17:08:47,150 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 17:08:47,150 INFO L273 TraceCheckUtils]: 39: Hoare triple {10020#(<= main_~i~1 11)} assume true; {10020#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:47,151 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 17:08:47,151 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 17:08:47,152 INFO L273 TraceCheckUtils]: 42: Hoare triple {10021#(<= main_~i~1 12)} assume true; {10021#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:47,152 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 17:08:47,153 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 17:08:47,154 INFO L273 TraceCheckUtils]: 45: Hoare triple {10022#(<= main_~i~1 13)} assume true; {10022#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:47,154 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 17:08:47,155 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 17:08:47,156 INFO L273 TraceCheckUtils]: 48: Hoare triple {10023#(<= main_~i~1 14)} assume true; {10023#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:47,156 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 17:08:47,157 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 17:08:47,157 INFO L273 TraceCheckUtils]: 51: Hoare triple {10024#(<= main_~i~1 15)} assume true; {10024#(<= main_~i~1 15)} is VALID [2018-11-14 17:08:47,158 INFO L273 TraceCheckUtils]: 52: Hoare triple {10024#(<= main_~i~1 15)} assume !(~i~1 < 10000); {10008#false} is VALID [2018-11-14 17:08:47,158 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 17:08:47,158 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 17:08:47,159 INFO L273 TraceCheckUtils]: 55: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,159 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 17:08:47,159 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 17:08:47,159 INFO L273 TraceCheckUtils]: 58: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,159 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 17:08:47,160 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 17:08:47,160 INFO L273 TraceCheckUtils]: 61: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,160 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 17:08:47,160 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 17:08:47,160 INFO L273 TraceCheckUtils]: 64: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,161 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 17:08:47,161 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 17:08:47,161 INFO L273 TraceCheckUtils]: 67: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,161 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 17:08:47,161 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 17:08:47,161 INFO L273 TraceCheckUtils]: 70: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,161 INFO L273 TraceCheckUtils]: 71: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 17:08:47,161 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 17:08:47,161 INFO L273 TraceCheckUtils]: 73: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,162 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10007#true} {10008#false} #73#return; {10008#false} is VALID [2018-11-14 17:08:47,162 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 17:08:47,162 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 17:08:47,162 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 17:08:47,162 INFO L273 TraceCheckUtils]: 78: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,162 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 17:08:47,162 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 17:08:47,162 INFO L273 TraceCheckUtils]: 81: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,162 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 17:08:47,163 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 17:08:47,163 INFO L273 TraceCheckUtils]: 84: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,163 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 17:08:47,163 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 17:08:47,163 INFO L273 TraceCheckUtils]: 87: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,163 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 17:08:47,163 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 17:08:47,163 INFO L273 TraceCheckUtils]: 90: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,163 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 17:08:47,164 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 17:08:47,164 INFO L273 TraceCheckUtils]: 93: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,164 INFO L273 TraceCheckUtils]: 94: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 17:08:47,164 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 17:08:47,164 INFO L273 TraceCheckUtils]: 96: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,164 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {10007#true} {10008#false} #75#return; {10008#false} is VALID [2018-11-14 17:08:47,164 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 17:08:47,164 INFO L273 TraceCheckUtils]: 99: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,164 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 17:08:47,165 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 17:08:47,165 INFO L273 TraceCheckUtils]: 102: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,165 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 17:08:47,165 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 17:08:47,165 INFO L273 TraceCheckUtils]: 105: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,165 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 17:08:47,165 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 17:08:47,165 INFO L273 TraceCheckUtils]: 108: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,166 INFO L273 TraceCheckUtils]: 109: Hoare triple {10008#false} assume !(~i~2 < 9999); {10008#false} is VALID [2018-11-14 17:08:47,166 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 17:08:47,166 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 17:08:47,166 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 17:08:47,166 INFO L273 TraceCheckUtils]: 113: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,166 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 17:08:47,166 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 17:08:47,166 INFO L273 TraceCheckUtils]: 116: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,166 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 17:08:47,167 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 17:08:47,167 INFO L273 TraceCheckUtils]: 119: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,167 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 17:08:47,167 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 17:08:47,167 INFO L273 TraceCheckUtils]: 122: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,167 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 17:08:47,167 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 17:08:47,167 INFO L273 TraceCheckUtils]: 125: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,167 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 17:08:47,168 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 17:08:47,168 INFO L273 TraceCheckUtils]: 128: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,168 INFO L273 TraceCheckUtils]: 129: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 17:08:47,168 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 17:08:47,168 INFO L273 TraceCheckUtils]: 131: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,168 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {10007#true} {10008#false} #77#return; {10008#false} is VALID [2018-11-14 17:08:47,168 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 17:08:47,168 INFO L273 TraceCheckUtils]: 134: Hoare triple {10008#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10008#false} is VALID [2018-11-14 17:08:47,168 INFO L273 TraceCheckUtils]: 135: Hoare triple {10008#false} assume !false; {10008#false} is VALID [2018-11-14 17:08:47,176 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 17:08:47,177 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:47,177 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 17:08:47,186 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:08:47,230 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-14 17:08:47,230 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:47,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:47,256 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:47,420 INFO L256 TraceCheckUtils]: 0: Hoare triple {10007#true} call ULTIMATE.init(); {10007#true} is VALID [2018-11-14 17:08:47,420 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 17:08:47,420 INFO L273 TraceCheckUtils]: 2: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,420 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10007#true} {10007#true} #69#return; {10007#true} is VALID [2018-11-14 17:08:47,421 INFO L256 TraceCheckUtils]: 4: Hoare triple {10007#true} call #t~ret12 := main(); {10007#true} is VALID [2018-11-14 17:08:47,421 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 17:08:47,421 INFO L273 TraceCheckUtils]: 6: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,421 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 17:08:47,421 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 17:08:47,422 INFO L273 TraceCheckUtils]: 9: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,422 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 17:08:47,422 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 17:08:47,422 INFO L273 TraceCheckUtils]: 12: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,422 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 17:08:47,423 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 17:08:47,423 INFO L273 TraceCheckUtils]: 15: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,423 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 17:08:47,423 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 17:08:47,423 INFO L273 TraceCheckUtils]: 18: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,423 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 17:08:47,423 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 17:08:47,423 INFO L273 TraceCheckUtils]: 21: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,424 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 17:08:47,424 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 17:08:47,424 INFO L273 TraceCheckUtils]: 24: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,424 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 17:08:47,424 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 17:08:47,424 INFO L273 TraceCheckUtils]: 27: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,424 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 17:08:47,424 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 17:08:47,424 INFO L273 TraceCheckUtils]: 30: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,425 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 17:08:47,425 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 17:08:47,425 INFO L273 TraceCheckUtils]: 33: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,425 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 17:08:47,425 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 17:08:47,425 INFO L273 TraceCheckUtils]: 36: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,425 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 17:08:47,425 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 17:08:47,425 INFO L273 TraceCheckUtils]: 39: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,426 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 17:08:47,426 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 17:08:47,426 INFO L273 TraceCheckUtils]: 42: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,426 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 17:08:47,426 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 17:08:47,426 INFO L273 TraceCheckUtils]: 45: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,426 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 17:08:47,426 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 17:08:47,426 INFO L273 TraceCheckUtils]: 48: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,427 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 17:08:47,427 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 17:08:47,427 INFO L273 TraceCheckUtils]: 51: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,427 INFO L273 TraceCheckUtils]: 52: Hoare triple {10007#true} assume !(~i~1 < 10000); {10007#true} is VALID [2018-11-14 17:08:47,427 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 17:08:47,427 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 17:08:47,427 INFO L273 TraceCheckUtils]: 55: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,427 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 17:08:47,428 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 17:08:47,428 INFO L273 TraceCheckUtils]: 58: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,428 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 17:08:47,428 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 17:08:47,428 INFO L273 TraceCheckUtils]: 61: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,428 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 17:08:47,428 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 17:08:47,428 INFO L273 TraceCheckUtils]: 64: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,428 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 17:08:47,429 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 17:08:47,429 INFO L273 TraceCheckUtils]: 67: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,429 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 17:08:47,429 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 17:08:47,429 INFO L273 TraceCheckUtils]: 70: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,429 INFO L273 TraceCheckUtils]: 71: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 17:08:47,429 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 17:08:47,429 INFO L273 TraceCheckUtils]: 73: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,429 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10007#true} {10007#true} #73#return; {10007#true} is VALID [2018-11-14 17:08:47,430 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 17:08:47,430 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 17:08:47,430 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 17:08:47,430 INFO L273 TraceCheckUtils]: 78: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,430 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 17:08:47,430 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 17:08:47,430 INFO L273 TraceCheckUtils]: 81: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,430 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 17:08:47,430 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 17:08:47,431 INFO L273 TraceCheckUtils]: 84: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,431 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 17:08:47,431 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 17:08:47,431 INFO L273 TraceCheckUtils]: 87: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,431 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 17:08:47,431 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 17:08:47,431 INFO L273 TraceCheckUtils]: 90: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,431 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 17:08:47,431 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 17:08:47,432 INFO L273 TraceCheckUtils]: 93: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,432 INFO L273 TraceCheckUtils]: 94: Hoare triple {10007#true} assume !(~i~0 < 10000); {10007#true} is VALID [2018-11-14 17:08:47,432 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 17:08:47,432 INFO L273 TraceCheckUtils]: 96: Hoare triple {10007#true} assume true; {10007#true} is VALID [2018-11-14 17:08:47,432 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {10007#true} {10007#true} #75#return; {10007#true} is VALID [2018-11-14 17:08:47,433 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 17:08:47,433 INFO L273 TraceCheckUtils]: 99: Hoare triple {10322#(<= main_~i~2 0)} assume true; {10322#(<= main_~i~2 0)} is VALID [2018-11-14 17:08:47,433 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 17:08:47,434 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 17:08:47,434 INFO L273 TraceCheckUtils]: 102: Hoare triple {10332#(<= main_~i~2 1)} assume true; {10332#(<= main_~i~2 1)} is VALID [2018-11-14 17:08:47,434 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 17:08:47,435 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 17:08:47,435 INFO L273 TraceCheckUtils]: 105: Hoare triple {10342#(<= main_~i~2 2)} assume true; {10342#(<= main_~i~2 2)} is VALID [2018-11-14 17:08:47,436 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 17:08:47,436 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 17:08:47,436 INFO L273 TraceCheckUtils]: 108: Hoare triple {10352#(<= main_~i~2 3)} assume true; {10352#(<= main_~i~2 3)} is VALID [2018-11-14 17:08:47,437 INFO L273 TraceCheckUtils]: 109: Hoare triple {10352#(<= main_~i~2 3)} assume !(~i~2 < 9999); {10008#false} is VALID [2018-11-14 17:08:47,437 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 17:08:47,437 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 17:08:47,437 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 17:08:47,437 INFO L273 TraceCheckUtils]: 113: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,438 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 17:08:47,438 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 17:08:47,438 INFO L273 TraceCheckUtils]: 116: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,438 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 17:08:47,438 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 17:08:47,439 INFO L273 TraceCheckUtils]: 119: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,439 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 17:08:47,439 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 17:08:47,439 INFO L273 TraceCheckUtils]: 122: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,439 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 17:08:47,439 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 17:08:47,439 INFO L273 TraceCheckUtils]: 125: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,439 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 17:08:47,440 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 17:08:47,440 INFO L273 TraceCheckUtils]: 128: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,440 INFO L273 TraceCheckUtils]: 129: Hoare triple {10008#false} assume !(~i~0 < 10000); {10008#false} is VALID [2018-11-14 17:08:47,440 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 17:08:47,440 INFO L273 TraceCheckUtils]: 131: Hoare triple {10008#false} assume true; {10008#false} is VALID [2018-11-14 17:08:47,440 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {10008#false} {10008#false} #77#return; {10008#false} is VALID [2018-11-14 17:08:47,440 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 17:08:47,440 INFO L273 TraceCheckUtils]: 134: Hoare triple {10008#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10008#false} is VALID [2018-11-14 17:08:47,440 INFO L273 TraceCheckUtils]: 135: Hoare triple {10008#false} assume !false; {10008#false} is VALID [2018-11-14 17:08:47,450 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 17:08:47,471 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:47,471 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 6] total 22 [2018-11-14 17:08:47,471 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2018-11-14 17:08:47,472 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:47,472 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-14 17:08:47,579 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 17:08:47,579 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-14 17:08:47,579 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-14 17:08:47,580 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=295, Unknown=0, NotChecked=0, Total=462 [2018-11-14 17:08:47,580 INFO L87 Difference]: Start difference. First operand 95 states and 99 transitions. Second operand 22 states. [2018-11-14 17:08:48,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:48,037 INFO L93 Difference]: Finished difference Result 145 states and 154 transitions. [2018-11-14 17:08:48,037 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-14 17:08:48,038 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2018-11-14 17:08:48,038 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:48,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-14 17:08:48,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 118 transitions. [2018-11-14 17:08:48,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-14 17:08:48,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 118 transitions. [2018-11-14 17:08:48,041 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 118 transitions. [2018-11-14 17:08:48,175 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 17:08:48,177 INFO L225 Difference]: With dead ends: 145 [2018-11-14 17:08:48,177 INFO L226 Difference]: Without dead ends: 103 [2018-11-14 17:08:48,178 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=167, Invalid=295, Unknown=0, NotChecked=0, Total=462 [2018-11-14 17:08:48,178 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2018-11-14 17:08:48,215 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 101. [2018-11-14 17:08:48,215 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:48,215 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand 101 states. [2018-11-14 17:08:48,216 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand 101 states. [2018-11-14 17:08:48,216 INFO L87 Difference]: Start difference. First operand 103 states. Second operand 101 states. [2018-11-14 17:08:48,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:48,218 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2018-11-14 17:08:48,218 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2018-11-14 17:08:48,219 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:48,219 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:48,219 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 103 states. [2018-11-14 17:08:48,219 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 103 states. [2018-11-14 17:08:48,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:48,221 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2018-11-14 17:08:48,221 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2018-11-14 17:08:48,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:48,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:48,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:48,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:48,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-14 17:08:48,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 105 transitions. [2018-11-14 17:08:48,224 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 105 transitions. Word has length 136 [2018-11-14 17:08:48,225 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:48,225 INFO L480 AbstractCegarLoop]: Abstraction has 101 states and 105 transitions. [2018-11-14 17:08:48,225 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-14 17:08:48,225 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 105 transitions. [2018-11-14 17:08:48,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 143 [2018-11-14 17:08:48,226 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:48,226 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 17:08:48,226 INFO L423 AbstractCegarLoop]: === Iteration 20 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:48,227 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:48,227 INFO L82 PathProgramCache]: Analyzing trace with hash -875378252, now seen corresponding path program 16 times [2018-11-14 17:08:48,227 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:48,227 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:48,228 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:48,228 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:48,228 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:48,247 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:48,606 INFO L256 TraceCheckUtils]: 0: Hoare triple {10974#true} call ULTIMATE.init(); {10974#true} is VALID [2018-11-14 17:08:48,607 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 17:08:48,607 INFO L273 TraceCheckUtils]: 2: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,607 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10974#true} {10974#true} #69#return; {10974#true} is VALID [2018-11-14 17:08:48,607 INFO L256 TraceCheckUtils]: 4: Hoare triple {10974#true} call #t~ret12 := main(); {10974#true} is VALID [2018-11-14 17:08:48,607 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 17:08:48,608 INFO L273 TraceCheckUtils]: 6: Hoare triple {10976#(= main_~i~1 0)} assume true; {10976#(= main_~i~1 0)} is VALID [2018-11-14 17:08:48,608 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 17:08:48,609 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 17:08:48,610 INFO L273 TraceCheckUtils]: 9: Hoare triple {10977#(<= main_~i~1 1)} assume true; {10977#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:48,610 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 17:08:48,611 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 17:08:48,612 INFO L273 TraceCheckUtils]: 12: Hoare triple {10978#(<= main_~i~1 2)} assume true; {10978#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:48,612 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 17:08:48,613 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 17:08:48,613 INFO L273 TraceCheckUtils]: 15: Hoare triple {10979#(<= main_~i~1 3)} assume true; {10979#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:48,614 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 17:08:48,615 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 17:08:48,615 INFO L273 TraceCheckUtils]: 18: Hoare triple {10980#(<= main_~i~1 4)} assume true; {10980#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:48,616 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 17:08:48,616 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 17:08:48,617 INFO L273 TraceCheckUtils]: 21: Hoare triple {10981#(<= main_~i~1 5)} assume true; {10981#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:48,618 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 17:08:48,618 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 17:08:48,619 INFO L273 TraceCheckUtils]: 24: Hoare triple {10982#(<= main_~i~1 6)} assume true; {10982#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:48,619 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 17:08:48,620 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 17:08:48,621 INFO L273 TraceCheckUtils]: 27: Hoare triple {10983#(<= main_~i~1 7)} assume true; {10983#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:48,621 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 17:08:48,622 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 17:08:48,622 INFO L273 TraceCheckUtils]: 30: Hoare triple {10984#(<= main_~i~1 8)} assume true; {10984#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:48,623 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 17:08:48,624 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 17:08:48,624 INFO L273 TraceCheckUtils]: 33: Hoare triple {10985#(<= main_~i~1 9)} assume true; {10985#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:48,625 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 17:08:48,625 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 17:08:48,626 INFO L273 TraceCheckUtils]: 36: Hoare triple {10986#(<= main_~i~1 10)} assume true; {10986#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:48,627 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 17:08:48,627 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 17:08:48,628 INFO L273 TraceCheckUtils]: 39: Hoare triple {10987#(<= main_~i~1 11)} assume true; {10987#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:48,628 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 17:08:48,629 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 17:08:48,630 INFO L273 TraceCheckUtils]: 42: Hoare triple {10988#(<= main_~i~1 12)} assume true; {10988#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:48,630 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 17:08:48,631 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 17:08:48,631 INFO L273 TraceCheckUtils]: 45: Hoare triple {10989#(<= main_~i~1 13)} assume true; {10989#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:48,632 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 17:08:48,633 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 17:08:48,633 INFO L273 TraceCheckUtils]: 48: Hoare triple {10990#(<= main_~i~1 14)} assume true; {10990#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:48,634 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 17:08:48,634 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 17:08:48,635 INFO L273 TraceCheckUtils]: 51: Hoare triple {10991#(<= main_~i~1 15)} assume true; {10991#(<= main_~i~1 15)} is VALID [2018-11-14 17:08:48,635 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 17:08:48,636 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 17:08:48,637 INFO L273 TraceCheckUtils]: 54: Hoare triple {10992#(<= main_~i~1 16)} assume true; {10992#(<= main_~i~1 16)} is VALID [2018-11-14 17:08:48,637 INFO L273 TraceCheckUtils]: 55: Hoare triple {10992#(<= main_~i~1 16)} assume !(~i~1 < 10000); {10975#false} is VALID [2018-11-14 17:08:48,638 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 17:08:48,638 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 17:08:48,638 INFO L273 TraceCheckUtils]: 58: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,638 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 17:08:48,638 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 17:08:48,639 INFO L273 TraceCheckUtils]: 61: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,639 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 17:08:48,639 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 17:08:48,639 INFO L273 TraceCheckUtils]: 64: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,639 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 17:08:48,640 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 17:08:48,640 INFO L273 TraceCheckUtils]: 67: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,640 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 17:08:48,640 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 17:08:48,640 INFO L273 TraceCheckUtils]: 70: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,640 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 17:08:48,641 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 17:08:48,641 INFO L273 TraceCheckUtils]: 73: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,641 INFO L273 TraceCheckUtils]: 74: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 17:08:48,641 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 17:08:48,641 INFO L273 TraceCheckUtils]: 76: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,641 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {10974#true} {10975#false} #73#return; {10975#false} is VALID [2018-11-14 17:08:48,641 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 17:08:48,641 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 17:08:48,641 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 17:08:48,642 INFO L273 TraceCheckUtils]: 81: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,642 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 17:08:48,642 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 17:08:48,642 INFO L273 TraceCheckUtils]: 84: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,642 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 17:08:48,642 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 17:08:48,642 INFO L273 TraceCheckUtils]: 87: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,642 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 17:08:48,643 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 17:08:48,643 INFO L273 TraceCheckUtils]: 90: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,643 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 17:08:48,643 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 17:08:48,643 INFO L273 TraceCheckUtils]: 93: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,643 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 17:08:48,643 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 17:08:48,643 INFO L273 TraceCheckUtils]: 96: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,643 INFO L273 TraceCheckUtils]: 97: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 17:08:48,644 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 17:08:48,644 INFO L273 TraceCheckUtils]: 99: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,644 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {10974#true} {10975#false} #75#return; {10975#false} is VALID [2018-11-14 17:08:48,644 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 17:08:48,644 INFO L273 TraceCheckUtils]: 102: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 17:08:48,644 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 17:08:48,644 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 17:08:48,644 INFO L273 TraceCheckUtils]: 105: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 17:08:48,644 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 17:08:48,645 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 17:08:48,645 INFO L273 TraceCheckUtils]: 108: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 17:08:48,645 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 17:08:48,645 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 17:08:48,645 INFO L273 TraceCheckUtils]: 111: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 17:08:48,645 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 17:08:48,645 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 17:08:48,645 INFO L273 TraceCheckUtils]: 114: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 17:08:48,645 INFO L273 TraceCheckUtils]: 115: Hoare triple {10975#false} assume !(~i~2 < 9999); {10975#false} is VALID [2018-11-14 17:08:48,646 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 17:08:48,646 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 17:08:48,646 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 17:08:48,646 INFO L273 TraceCheckUtils]: 119: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,646 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 17:08:48,646 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 17:08:48,646 INFO L273 TraceCheckUtils]: 122: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,646 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 17:08:48,646 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 17:08:48,647 INFO L273 TraceCheckUtils]: 125: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,647 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 17:08:48,647 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 17:08:48,647 INFO L273 TraceCheckUtils]: 128: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,647 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 17:08:48,647 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 17:08:48,647 INFO L273 TraceCheckUtils]: 131: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,647 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 17:08:48,647 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 17:08:48,648 INFO L273 TraceCheckUtils]: 134: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,648 INFO L273 TraceCheckUtils]: 135: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 17:08:48,648 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 17:08:48,648 INFO L273 TraceCheckUtils]: 137: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:48,648 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {10974#true} {10975#false} #77#return; {10975#false} is VALID [2018-11-14 17:08:48,648 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 17:08:48,648 INFO L273 TraceCheckUtils]: 140: Hoare triple {10975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10975#false} is VALID [2018-11-14 17:08:48,648 INFO L273 TraceCheckUtils]: 141: Hoare triple {10975#false} assume !false; {10975#false} is VALID [2018-11-14 17:08:48,657 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 17:08:48,657 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:48,657 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 17:08:48,666 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 17:08:48,719 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 17:08:48,720 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:48,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:48,758 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:49,042 INFO L256 TraceCheckUtils]: 0: Hoare triple {10974#true} call ULTIMATE.init(); {10974#true} is VALID [2018-11-14 17:08:49,042 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 17:08:49,042 INFO L273 TraceCheckUtils]: 2: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,043 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10974#true} {10974#true} #69#return; {10974#true} is VALID [2018-11-14 17:08:49,043 INFO L256 TraceCheckUtils]: 4: Hoare triple {10974#true} call #t~ret12 := main(); {10974#true} is VALID [2018-11-14 17:08:49,043 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 17:08:49,043 INFO L273 TraceCheckUtils]: 6: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,043 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 17:08:49,043 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 17:08:49,044 INFO L273 TraceCheckUtils]: 9: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,044 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 17:08:49,044 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 17:08:49,044 INFO L273 TraceCheckUtils]: 12: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,044 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 17:08:49,045 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 17:08:49,045 INFO L273 TraceCheckUtils]: 15: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,045 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 17:08:49,045 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 17:08:49,045 INFO L273 TraceCheckUtils]: 18: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,045 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 17:08:49,045 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 17:08:49,046 INFO L273 TraceCheckUtils]: 21: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,046 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 17:08:49,046 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 17:08:49,046 INFO L273 TraceCheckUtils]: 24: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,046 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 17:08:49,046 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 17:08:49,046 INFO L273 TraceCheckUtils]: 27: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,046 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 17:08:49,046 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 17:08:49,047 INFO L273 TraceCheckUtils]: 30: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,047 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 17:08:49,047 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 17:08:49,047 INFO L273 TraceCheckUtils]: 33: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,047 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 17:08:49,047 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 17:08:49,047 INFO L273 TraceCheckUtils]: 36: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,047 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 17:08:49,047 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 17:08:49,048 INFO L273 TraceCheckUtils]: 39: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,048 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 17:08:49,048 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 17:08:49,048 INFO L273 TraceCheckUtils]: 42: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,048 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 17:08:49,048 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 17:08:49,048 INFO L273 TraceCheckUtils]: 45: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,048 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 17:08:49,048 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 17:08:49,049 INFO L273 TraceCheckUtils]: 48: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,049 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 17:08:49,049 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 17:08:49,049 INFO L273 TraceCheckUtils]: 51: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,049 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 17:08:49,049 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 17:08:49,049 INFO L273 TraceCheckUtils]: 54: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,049 INFO L273 TraceCheckUtils]: 55: Hoare triple {10974#true} assume !(~i~1 < 10000); {10974#true} is VALID [2018-11-14 17:08:49,049 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 17:08:49,050 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 17:08:49,050 INFO L273 TraceCheckUtils]: 58: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,050 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 17:08:49,050 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 17:08:49,050 INFO L273 TraceCheckUtils]: 61: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,050 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 17:08:49,050 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 17:08:49,050 INFO L273 TraceCheckUtils]: 64: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,050 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 17:08:49,051 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 17:08:49,051 INFO L273 TraceCheckUtils]: 67: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,051 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 17:08:49,051 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 17:08:49,051 INFO L273 TraceCheckUtils]: 70: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,051 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 17:08:49,051 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 17:08:49,051 INFO L273 TraceCheckUtils]: 73: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,051 INFO L273 TraceCheckUtils]: 74: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 17:08:49,052 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 17:08:49,052 INFO L273 TraceCheckUtils]: 76: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,052 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {10974#true} {10974#true} #73#return; {10974#true} is VALID [2018-11-14 17:08:49,052 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 17:08:49,052 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 17:08:49,052 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 17:08:49,052 INFO L273 TraceCheckUtils]: 81: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,052 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 17:08:49,053 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 17:08:49,053 INFO L273 TraceCheckUtils]: 84: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,053 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 17:08:49,053 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 17:08:49,053 INFO L273 TraceCheckUtils]: 87: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,053 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 17:08:49,053 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 17:08:49,053 INFO L273 TraceCheckUtils]: 90: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,053 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 17:08:49,054 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 17:08:49,054 INFO L273 TraceCheckUtils]: 93: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,054 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 17:08:49,054 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 17:08:49,054 INFO L273 TraceCheckUtils]: 96: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,054 INFO L273 TraceCheckUtils]: 97: Hoare triple {10974#true} assume !(~i~0 < 10000); {10974#true} is VALID [2018-11-14 17:08:49,055 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 17:08:49,055 INFO L273 TraceCheckUtils]: 99: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,055 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {10974#true} {10974#true} #75#return; {10974#true} is VALID [2018-11-14 17:08:49,055 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 17:08:49,055 INFO L273 TraceCheckUtils]: 102: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,055 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 17:08:49,056 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 17:08:49,056 INFO L273 TraceCheckUtils]: 105: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,056 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 17:08:49,056 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 17:08:49,056 INFO L273 TraceCheckUtils]: 108: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,056 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 17:08:49,057 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 17:08:49,057 INFO L273 TraceCheckUtils]: 111: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,057 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 17:08:49,057 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 17:08:49,057 INFO L273 TraceCheckUtils]: 114: Hoare triple {10974#true} assume true; {10974#true} is VALID [2018-11-14 17:08:49,057 INFO L273 TraceCheckUtils]: 115: Hoare triple {10974#true} assume !(~i~2 < 9999); {10974#true} is VALID [2018-11-14 17:08:49,058 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 17:08:49,058 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 17:08:49,077 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 17:08:49,092 INFO L273 TraceCheckUtils]: 119: Hoare triple {11350#(<= mapavg_~i~0 0)} assume true; {11350#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:49,101 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 17:08:49,115 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 17:08:49,124 INFO L273 TraceCheckUtils]: 122: Hoare triple {11360#(<= mapavg_~i~0 1)} assume true; {11360#(<= mapavg_~i~0 1)} is VALID [2018-11-14 17:08:49,138 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 17:08:49,147 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 17:08:49,162 INFO L273 TraceCheckUtils]: 125: Hoare triple {11370#(<= mapavg_~i~0 2)} assume true; {11370#(<= mapavg_~i~0 2)} is VALID [2018-11-14 17:08:49,171 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 17:08:49,188 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 17:08:49,197 INFO L273 TraceCheckUtils]: 128: Hoare triple {11380#(<= mapavg_~i~0 3)} assume true; {11380#(<= mapavg_~i~0 3)} is VALID [2018-11-14 17:08:49,209 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 17:08:49,222 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 17:08:49,236 INFO L273 TraceCheckUtils]: 131: Hoare triple {11390#(<= mapavg_~i~0 4)} assume true; {11390#(<= mapavg_~i~0 4)} is VALID [2018-11-14 17:08:49,250 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 17:08:49,259 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 17:08:49,271 INFO L273 TraceCheckUtils]: 134: Hoare triple {11400#(<= mapavg_~i~0 5)} assume true; {11400#(<= mapavg_~i~0 5)} is VALID [2018-11-14 17:08:49,284 INFO L273 TraceCheckUtils]: 135: Hoare triple {11400#(<= mapavg_~i~0 5)} assume !(~i~0 < 10000); {10975#false} is VALID [2018-11-14 17:08:49,284 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 17:08:49,285 INFO L273 TraceCheckUtils]: 137: Hoare triple {10975#false} assume true; {10975#false} is VALID [2018-11-14 17:08:49,285 INFO L268 TraceCheckUtils]: 138: Hoare quadruple {10975#false} {10974#true} #77#return; {10975#false} is VALID [2018-11-14 17:08:49,285 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 17:08:49,285 INFO L273 TraceCheckUtils]: 140: Hoare triple {10975#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10975#false} is VALID [2018-11-14 17:08:49,285 INFO L273 TraceCheckUtils]: 141: Hoare triple {10975#false} assume !false; {10975#false} is VALID [2018-11-14 17:08:49,297 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 17:08:49,331 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:49,331 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 8] total 25 [2018-11-14 17:08:49,332 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 142 [2018-11-14 17:08:49,332 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:49,332 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states. [2018-11-14 17:08:49,470 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 17:08:49,470 INFO L459 AbstractCegarLoop]: Interpolant automaton has 25 states [2018-11-14 17:08:49,471 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2018-11-14 17:08:49,471 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=198, Invalid=402, Unknown=0, NotChecked=0, Total=600 [2018-11-14 17:08:49,471 INFO L87 Difference]: Start difference. First operand 101 states and 105 transitions. Second operand 25 states. [2018-11-14 17:08:50,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:50,718 INFO L93 Difference]: Finished difference Result 154 states and 166 transitions. [2018-11-14 17:08:50,719 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-14 17:08:50,719 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 142 [2018-11-14 17:08:50,719 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:50,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-14 17:08:50,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 130 transitions. [2018-11-14 17:08:50,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-14 17:08:50,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 130 transitions. [2018-11-14 17:08:50,722 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 130 transitions. [2018-11-14 17:08:50,903 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 17:08:50,906 INFO L225 Difference]: With dead ends: 154 [2018-11-14 17:08:50,906 INFO L226 Difference]: Without dead ends: 109 [2018-11-14 17:08:50,906 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 137 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 96 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=198, Invalid=402, Unknown=0, NotChecked=0, Total=600 [2018-11-14 17:08:50,907 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109 states. [2018-11-14 17:08:50,933 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109 to 107. [2018-11-14 17:08:50,933 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:50,933 INFO L82 GeneralOperation]: Start isEquivalent. First operand 109 states. Second operand 107 states. [2018-11-14 17:08:50,933 INFO L74 IsIncluded]: Start isIncluded. First operand 109 states. Second operand 107 states. [2018-11-14 17:08:50,934 INFO L87 Difference]: Start difference. First operand 109 states. Second operand 107 states. [2018-11-14 17:08:50,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:50,936 INFO L93 Difference]: Finished difference Result 109 states and 113 transitions. [2018-11-14 17:08:50,936 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 113 transitions. [2018-11-14 17:08:50,937 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:50,937 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:50,937 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand 109 states. [2018-11-14 17:08:50,937 INFO L87 Difference]: Start difference. First operand 107 states. Second operand 109 states. [2018-11-14 17:08:50,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:50,939 INFO L93 Difference]: Finished difference Result 109 states and 113 transitions. [2018-11-14 17:08:50,939 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 113 transitions. [2018-11-14 17:08:50,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:50,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:50,940 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:50,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:50,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 107 states. [2018-11-14 17:08:50,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 111 transitions. [2018-11-14 17:08:50,943 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 111 transitions. Word has length 142 [2018-11-14 17:08:50,943 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:50,943 INFO L480 AbstractCegarLoop]: Abstraction has 107 states and 111 transitions. [2018-11-14 17:08:50,943 INFO L481 AbstractCegarLoop]: Interpolant automaton has 25 states. [2018-11-14 17:08:50,943 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 111 transitions. [2018-11-14 17:08:50,944 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2018-11-14 17:08:50,944 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:50,944 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 17:08:50,945 INFO L423 AbstractCegarLoop]: === Iteration 21 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:50,945 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:50,945 INFO L82 PathProgramCache]: Analyzing trace with hash 2015263464, now seen corresponding path program 17 times [2018-11-14 17:08:50,945 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:50,945 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:50,946 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:50,946 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:50,946 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:50,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:52,513 INFO L256 TraceCheckUtils]: 0: Hoare triple {11994#true} call ULTIMATE.init(); {11994#true} is VALID [2018-11-14 17:08:52,513 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 17:08:52,513 INFO L273 TraceCheckUtils]: 2: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,514 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11994#true} {11994#true} #69#return; {11994#true} is VALID [2018-11-14 17:08:52,514 INFO L256 TraceCheckUtils]: 4: Hoare triple {11994#true} call #t~ret12 := main(); {11994#true} is VALID [2018-11-14 17:08:52,516 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 17:08:52,517 INFO L273 TraceCheckUtils]: 6: Hoare triple {11996#(= main_~i~1 0)} assume true; {11996#(= main_~i~1 0)} is VALID [2018-11-14 17:08:52,517 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 17:08:52,517 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 17:08:52,518 INFO L273 TraceCheckUtils]: 9: Hoare triple {11997#(<= main_~i~1 1)} assume true; {11997#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:52,518 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 17:08:52,518 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 17:08:52,519 INFO L273 TraceCheckUtils]: 12: Hoare triple {11998#(<= main_~i~1 2)} assume true; {11998#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:52,519 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 17:08:52,519 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 17:08:52,520 INFO L273 TraceCheckUtils]: 15: Hoare triple {11999#(<= main_~i~1 3)} assume true; {11999#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:52,520 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 17:08:52,521 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 17:08:52,522 INFO L273 TraceCheckUtils]: 18: Hoare triple {12000#(<= main_~i~1 4)} assume true; {12000#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:52,522 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 17:08:52,523 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 17:08:52,523 INFO L273 TraceCheckUtils]: 21: Hoare triple {12001#(<= main_~i~1 5)} assume true; {12001#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:52,524 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 17:08:52,525 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 17:08:52,525 INFO L273 TraceCheckUtils]: 24: Hoare triple {12002#(<= main_~i~1 6)} assume true; {12002#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:52,526 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 17:08:52,526 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 17:08:52,527 INFO L273 TraceCheckUtils]: 27: Hoare triple {12003#(<= main_~i~1 7)} assume true; {12003#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:52,527 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 17:08:52,528 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 17:08:52,528 INFO L273 TraceCheckUtils]: 30: Hoare triple {12004#(<= main_~i~1 8)} assume true; {12004#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:52,529 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 17:08:52,530 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 17:08:52,530 INFO L273 TraceCheckUtils]: 33: Hoare triple {12005#(<= main_~i~1 9)} assume true; {12005#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:52,531 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 17:08:52,531 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 17:08:52,532 INFO L273 TraceCheckUtils]: 36: Hoare triple {12006#(<= main_~i~1 10)} assume true; {12006#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:52,532 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 17:08:52,533 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 17:08:52,534 INFO L273 TraceCheckUtils]: 39: Hoare triple {12007#(<= main_~i~1 11)} assume true; {12007#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:52,534 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 17:08:52,535 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 17:08:52,535 INFO L273 TraceCheckUtils]: 42: Hoare triple {12008#(<= main_~i~1 12)} assume true; {12008#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:52,536 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 17:08:52,537 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 17:08:52,537 INFO L273 TraceCheckUtils]: 45: Hoare triple {12009#(<= main_~i~1 13)} assume true; {12009#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:52,538 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 17:08:52,538 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 17:08:52,539 INFO L273 TraceCheckUtils]: 48: Hoare triple {12010#(<= main_~i~1 14)} assume true; {12010#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:52,539 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 17:08:52,540 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 17:08:52,541 INFO L273 TraceCheckUtils]: 51: Hoare triple {12011#(<= main_~i~1 15)} assume true; {12011#(<= main_~i~1 15)} is VALID [2018-11-14 17:08:52,541 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 17:08:52,542 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 17:08:52,542 INFO L273 TraceCheckUtils]: 54: Hoare triple {12012#(<= main_~i~1 16)} assume true; {12012#(<= main_~i~1 16)} is VALID [2018-11-14 17:08:52,543 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 17:08:52,544 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 17:08:52,544 INFO L273 TraceCheckUtils]: 57: Hoare triple {12013#(<= main_~i~1 17)} assume true; {12013#(<= main_~i~1 17)} is VALID [2018-11-14 17:08:52,545 INFO L273 TraceCheckUtils]: 58: Hoare triple {12013#(<= main_~i~1 17)} assume !(~i~1 < 10000); {11995#false} is VALID [2018-11-14 17:08:52,545 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 17:08:52,545 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 17:08:52,545 INFO L273 TraceCheckUtils]: 61: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,546 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 17:08:52,546 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 17:08:52,546 INFO L273 TraceCheckUtils]: 64: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,546 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 17:08:52,546 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 17:08:52,547 INFO L273 TraceCheckUtils]: 67: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,547 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 17:08:52,547 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 17:08:52,547 INFO L273 TraceCheckUtils]: 70: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,547 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 17:08:52,548 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 17:08:52,548 INFO L273 TraceCheckUtils]: 73: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,548 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 17:08:52,548 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 17:08:52,548 INFO L273 TraceCheckUtils]: 76: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,548 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 17:08:52,548 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 17:08:52,548 INFO L273 TraceCheckUtils]: 79: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,548 INFO L273 TraceCheckUtils]: 80: Hoare triple {11994#true} assume !(~i~0 < 10000); {11994#true} is VALID [2018-11-14 17:08:52,549 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 17:08:52,549 INFO L273 TraceCheckUtils]: 82: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,549 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {11994#true} {11995#false} #73#return; {11995#false} is VALID [2018-11-14 17:08:52,549 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 17:08:52,549 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 17:08:52,549 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 17:08:52,549 INFO L273 TraceCheckUtils]: 87: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,549 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 17:08:52,549 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 17:08:52,550 INFO L273 TraceCheckUtils]: 90: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,550 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 17:08:52,550 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 17:08:52,550 INFO L273 TraceCheckUtils]: 93: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,550 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 17:08:52,550 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 17:08:52,550 INFO L273 TraceCheckUtils]: 96: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,550 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 17:08:52,550 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 17:08:52,551 INFO L273 TraceCheckUtils]: 99: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,551 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 17:08:52,551 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 17:08:52,551 INFO L273 TraceCheckUtils]: 102: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,551 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 17:08:52,551 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 17:08:52,551 INFO L273 TraceCheckUtils]: 105: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,551 INFO L273 TraceCheckUtils]: 106: Hoare triple {11994#true} assume !(~i~0 < 10000); {11994#true} is VALID [2018-11-14 17:08:52,551 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 17:08:52,552 INFO L273 TraceCheckUtils]: 108: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,552 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {11994#true} {11995#false} #75#return; {11995#false} is VALID [2018-11-14 17:08:52,552 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 17:08:52,552 INFO L273 TraceCheckUtils]: 111: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:52,552 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 17:08:52,552 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 17:08:52,552 INFO L273 TraceCheckUtils]: 114: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:52,552 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 17:08:52,552 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 17:08:52,552 INFO L273 TraceCheckUtils]: 117: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:52,553 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 17:08:52,553 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 17:08:52,553 INFO L273 TraceCheckUtils]: 120: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:52,553 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 17:08:52,553 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 17:08:52,553 INFO L273 TraceCheckUtils]: 123: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:52,553 INFO L273 TraceCheckUtils]: 124: Hoare triple {11995#false} assume !(~i~2 < 9999); {11995#false} is VALID [2018-11-14 17:08:52,553 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 17:08:52,553 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 17:08:52,554 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 17:08:52,554 INFO L273 TraceCheckUtils]: 128: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,554 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 17:08:52,554 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 17:08:52,554 INFO L273 TraceCheckUtils]: 131: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,554 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 17:08:52,554 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 17:08:52,554 INFO L273 TraceCheckUtils]: 134: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,554 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 17:08:52,555 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 17:08:52,555 INFO L273 TraceCheckUtils]: 137: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,555 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 17:08:52,555 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 17:08:52,555 INFO L273 TraceCheckUtils]: 140: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,555 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 17:08:52,555 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 17:08:52,555 INFO L273 TraceCheckUtils]: 143: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,555 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 17:08:52,556 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 17:08:52,556 INFO L273 TraceCheckUtils]: 146: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,556 INFO L273 TraceCheckUtils]: 147: Hoare triple {11994#true} assume !(~i~0 < 10000); {11994#true} is VALID [2018-11-14 17:08:52,556 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 17:08:52,556 INFO L273 TraceCheckUtils]: 149: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:52,556 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {11994#true} {11995#false} #77#return; {11995#false} is VALID [2018-11-14 17:08:52,556 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 17:08:52,556 INFO L273 TraceCheckUtils]: 152: Hoare triple {11995#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11995#false} is VALID [2018-11-14 17:08:52,556 INFO L273 TraceCheckUtils]: 153: Hoare triple {11995#false} assume !false; {11995#false} is VALID [2018-11-14 17:08:52,570 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 17:08:52,570 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:52,570 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 17:08:52,582 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 17:08:53,247 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 17 check-sat command(s) [2018-11-14 17:08:53,248 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:53,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:53,277 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:53,527 INFO L256 TraceCheckUtils]: 0: Hoare triple {11994#true} call ULTIMATE.init(); {11994#true} is VALID [2018-11-14 17:08:53,527 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 17:08:53,528 INFO L273 TraceCheckUtils]: 2: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,528 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11994#true} {11994#true} #69#return; {11994#true} is VALID [2018-11-14 17:08:53,528 INFO L256 TraceCheckUtils]: 4: Hoare triple {11994#true} call #t~ret12 := main(); {11994#true} is VALID [2018-11-14 17:08:53,528 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 17:08:53,528 INFO L273 TraceCheckUtils]: 6: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,529 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 17:08:53,529 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 17:08:53,529 INFO L273 TraceCheckUtils]: 9: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,529 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 17:08:53,529 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 17:08:53,529 INFO L273 TraceCheckUtils]: 12: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,529 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 17:08:53,530 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 17:08:53,530 INFO L273 TraceCheckUtils]: 15: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,530 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 17:08:53,530 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 17:08:53,530 INFO L273 TraceCheckUtils]: 18: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,530 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 17:08:53,531 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 17:08:53,531 INFO L273 TraceCheckUtils]: 21: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,531 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 17:08:53,531 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 17:08:53,531 INFO L273 TraceCheckUtils]: 24: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,531 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 17:08:53,532 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 17:08:53,532 INFO L273 TraceCheckUtils]: 27: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,532 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 17:08:53,532 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 17:08:53,532 INFO L273 TraceCheckUtils]: 30: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,532 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 17:08:53,533 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 17:08:53,533 INFO L273 TraceCheckUtils]: 33: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,533 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 17:08:53,533 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 17:08:53,533 INFO L273 TraceCheckUtils]: 36: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,533 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 17:08:53,534 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 17:08:53,534 INFO L273 TraceCheckUtils]: 39: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,534 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 17:08:53,534 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 17:08:53,534 INFO L273 TraceCheckUtils]: 42: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,534 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 17:08:53,535 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 17:08:53,535 INFO L273 TraceCheckUtils]: 45: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,535 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 17:08:53,535 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 17:08:53,535 INFO L273 TraceCheckUtils]: 48: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,535 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 17:08:53,536 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 17:08:53,536 INFO L273 TraceCheckUtils]: 51: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,536 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 17:08:53,536 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 17:08:53,536 INFO L273 TraceCheckUtils]: 54: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,536 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 17:08:53,537 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 17:08:53,537 INFO L273 TraceCheckUtils]: 57: Hoare triple {11994#true} assume true; {11994#true} is VALID [2018-11-14 17:08:53,537 INFO L273 TraceCheckUtils]: 58: Hoare triple {11994#true} assume !(~i~1 < 10000); {11994#true} is VALID [2018-11-14 17:08:53,537 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 17:08:53,556 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 17:08:53,563 INFO L273 TraceCheckUtils]: 61: Hoare triple {12197#(<= mapavg_~i~0 0)} assume true; {12197#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:08:53,564 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 17:08:53,564 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 17:08:53,564 INFO L273 TraceCheckUtils]: 64: Hoare triple {12207#(<= mapavg_~i~0 1)} assume true; {12207#(<= mapavg_~i~0 1)} is VALID [2018-11-14 17:08:53,565 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 17:08:53,565 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 17:08:53,566 INFO L273 TraceCheckUtils]: 67: Hoare triple {12217#(<= mapavg_~i~0 2)} assume true; {12217#(<= mapavg_~i~0 2)} is VALID [2018-11-14 17:08:53,566 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 17:08:53,566 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 17:08:53,567 INFO L273 TraceCheckUtils]: 70: Hoare triple {12227#(<= mapavg_~i~0 3)} assume true; {12227#(<= mapavg_~i~0 3)} is VALID [2018-11-14 17:08:53,567 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 17:08:53,568 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 17:08:53,568 INFO L273 TraceCheckUtils]: 73: Hoare triple {12237#(<= mapavg_~i~0 4)} assume true; {12237#(<= mapavg_~i~0 4)} is VALID [2018-11-14 17:08:53,569 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 17:08:53,570 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 17:08:53,570 INFO L273 TraceCheckUtils]: 76: Hoare triple {12247#(<= mapavg_~i~0 5)} assume true; {12247#(<= mapavg_~i~0 5)} is VALID [2018-11-14 17:08:53,571 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 17:08:53,571 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 17:08:53,572 INFO L273 TraceCheckUtils]: 79: Hoare triple {12257#(<= mapavg_~i~0 6)} assume true; {12257#(<= mapavg_~i~0 6)} is VALID [2018-11-14 17:08:53,573 INFO L273 TraceCheckUtils]: 80: Hoare triple {12257#(<= mapavg_~i~0 6)} assume !(~i~0 < 10000); {11995#false} is VALID [2018-11-14 17:08:53,573 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 17:08:53,573 INFO L273 TraceCheckUtils]: 82: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,573 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {11995#false} {11994#true} #73#return; {11995#false} is VALID [2018-11-14 17:08:53,573 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 17:08:53,574 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 17:08:53,574 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 17:08:53,574 INFO L273 TraceCheckUtils]: 87: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,574 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 17:08:53,574 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 17:08:53,575 INFO L273 TraceCheckUtils]: 90: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,575 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 17:08:53,575 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 17:08:53,575 INFO L273 TraceCheckUtils]: 93: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,575 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 17:08:53,576 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 17:08:53,576 INFO L273 TraceCheckUtils]: 96: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,576 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 17:08:53,576 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 17:08:53,576 INFO L273 TraceCheckUtils]: 99: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,576 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 17:08:53,576 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 17:08:53,576 INFO L273 TraceCheckUtils]: 102: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,576 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 17:08:53,577 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 17:08:53,577 INFO L273 TraceCheckUtils]: 105: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,577 INFO L273 TraceCheckUtils]: 106: Hoare triple {11995#false} assume !(~i~0 < 10000); {11995#false} is VALID [2018-11-14 17:08:53,577 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 17:08:53,577 INFO L273 TraceCheckUtils]: 108: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,577 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {11995#false} {11995#false} #75#return; {11995#false} is VALID [2018-11-14 17:08:53,577 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 17:08:53,577 INFO L273 TraceCheckUtils]: 111: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,577 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 17:08:53,578 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 17:08:53,578 INFO L273 TraceCheckUtils]: 114: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,578 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 17:08:53,578 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 17:08:53,578 INFO L273 TraceCheckUtils]: 117: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,578 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 17:08:53,578 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 17:08:53,578 INFO L273 TraceCheckUtils]: 120: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,578 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 17:08:53,579 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 17:08:53,579 INFO L273 TraceCheckUtils]: 123: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,579 INFO L273 TraceCheckUtils]: 124: Hoare triple {11995#false} assume !(~i~2 < 9999); {11995#false} is VALID [2018-11-14 17:08:53,579 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 17:08:53,579 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 17:08:53,579 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 17:08:53,579 INFO L273 TraceCheckUtils]: 128: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,579 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 17:08:53,579 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 17:08:53,580 INFO L273 TraceCheckUtils]: 131: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,580 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 17:08:53,580 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 17:08:53,580 INFO L273 TraceCheckUtils]: 134: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,580 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 17:08:53,580 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 17:08:53,580 INFO L273 TraceCheckUtils]: 137: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,580 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 17:08:53,580 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 17:08:53,581 INFO L273 TraceCheckUtils]: 140: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,581 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 17:08:53,581 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 17:08:53,581 INFO L273 TraceCheckUtils]: 143: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,581 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 17:08:53,581 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 17:08:53,581 INFO L273 TraceCheckUtils]: 146: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,581 INFO L273 TraceCheckUtils]: 147: Hoare triple {11995#false} assume !(~i~0 < 10000); {11995#false} is VALID [2018-11-14 17:08:53,581 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 17:08:53,581 INFO L273 TraceCheckUtils]: 149: Hoare triple {11995#false} assume true; {11995#false} is VALID [2018-11-14 17:08:53,582 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {11995#false} {11995#false} #77#return; {11995#false} is VALID [2018-11-14 17:08:53,582 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 17:08:53,582 INFO L273 TraceCheckUtils]: 152: Hoare triple {11995#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11995#false} is VALID [2018-11-14 17:08:53,582 INFO L273 TraceCheckUtils]: 153: Hoare triple {11995#false} assume !false; {11995#false} is VALID [2018-11-14 17:08:53,591 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 17:08:53,613 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:53,613 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 9] total 27 [2018-11-14 17:08:53,614 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 154 [2018-11-14 17:08:53,615 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:53,615 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-14 17:08:53,725 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 17:08:53,725 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-14 17:08:53,725 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-14 17:08:53,726 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=225, Invalid=477, Unknown=0, NotChecked=0, Total=702 [2018-11-14 17:08:53,726 INFO L87 Difference]: Start difference. First operand 107 states and 111 transitions. Second operand 27 states. [2018-11-14 17:08:54,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:54,640 INFO L93 Difference]: Finished difference Result 163 states and 175 transitions. [2018-11-14 17:08:54,640 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2018-11-14 17:08:54,640 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 154 [2018-11-14 17:08:54,641 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:54,641 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 17:08:54,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 136 transitions. [2018-11-14 17:08:54,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 17:08:54,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 136 transitions. [2018-11-14 17:08:54,644 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 136 transitions. [2018-11-14 17:08:54,806 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 17:08:54,809 INFO L225 Difference]: With dead ends: 163 [2018-11-14 17:08:54,809 INFO L226 Difference]: Without dead ends: 115 [2018-11-14 17:08:54,810 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 148 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 119 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=225, Invalid=477, Unknown=0, NotChecked=0, Total=702 [2018-11-14 17:08:54,810 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2018-11-14 17:08:54,852 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 113. [2018-11-14 17:08:54,852 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:54,852 INFO L82 GeneralOperation]: Start isEquivalent. First operand 115 states. Second operand 113 states. [2018-11-14 17:08:54,852 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand 113 states. [2018-11-14 17:08:54,852 INFO L87 Difference]: Start difference. First operand 115 states. Second operand 113 states. [2018-11-14 17:08:54,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:54,855 INFO L93 Difference]: Finished difference Result 115 states and 119 transitions. [2018-11-14 17:08:54,855 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 119 transitions. [2018-11-14 17:08:54,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:54,856 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:54,856 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 115 states. [2018-11-14 17:08:54,856 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 115 states. [2018-11-14 17:08:54,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:54,858 INFO L93 Difference]: Finished difference Result 115 states and 119 transitions. [2018-11-14 17:08:54,858 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 119 transitions. [2018-11-14 17:08:54,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:54,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:54,859 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:54,859 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:54,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 113 states. [2018-11-14 17:08:54,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 117 transitions. [2018-11-14 17:08:54,861 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 117 transitions. Word has length 154 [2018-11-14 17:08:54,862 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:54,862 INFO L480 AbstractCegarLoop]: Abstraction has 113 states and 117 transitions. [2018-11-14 17:08:54,862 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-14 17:08:54,862 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 117 transitions. [2018-11-14 17:08:54,863 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 167 [2018-11-14 17:08:54,863 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:54,863 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 17:08:54,864 INFO L423 AbstractCegarLoop]: === Iteration 22 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:54,864 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:54,864 INFO L82 PathProgramCache]: Analyzing trace with hash 764858548, now seen corresponding path program 18 times [2018-11-14 17:08:54,864 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:54,864 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:54,865 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:54,865 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:54,865 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:54,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:55,303 INFO L256 TraceCheckUtils]: 0: Hoare triple {13084#true} call ULTIMATE.init(); {13084#true} is VALID [2018-11-14 17:08:55,304 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 17:08:55,304 INFO L273 TraceCheckUtils]: 2: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,304 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13084#true} {13084#true} #69#return; {13084#true} is VALID [2018-11-14 17:08:55,304 INFO L256 TraceCheckUtils]: 4: Hoare triple {13084#true} call #t~ret12 := main(); {13084#true} is VALID [2018-11-14 17:08:55,304 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 17:08:55,305 INFO L273 TraceCheckUtils]: 6: Hoare triple {13086#(= main_~i~1 0)} assume true; {13086#(= main_~i~1 0)} is VALID [2018-11-14 17:08:55,305 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 17:08:55,305 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 17:08:55,306 INFO L273 TraceCheckUtils]: 9: Hoare triple {13087#(<= main_~i~1 1)} assume true; {13087#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:55,306 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 17:08:55,307 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 17:08:55,307 INFO L273 TraceCheckUtils]: 12: Hoare triple {13088#(<= main_~i~1 2)} assume true; {13088#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:55,308 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 17:08:55,308 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 17:08:55,309 INFO L273 TraceCheckUtils]: 15: Hoare triple {13089#(<= main_~i~1 3)} assume true; {13089#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:55,309 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 17:08:55,310 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 17:08:55,311 INFO L273 TraceCheckUtils]: 18: Hoare triple {13090#(<= main_~i~1 4)} assume true; {13090#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:55,311 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 17:08:55,312 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 17:08:55,312 INFO L273 TraceCheckUtils]: 21: Hoare triple {13091#(<= main_~i~1 5)} assume true; {13091#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:55,313 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 17:08:55,313 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 17:08:55,314 INFO L273 TraceCheckUtils]: 24: Hoare triple {13092#(<= main_~i~1 6)} assume true; {13092#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:55,314 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 17:08:55,315 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 17:08:55,316 INFO L273 TraceCheckUtils]: 27: Hoare triple {13093#(<= main_~i~1 7)} assume true; {13093#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:55,316 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 17:08:55,317 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 17:08:55,317 INFO L273 TraceCheckUtils]: 30: Hoare triple {13094#(<= main_~i~1 8)} assume true; {13094#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:55,318 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 17:08:55,318 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 17:08:55,319 INFO L273 TraceCheckUtils]: 33: Hoare triple {13095#(<= main_~i~1 9)} assume true; {13095#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:55,319 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 17:08:55,320 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 17:08:55,321 INFO L273 TraceCheckUtils]: 36: Hoare triple {13096#(<= main_~i~1 10)} assume true; {13096#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:55,321 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 17:08:55,322 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 17:08:55,322 INFO L273 TraceCheckUtils]: 39: Hoare triple {13097#(<= main_~i~1 11)} assume true; {13097#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:55,326 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 17:08:55,326 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 17:08:55,327 INFO L273 TraceCheckUtils]: 42: Hoare triple {13098#(<= main_~i~1 12)} assume true; {13098#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:55,327 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 17:08:55,328 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 17:08:55,328 INFO L273 TraceCheckUtils]: 45: Hoare triple {13099#(<= main_~i~1 13)} assume true; {13099#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:55,328 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 17:08:55,329 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 17:08:55,329 INFO L273 TraceCheckUtils]: 48: Hoare triple {13100#(<= main_~i~1 14)} assume true; {13100#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:55,329 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 17:08:55,330 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 17:08:55,330 INFO L273 TraceCheckUtils]: 51: Hoare triple {13101#(<= main_~i~1 15)} assume true; {13101#(<= main_~i~1 15)} is VALID [2018-11-14 17:08:55,330 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 17:08:55,331 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 17:08:55,332 INFO L273 TraceCheckUtils]: 54: Hoare triple {13102#(<= main_~i~1 16)} assume true; {13102#(<= main_~i~1 16)} is VALID [2018-11-14 17:08:55,332 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 17:08:55,333 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 17:08:55,333 INFO L273 TraceCheckUtils]: 57: Hoare triple {13103#(<= main_~i~1 17)} assume true; {13103#(<= main_~i~1 17)} is VALID [2018-11-14 17:08:55,334 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 17:08:55,334 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 17:08:55,335 INFO L273 TraceCheckUtils]: 60: Hoare triple {13104#(<= main_~i~1 18)} assume true; {13104#(<= main_~i~1 18)} is VALID [2018-11-14 17:08:55,336 INFO L273 TraceCheckUtils]: 61: Hoare triple {13104#(<= main_~i~1 18)} assume !(~i~1 < 10000); {13085#false} is VALID [2018-11-14 17:08:55,336 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 17:08:55,336 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 17:08:55,336 INFO L273 TraceCheckUtils]: 64: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,336 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 17:08:55,337 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 17:08:55,337 INFO L273 TraceCheckUtils]: 67: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,337 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 17:08:55,337 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 17:08:55,337 INFO L273 TraceCheckUtils]: 70: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,338 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 17:08:55,338 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 17:08:55,338 INFO L273 TraceCheckUtils]: 73: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,338 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 17:08:55,338 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 17:08:55,338 INFO L273 TraceCheckUtils]: 76: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,339 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 17:08:55,339 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 17:08:55,339 INFO L273 TraceCheckUtils]: 79: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,339 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 17:08:55,339 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 17:08:55,340 INFO L273 TraceCheckUtils]: 82: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,340 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 17:08:55,340 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 17:08:55,340 INFO L273 TraceCheckUtils]: 85: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,340 INFO L273 TraceCheckUtils]: 86: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 17:08:55,340 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 17:08:55,341 INFO L273 TraceCheckUtils]: 88: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,341 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {13084#true} {13085#false} #73#return; {13085#false} is VALID [2018-11-14 17:08:55,341 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 17:08:55,341 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 17:08:55,341 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 17:08:55,341 INFO L273 TraceCheckUtils]: 93: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,341 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 17:08:55,341 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 17:08:55,342 INFO L273 TraceCheckUtils]: 96: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,342 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 17:08:55,342 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 17:08:55,342 INFO L273 TraceCheckUtils]: 99: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,342 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 17:08:55,342 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 17:08:55,342 INFO L273 TraceCheckUtils]: 102: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,342 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 17:08:55,342 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 17:08:55,343 INFO L273 TraceCheckUtils]: 105: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,343 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 17:08:55,343 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 17:08:55,343 INFO L273 TraceCheckUtils]: 108: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,343 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 17:08:55,343 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 17:08:55,343 INFO L273 TraceCheckUtils]: 111: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,343 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 17:08:55,343 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 17:08:55,344 INFO L273 TraceCheckUtils]: 114: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,344 INFO L273 TraceCheckUtils]: 115: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 17:08:55,344 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 17:08:55,344 INFO L273 TraceCheckUtils]: 117: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,344 INFO L268 TraceCheckUtils]: 118: Hoare quadruple {13084#true} {13085#false} #75#return; {13085#false} is VALID [2018-11-14 17:08:55,344 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 17:08:55,344 INFO L273 TraceCheckUtils]: 120: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:55,344 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 17:08:55,344 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 17:08:55,345 INFO L273 TraceCheckUtils]: 123: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:55,345 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 17:08:55,345 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 17:08:55,345 INFO L273 TraceCheckUtils]: 126: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:55,345 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 17:08:55,345 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 17:08:55,345 INFO L273 TraceCheckUtils]: 129: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:55,346 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 17:08:55,346 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 17:08:55,346 INFO L273 TraceCheckUtils]: 132: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:55,346 INFO L273 TraceCheckUtils]: 133: Hoare triple {13085#false} assume !(~i~2 < 9999); {13085#false} is VALID [2018-11-14 17:08:55,346 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 17:08:55,346 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 17:08:55,347 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 17:08:55,347 INFO L273 TraceCheckUtils]: 137: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,347 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 17:08:55,347 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 17:08:55,347 INFO L273 TraceCheckUtils]: 140: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,347 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 17:08:55,348 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 17:08:55,348 INFO L273 TraceCheckUtils]: 143: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,348 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 17:08:55,348 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 17:08:55,348 INFO L273 TraceCheckUtils]: 146: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,349 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 17:08:55,349 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 17:08:55,349 INFO L273 TraceCheckUtils]: 149: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,349 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 17:08:55,349 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 17:08:55,350 INFO L273 TraceCheckUtils]: 152: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,350 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 17:08:55,350 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 17:08:55,350 INFO L273 TraceCheckUtils]: 155: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,350 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 17:08:55,351 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 17:08:55,351 INFO L273 TraceCheckUtils]: 158: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,351 INFO L273 TraceCheckUtils]: 159: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 17:08:55,351 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 17:08:55,351 INFO L273 TraceCheckUtils]: 161: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:55,352 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {13084#true} {13085#false} #77#return; {13085#false} is VALID [2018-11-14 17:08:55,352 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 17:08:55,352 INFO L273 TraceCheckUtils]: 164: Hoare triple {13085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13085#false} is VALID [2018-11-14 17:08:55,352 INFO L273 TraceCheckUtils]: 165: Hoare triple {13085#false} assume !false; {13085#false} is VALID [2018-11-14 17:08:55,378 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 17:08:55,378 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:55,379 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 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 17:08:55,386 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 17:08:55,918 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 11 check-sat command(s) [2018-11-14 17:08:55,918 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:08:55,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:55,955 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:56,194 INFO L256 TraceCheckUtils]: 0: Hoare triple {13084#true} call ULTIMATE.init(); {13084#true} is VALID [2018-11-14 17:08:56,194 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 17:08:56,194 INFO L273 TraceCheckUtils]: 2: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,195 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13084#true} {13084#true} #69#return; {13084#true} is VALID [2018-11-14 17:08:56,195 INFO L256 TraceCheckUtils]: 4: Hoare triple {13084#true} call #t~ret12 := main(); {13084#true} is VALID [2018-11-14 17:08:56,195 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 17:08:56,195 INFO L273 TraceCheckUtils]: 6: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,195 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 17:08:56,196 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 17:08:56,196 INFO L273 TraceCheckUtils]: 9: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,196 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 17:08:56,196 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 17:08:56,196 INFO L273 TraceCheckUtils]: 12: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,196 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 17:08:56,196 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 17:08:56,196 INFO L273 TraceCheckUtils]: 15: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,196 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 17:08:56,197 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 17:08:56,197 INFO L273 TraceCheckUtils]: 18: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,197 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 17:08:56,197 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 17:08:56,197 INFO L273 TraceCheckUtils]: 21: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,197 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 17:08:56,197 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 17:08:56,198 INFO L273 TraceCheckUtils]: 24: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,198 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 17:08:56,198 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 17:08:56,198 INFO L273 TraceCheckUtils]: 27: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,198 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 17:08:56,198 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 17:08:56,198 INFO L273 TraceCheckUtils]: 30: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,198 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 17:08:56,198 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 17:08:56,198 INFO L273 TraceCheckUtils]: 33: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,199 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 17:08:56,199 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 17:08:56,199 INFO L273 TraceCheckUtils]: 36: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,199 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 17:08:56,199 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 17:08:56,199 INFO L273 TraceCheckUtils]: 39: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,199 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 17:08:56,200 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 17:08:56,200 INFO L273 TraceCheckUtils]: 42: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,200 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 17:08:56,200 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 17:08:56,200 INFO L273 TraceCheckUtils]: 45: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,200 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 17:08:56,201 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 17:08:56,201 INFO L273 TraceCheckUtils]: 48: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,201 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 17:08:56,201 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 17:08:56,201 INFO L273 TraceCheckUtils]: 51: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,201 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 17:08:56,201 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 17:08:56,202 INFO L273 TraceCheckUtils]: 54: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,202 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 17:08:56,202 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 17:08:56,202 INFO L273 TraceCheckUtils]: 57: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,202 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 17:08:56,202 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 17:08:56,202 INFO L273 TraceCheckUtils]: 60: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,202 INFO L273 TraceCheckUtils]: 61: Hoare triple {13084#true} assume !(~i~1 < 10000); {13084#true} is VALID [2018-11-14 17:08:56,203 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 17:08:56,203 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 17:08:56,203 INFO L273 TraceCheckUtils]: 64: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,203 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 17:08:56,203 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 17:08:56,203 INFO L273 TraceCheckUtils]: 67: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,203 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 17:08:56,203 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 17:08:56,203 INFO L273 TraceCheckUtils]: 70: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,204 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 17:08:56,204 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 17:08:56,204 INFO L273 TraceCheckUtils]: 73: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,204 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 17:08:56,204 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 17:08:56,204 INFO L273 TraceCheckUtils]: 76: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,204 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 17:08:56,205 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 17:08:56,205 INFO L273 TraceCheckUtils]: 79: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,205 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 17:08:56,205 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 17:08:56,205 INFO L273 TraceCheckUtils]: 82: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,205 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 17:08:56,206 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 17:08:56,206 INFO L273 TraceCheckUtils]: 85: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,206 INFO L273 TraceCheckUtils]: 86: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 17:08:56,206 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 17:08:56,206 INFO L273 TraceCheckUtils]: 88: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,206 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {13084#true} {13084#true} #73#return; {13084#true} is VALID [2018-11-14 17:08:56,207 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 17:08:56,207 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 17:08:56,207 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 17:08:56,207 INFO L273 TraceCheckUtils]: 93: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,207 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 17:08:56,207 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 17:08:56,207 INFO L273 TraceCheckUtils]: 96: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,208 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 17:08:56,208 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 17:08:56,208 INFO L273 TraceCheckUtils]: 99: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,208 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 17:08:56,208 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 17:08:56,208 INFO L273 TraceCheckUtils]: 102: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,209 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 17:08:56,209 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 17:08:56,209 INFO L273 TraceCheckUtils]: 105: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,209 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 17:08:56,209 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 17:08:56,209 INFO L273 TraceCheckUtils]: 108: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,209 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 17:08:56,210 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 17:08:56,210 INFO L273 TraceCheckUtils]: 111: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,210 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 17:08:56,210 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 17:08:56,210 INFO L273 TraceCheckUtils]: 114: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,210 INFO L273 TraceCheckUtils]: 115: Hoare triple {13084#true} assume !(~i~0 < 10000); {13084#true} is VALID [2018-11-14 17:08:56,210 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 17:08:56,211 INFO L273 TraceCheckUtils]: 117: Hoare triple {13084#true} assume true; {13084#true} is VALID [2018-11-14 17:08:56,211 INFO L268 TraceCheckUtils]: 118: Hoare quadruple {13084#true} {13084#true} #75#return; {13084#true} is VALID [2018-11-14 17:08:56,213 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 17:08:56,215 INFO L273 TraceCheckUtils]: 120: Hoare triple {13465#(<= main_~i~2 0)} assume true; {13465#(<= main_~i~2 0)} is VALID [2018-11-14 17:08:56,215 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 17:08:56,217 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 17:08:56,217 INFO L273 TraceCheckUtils]: 123: Hoare triple {13475#(<= main_~i~2 1)} assume true; {13475#(<= main_~i~2 1)} is VALID [2018-11-14 17:08:56,220 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 17:08:56,220 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 17:08:56,222 INFO L273 TraceCheckUtils]: 126: Hoare triple {13485#(<= main_~i~2 2)} assume true; {13485#(<= main_~i~2 2)} is VALID [2018-11-14 17:08:56,222 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 17:08:56,224 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 17:08:56,224 INFO L273 TraceCheckUtils]: 129: Hoare triple {13495#(<= main_~i~2 3)} assume true; {13495#(<= main_~i~2 3)} is VALID [2018-11-14 17:08:56,224 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 17:08:56,225 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 17:08:56,226 INFO L273 TraceCheckUtils]: 132: Hoare triple {13505#(<= main_~i~2 4)} assume true; {13505#(<= main_~i~2 4)} is VALID [2018-11-14 17:08:56,226 INFO L273 TraceCheckUtils]: 133: Hoare triple {13505#(<= main_~i~2 4)} assume !(~i~2 < 9999); {13085#false} is VALID [2018-11-14 17:08:56,226 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 17:08:56,226 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 17:08:56,226 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 17:08:56,227 INFO L273 TraceCheckUtils]: 137: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,227 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 17:08:56,227 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 17:08:56,227 INFO L273 TraceCheckUtils]: 140: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,227 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 17:08:56,227 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 17:08:56,228 INFO L273 TraceCheckUtils]: 143: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,228 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 17:08:56,228 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 17:08:56,228 INFO L273 TraceCheckUtils]: 146: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,228 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 17:08:56,228 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 17:08:56,229 INFO L273 TraceCheckUtils]: 149: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,229 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 17:08:56,229 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 17:08:56,229 INFO L273 TraceCheckUtils]: 152: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,229 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 17:08:56,229 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 17:08:56,230 INFO L273 TraceCheckUtils]: 155: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,230 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 17:08:56,230 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 17:08:56,230 INFO L273 TraceCheckUtils]: 158: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,230 INFO L273 TraceCheckUtils]: 159: Hoare triple {13085#false} assume !(~i~0 < 10000); {13085#false} is VALID [2018-11-14 17:08:56,230 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 17:08:56,231 INFO L273 TraceCheckUtils]: 161: Hoare triple {13085#false} assume true; {13085#false} is VALID [2018-11-14 17:08:56,231 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {13085#false} {13085#false} #77#return; {13085#false} is VALID [2018-11-14 17:08:56,231 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 17:08:56,231 INFO L273 TraceCheckUtils]: 164: Hoare triple {13085#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13085#false} is VALID [2018-11-14 17:08:56,231 INFO L273 TraceCheckUtils]: 165: Hoare triple {13085#false} assume !false; {13085#false} is VALID [2018-11-14 17:08:56,241 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 17:08:56,262 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:56,262 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 7] total 26 [2018-11-14 17:08:56,262 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 166 [2018-11-14 17:08:56,263 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:56,263 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-14 17:08:56,426 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 17:08:56,426 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-14 17:08:56,427 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-14 17:08:56,427 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-14 17:08:56,427 INFO L87 Difference]: Start difference. First operand 113 states and 117 transitions. Second operand 26 states. [2018-11-14 17:08:57,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:57,228 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2018-11-14 17:08:57,228 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2018-11-14 17:08:57,228 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 166 [2018-11-14 17:08:57,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:57,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 17:08:57,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 130 transitions. [2018-11-14 17:08:57,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 17:08:57,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 130 transitions. [2018-11-14 17:08:57,231 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 130 transitions. [2018-11-14 17:08:57,391 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 17:08:57,394 INFO L225 Difference]: With dead ends: 172 [2018-11-14 17:08:57,394 INFO L226 Difference]: Without dead ends: 121 [2018-11-14 17:08:57,395 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 186 GetRequests, 162 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 90 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-14 17:08:57,395 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2018-11-14 17:08:57,442 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 119. [2018-11-14 17:08:57,442 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:57,442 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand 119 states. [2018-11-14 17:08:57,442 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 119 states. [2018-11-14 17:08:57,442 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 119 states. [2018-11-14 17:08:57,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:57,444 INFO L93 Difference]: Finished difference Result 121 states and 125 transitions. [2018-11-14 17:08:57,444 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 125 transitions. [2018-11-14 17:08:57,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:57,445 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:57,445 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 121 states. [2018-11-14 17:08:57,445 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 121 states. [2018-11-14 17:08:57,447 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:57,447 INFO L93 Difference]: Finished difference Result 121 states and 125 transitions. [2018-11-14 17:08:57,447 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 125 transitions. [2018-11-14 17:08:57,448 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:57,448 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:57,448 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:57,448 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:57,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 119 states. [2018-11-14 17:08:57,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 119 states and 123 transitions. [2018-11-14 17:08:57,450 INFO L78 Accepts]: Start accepts. Automaton has 119 states and 123 transitions. Word has length 166 [2018-11-14 17:08:57,450 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:57,450 INFO L480 AbstractCegarLoop]: Abstraction has 119 states and 123 transitions. [2018-11-14 17:08:57,450 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-14 17:08:57,450 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 123 transitions. [2018-11-14 17:08:57,451 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 173 [2018-11-14 17:08:57,452 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:57,452 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 17:08:57,452 INFO L423 AbstractCegarLoop]: === Iteration 23 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:57,452 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:57,452 INFO L82 PathProgramCache]: Analyzing trace with hash -79584708, now seen corresponding path program 19 times [2018-11-14 17:08:57,453 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:57,453 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:57,453 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:57,454 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:08:57,454 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:57,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:57,946 INFO L256 TraceCheckUtils]: 0: Hoare triple {14241#true} call ULTIMATE.init(); {14241#true} is VALID [2018-11-14 17:08:57,947 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 17:08:57,947 INFO L273 TraceCheckUtils]: 2: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,947 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14241#true} {14241#true} #69#return; {14241#true} is VALID [2018-11-14 17:08:57,947 INFO L256 TraceCheckUtils]: 4: Hoare triple {14241#true} call #t~ret12 := main(); {14241#true} is VALID [2018-11-14 17:08:57,948 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 17:08:57,948 INFO L273 TraceCheckUtils]: 6: Hoare triple {14243#(= main_~i~1 0)} assume true; {14243#(= main_~i~1 0)} is VALID [2018-11-14 17:08:57,948 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 17:08:57,949 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 17:08:57,949 INFO L273 TraceCheckUtils]: 9: Hoare triple {14244#(<= main_~i~1 1)} assume true; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:57,949 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 17:08:57,950 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 17:08:57,950 INFO L273 TraceCheckUtils]: 12: Hoare triple {14245#(<= main_~i~1 2)} assume true; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:57,950 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 17:08:57,951 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 17:08:57,951 INFO L273 TraceCheckUtils]: 15: Hoare triple {14246#(<= main_~i~1 3)} assume true; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:57,952 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 17:08:57,952 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 17:08:57,953 INFO L273 TraceCheckUtils]: 18: Hoare triple {14247#(<= main_~i~1 4)} assume true; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:57,953 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 17:08:57,954 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 17:08:57,955 INFO L273 TraceCheckUtils]: 21: Hoare triple {14248#(<= main_~i~1 5)} assume true; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:57,955 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 17:08:57,956 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 17:08:57,956 INFO L273 TraceCheckUtils]: 24: Hoare triple {14249#(<= main_~i~1 6)} assume true; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:57,957 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 17:08:57,958 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 17:08:57,958 INFO L273 TraceCheckUtils]: 27: Hoare triple {14250#(<= main_~i~1 7)} assume true; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:57,959 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 17:08:57,959 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 17:08:57,960 INFO L273 TraceCheckUtils]: 30: Hoare triple {14251#(<= main_~i~1 8)} assume true; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:57,960 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 17:08:57,961 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 17:08:57,962 INFO L273 TraceCheckUtils]: 33: Hoare triple {14252#(<= main_~i~1 9)} assume true; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:57,962 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 17:08:57,963 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 17:08:57,963 INFO L273 TraceCheckUtils]: 36: Hoare triple {14253#(<= main_~i~1 10)} assume true; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:57,964 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 17:08:57,965 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 17:08:57,965 INFO L273 TraceCheckUtils]: 39: Hoare triple {14254#(<= main_~i~1 11)} assume true; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:57,966 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 17:08:57,966 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 17:08:57,967 INFO L273 TraceCheckUtils]: 42: Hoare triple {14255#(<= main_~i~1 12)} assume true; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:57,967 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 17:08:57,968 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 17:08:57,969 INFO L273 TraceCheckUtils]: 45: Hoare triple {14256#(<= main_~i~1 13)} assume true; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:57,969 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 17:08:57,970 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 17:08:57,970 INFO L273 TraceCheckUtils]: 48: Hoare triple {14257#(<= main_~i~1 14)} assume true; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:57,971 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 17:08:57,972 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 17:08:57,972 INFO L273 TraceCheckUtils]: 51: Hoare triple {14258#(<= main_~i~1 15)} assume true; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 17:08:57,973 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 17:08:57,973 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 17:08:57,974 INFO L273 TraceCheckUtils]: 54: Hoare triple {14259#(<= main_~i~1 16)} assume true; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 17:08:57,974 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 17:08:57,975 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 17:08:57,976 INFO L273 TraceCheckUtils]: 57: Hoare triple {14260#(<= main_~i~1 17)} assume true; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 17:08:57,976 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 17:08:57,977 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 17:08:57,977 INFO L273 TraceCheckUtils]: 60: Hoare triple {14261#(<= main_~i~1 18)} assume true; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 17:08:57,978 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 17:08:57,979 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 17:08:57,979 INFO L273 TraceCheckUtils]: 63: Hoare triple {14262#(<= main_~i~1 19)} assume true; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 17:08:57,980 INFO L273 TraceCheckUtils]: 64: Hoare triple {14262#(<= main_~i~1 19)} assume !(~i~1 < 10000); {14242#false} is VALID [2018-11-14 17:08:57,980 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 17:08:57,980 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 17:08:57,980 INFO L273 TraceCheckUtils]: 67: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,981 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 17:08:57,981 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 17:08:57,981 INFO L273 TraceCheckUtils]: 70: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,981 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 17:08:57,981 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 17:08:57,981 INFO L273 TraceCheckUtils]: 73: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,982 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 17:08:57,982 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 17:08:57,982 INFO L273 TraceCheckUtils]: 76: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,982 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 17:08:57,982 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 17:08:57,983 INFO L273 TraceCheckUtils]: 79: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,983 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 17:08:57,983 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 17:08:57,983 INFO L273 TraceCheckUtils]: 82: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,983 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 17:08:57,984 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 17:08:57,984 INFO L273 TraceCheckUtils]: 85: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,984 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 17:08:57,984 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 17:08:57,984 INFO L273 TraceCheckUtils]: 88: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,984 INFO L273 TraceCheckUtils]: 89: Hoare triple {14241#true} assume !(~i~0 < 10000); {14241#true} is VALID [2018-11-14 17:08:57,984 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 17:08:57,984 INFO L273 TraceCheckUtils]: 91: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,984 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {14241#true} {14242#false} #73#return; {14242#false} is VALID [2018-11-14 17:08:57,985 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 17:08:57,985 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 17:08:57,985 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 17:08:57,985 INFO L273 TraceCheckUtils]: 96: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,985 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 17:08:57,985 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 17:08:57,985 INFO L273 TraceCheckUtils]: 99: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,985 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 17:08:57,985 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 17:08:57,986 INFO L273 TraceCheckUtils]: 102: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,986 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 17:08:57,986 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 17:08:57,986 INFO L273 TraceCheckUtils]: 105: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,986 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 17:08:57,986 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 17:08:57,986 INFO L273 TraceCheckUtils]: 108: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,986 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 17:08:57,986 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 17:08:57,986 INFO L273 TraceCheckUtils]: 111: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,987 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 17:08:57,987 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 17:08:57,987 INFO L273 TraceCheckUtils]: 114: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,987 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 17:08:57,987 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 17:08:57,987 INFO L273 TraceCheckUtils]: 117: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,987 INFO L273 TraceCheckUtils]: 118: Hoare triple {14241#true} assume !(~i~0 < 10000); {14241#true} is VALID [2018-11-14 17:08:57,987 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 17:08:57,987 INFO L273 TraceCheckUtils]: 120: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,988 INFO L268 TraceCheckUtils]: 121: Hoare quadruple {14241#true} {14242#false} #75#return; {14242#false} is VALID [2018-11-14 17:08:57,988 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 17:08:57,988 INFO L273 TraceCheckUtils]: 123: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:57,988 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 17:08:57,988 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 17:08:57,988 INFO L273 TraceCheckUtils]: 126: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:57,988 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 17:08:57,988 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 17:08:57,988 INFO L273 TraceCheckUtils]: 129: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:57,988 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 17:08:57,989 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 17:08:57,989 INFO L273 TraceCheckUtils]: 132: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:57,989 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 17:08:57,989 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 17:08:57,989 INFO L273 TraceCheckUtils]: 135: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:57,989 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 17:08:57,989 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 17:08:57,989 INFO L273 TraceCheckUtils]: 138: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:57,989 INFO L273 TraceCheckUtils]: 139: Hoare triple {14242#false} assume !(~i~2 < 9999); {14242#false} is VALID [2018-11-14 17:08:57,990 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 17:08:57,990 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 17:08:57,990 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 17:08:57,990 INFO L273 TraceCheckUtils]: 143: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,990 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 17:08:57,990 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 17:08:57,990 INFO L273 TraceCheckUtils]: 146: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,990 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 17:08:57,990 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 17:08:57,990 INFO L273 TraceCheckUtils]: 149: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,991 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 17:08:57,991 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 17:08:57,991 INFO L273 TraceCheckUtils]: 152: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,991 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 17:08:57,991 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 17:08:57,991 INFO L273 TraceCheckUtils]: 155: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,991 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 17:08:57,991 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 17:08:57,991 INFO L273 TraceCheckUtils]: 158: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,992 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 17:08:57,992 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 17:08:57,992 INFO L273 TraceCheckUtils]: 161: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,992 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 17:08:57,992 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 17:08:57,992 INFO L273 TraceCheckUtils]: 164: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,992 INFO L273 TraceCheckUtils]: 165: Hoare triple {14241#true} assume !(~i~0 < 10000); {14241#true} is VALID [2018-11-14 17:08:57,992 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 17:08:57,992 INFO L273 TraceCheckUtils]: 167: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:57,992 INFO L268 TraceCheckUtils]: 168: Hoare quadruple {14241#true} {14242#false} #77#return; {14242#false} is VALID [2018-11-14 17:08:57,993 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 17:08:57,993 INFO L273 TraceCheckUtils]: 170: Hoare triple {14242#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14242#false} is VALID [2018-11-14 17:08:57,993 INFO L273 TraceCheckUtils]: 171: Hoare triple {14242#false} assume !false; {14242#false} is VALID [2018-11-14 17:08:58,005 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 17:08:58,006 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:08:58,006 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 17:08:58,014 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:58,069 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:58,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:08:58,096 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:08:58,438 INFO L256 TraceCheckUtils]: 0: Hoare triple {14241#true} call ULTIMATE.init(); {14241#true} is VALID [2018-11-14 17:08:58,438 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 17:08:58,438 INFO L273 TraceCheckUtils]: 2: Hoare triple {14241#true} assume true; {14241#true} is VALID [2018-11-14 17:08:58,438 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14241#true} {14241#true} #69#return; {14241#true} is VALID [2018-11-14 17:08:58,439 INFO L256 TraceCheckUtils]: 4: Hoare triple {14241#true} call #t~ret12 := main(); {14241#true} is VALID [2018-11-14 17:08:58,439 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 17:08:58,440 INFO L273 TraceCheckUtils]: 6: Hoare triple {14281#(<= main_~i~1 0)} assume true; {14281#(<= main_~i~1 0)} is VALID [2018-11-14 17:08:58,440 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 17:08:58,441 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 17:08:58,441 INFO L273 TraceCheckUtils]: 9: Hoare triple {14244#(<= main_~i~1 1)} assume true; {14244#(<= main_~i~1 1)} is VALID [2018-11-14 17:08:58,441 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 17:08:58,442 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 17:08:58,442 INFO L273 TraceCheckUtils]: 12: Hoare triple {14245#(<= main_~i~1 2)} assume true; {14245#(<= main_~i~1 2)} is VALID [2018-11-14 17:08:58,443 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 17:08:58,443 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 17:08:58,444 INFO L273 TraceCheckUtils]: 15: Hoare triple {14246#(<= main_~i~1 3)} assume true; {14246#(<= main_~i~1 3)} is VALID [2018-11-14 17:08:58,444 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 17:08:58,445 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 17:08:58,446 INFO L273 TraceCheckUtils]: 18: Hoare triple {14247#(<= main_~i~1 4)} assume true; {14247#(<= main_~i~1 4)} is VALID [2018-11-14 17:08:58,446 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 17:08:58,447 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 17:08:58,447 INFO L273 TraceCheckUtils]: 21: Hoare triple {14248#(<= main_~i~1 5)} assume true; {14248#(<= main_~i~1 5)} is VALID [2018-11-14 17:08:58,448 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 17:08:58,449 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 17:08:58,449 INFO L273 TraceCheckUtils]: 24: Hoare triple {14249#(<= main_~i~1 6)} assume true; {14249#(<= main_~i~1 6)} is VALID [2018-11-14 17:08:58,450 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 17:08:58,450 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 17:08:58,451 INFO L273 TraceCheckUtils]: 27: Hoare triple {14250#(<= main_~i~1 7)} assume true; {14250#(<= main_~i~1 7)} is VALID [2018-11-14 17:08:58,451 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 17:08:58,452 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 17:08:58,453 INFO L273 TraceCheckUtils]: 30: Hoare triple {14251#(<= main_~i~1 8)} assume true; {14251#(<= main_~i~1 8)} is VALID [2018-11-14 17:08:58,453 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 17:08:58,454 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 17:08:58,454 INFO L273 TraceCheckUtils]: 33: Hoare triple {14252#(<= main_~i~1 9)} assume true; {14252#(<= main_~i~1 9)} is VALID [2018-11-14 17:08:58,455 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 17:08:58,455 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 17:08:58,456 INFO L273 TraceCheckUtils]: 36: Hoare triple {14253#(<= main_~i~1 10)} assume true; {14253#(<= main_~i~1 10)} is VALID [2018-11-14 17:08:58,457 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 17:08:58,457 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 17:08:58,458 INFO L273 TraceCheckUtils]: 39: Hoare triple {14254#(<= main_~i~1 11)} assume true; {14254#(<= main_~i~1 11)} is VALID [2018-11-14 17:08:58,458 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 17:08:58,459 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 17:08:58,459 INFO L273 TraceCheckUtils]: 42: Hoare triple {14255#(<= main_~i~1 12)} assume true; {14255#(<= main_~i~1 12)} is VALID [2018-11-14 17:08:58,460 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 17:08:58,461 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 17:08:58,461 INFO L273 TraceCheckUtils]: 45: Hoare triple {14256#(<= main_~i~1 13)} assume true; {14256#(<= main_~i~1 13)} is VALID [2018-11-14 17:08:58,462 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 17:08:58,462 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 17:08:58,463 INFO L273 TraceCheckUtils]: 48: Hoare triple {14257#(<= main_~i~1 14)} assume true; {14257#(<= main_~i~1 14)} is VALID [2018-11-14 17:08:58,463 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 17:08:58,464 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 17:08:58,465 INFO L273 TraceCheckUtils]: 51: Hoare triple {14258#(<= main_~i~1 15)} assume true; {14258#(<= main_~i~1 15)} is VALID [2018-11-14 17:08:58,465 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 17:08:58,466 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 17:08:58,466 INFO L273 TraceCheckUtils]: 54: Hoare triple {14259#(<= main_~i~1 16)} assume true; {14259#(<= main_~i~1 16)} is VALID [2018-11-14 17:08:58,467 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 17:08:58,468 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 17:08:58,468 INFO L273 TraceCheckUtils]: 57: Hoare triple {14260#(<= main_~i~1 17)} assume true; {14260#(<= main_~i~1 17)} is VALID [2018-11-14 17:08:58,469 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 17:08:58,469 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 17:08:58,470 INFO L273 TraceCheckUtils]: 60: Hoare triple {14261#(<= main_~i~1 18)} assume true; {14261#(<= main_~i~1 18)} is VALID [2018-11-14 17:08:58,470 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 17:08:58,471 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 17:08:58,472 INFO L273 TraceCheckUtils]: 63: Hoare triple {14262#(<= main_~i~1 19)} assume true; {14262#(<= main_~i~1 19)} is VALID [2018-11-14 17:08:58,472 INFO L273 TraceCheckUtils]: 64: Hoare triple {14262#(<= main_~i~1 19)} assume !(~i~1 < 10000); {14242#false} is VALID [2018-11-14 17:08:58,472 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 17:08:58,473 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 17:08:58,473 INFO L273 TraceCheckUtils]: 67: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,473 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 17:08:58,473 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 17:08:58,473 INFO L273 TraceCheckUtils]: 70: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,474 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 17:08:58,474 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 17:08:58,474 INFO L273 TraceCheckUtils]: 73: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,474 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 17:08:58,474 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 17:08:58,474 INFO L273 TraceCheckUtils]: 76: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,475 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 17:08:58,475 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 17:08:58,475 INFO L273 TraceCheckUtils]: 79: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,475 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 17:08:58,475 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 17:08:58,475 INFO L273 TraceCheckUtils]: 82: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,475 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 17:08:58,475 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 17:08:58,475 INFO L273 TraceCheckUtils]: 85: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,476 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 17:08:58,476 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 17:08:58,476 INFO L273 TraceCheckUtils]: 88: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,476 INFO L273 TraceCheckUtils]: 89: Hoare triple {14242#false} assume !(~i~0 < 10000); {14242#false} is VALID [2018-11-14 17:08:58,476 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 17:08:58,476 INFO L273 TraceCheckUtils]: 91: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,476 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {14242#false} {14242#false} #73#return; {14242#false} is VALID [2018-11-14 17:08:58,476 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 17:08:58,476 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 17:08:58,477 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 17:08:58,477 INFO L273 TraceCheckUtils]: 96: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,477 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 17:08:58,477 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 17:08:58,477 INFO L273 TraceCheckUtils]: 99: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,477 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 17:08:58,477 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 17:08:58,477 INFO L273 TraceCheckUtils]: 102: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,477 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 17:08:58,477 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 17:08:58,478 INFO L273 TraceCheckUtils]: 105: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,478 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 17:08:58,478 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 17:08:58,478 INFO L273 TraceCheckUtils]: 108: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,478 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 17:08:58,478 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 17:08:58,478 INFO L273 TraceCheckUtils]: 111: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,478 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 17:08:58,478 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 17:08:58,479 INFO L273 TraceCheckUtils]: 114: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,479 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 17:08:58,479 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 17:08:58,479 INFO L273 TraceCheckUtils]: 117: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,479 INFO L273 TraceCheckUtils]: 118: Hoare triple {14242#false} assume !(~i~0 < 10000); {14242#false} is VALID [2018-11-14 17:08:58,479 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 17:08:58,479 INFO L273 TraceCheckUtils]: 120: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,479 INFO L268 TraceCheckUtils]: 121: Hoare quadruple {14242#false} {14242#false} #75#return; {14242#false} is VALID [2018-11-14 17:08:58,479 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 17:08:58,479 INFO L273 TraceCheckUtils]: 123: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,480 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 17:08:58,480 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 17:08:58,480 INFO L273 TraceCheckUtils]: 126: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,480 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 17:08:58,480 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 17:08:58,480 INFO L273 TraceCheckUtils]: 129: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,481 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 17:08:58,481 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 17:08:58,481 INFO L273 TraceCheckUtils]: 132: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,481 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 17:08:58,481 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 17:08:58,481 INFO L273 TraceCheckUtils]: 135: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,481 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 17:08:58,482 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 17:08:58,482 INFO L273 TraceCheckUtils]: 138: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,482 INFO L273 TraceCheckUtils]: 139: Hoare triple {14242#false} assume !(~i~2 < 9999); {14242#false} is VALID [2018-11-14 17:08:58,482 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 17:08:58,482 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 17:08:58,482 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 17:08:58,482 INFO L273 TraceCheckUtils]: 143: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,483 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 17:08:58,483 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 17:08:58,483 INFO L273 TraceCheckUtils]: 146: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,483 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 17:08:58,483 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 17:08:58,483 INFO L273 TraceCheckUtils]: 149: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,484 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 17:08:58,484 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 17:08:58,484 INFO L273 TraceCheckUtils]: 152: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,484 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 17:08:58,484 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 17:08:58,484 INFO L273 TraceCheckUtils]: 155: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,484 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 17:08:58,484 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 17:08:58,484 INFO L273 TraceCheckUtils]: 158: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,484 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 17:08:58,485 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 17:08:58,485 INFO L273 TraceCheckUtils]: 161: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,485 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 17:08:58,485 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 17:08:58,485 INFO L273 TraceCheckUtils]: 164: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,485 INFO L273 TraceCheckUtils]: 165: Hoare triple {14242#false} assume !(~i~0 < 10000); {14242#false} is VALID [2018-11-14 17:08:58,485 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 17:08:58,485 INFO L273 TraceCheckUtils]: 167: Hoare triple {14242#false} assume true; {14242#false} is VALID [2018-11-14 17:08:58,485 INFO L268 TraceCheckUtils]: 168: Hoare quadruple {14242#false} {14242#false} #77#return; {14242#false} is VALID [2018-11-14 17:08:58,486 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 17:08:58,486 INFO L273 TraceCheckUtils]: 170: Hoare triple {14242#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14242#false} is VALID [2018-11-14 17:08:58,486 INFO L273 TraceCheckUtils]: 171: Hoare triple {14242#false} assume !false; {14242#false} is VALID [2018-11-14 17:08:58,498 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 17:08:58,520 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:08:58,520 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 22] total 23 [2018-11-14 17:08:58,520 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 172 [2018-11-14 17:08:58,521 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:08:58,521 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states. [2018-11-14 17:08:58,617 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 17:08:58,617 INFO L459 AbstractCegarLoop]: Interpolant automaton has 23 states [2018-11-14 17:08:58,617 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2018-11-14 17:08:58,618 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-14 17:08:58,618 INFO L87 Difference]: Start difference. First operand 119 states and 123 transitions. Second operand 23 states. [2018-11-14 17:08:59,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:59,514 INFO L93 Difference]: Finished difference Result 177 states and 185 transitions. [2018-11-14 17:08:59,514 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-14 17:08:59,515 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 172 [2018-11-14 17:08:59,515 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:08:59,515 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-14 17:08:59,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 117 transitions. [2018-11-14 17:08:59,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-14 17:08:59,517 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 117 transitions. [2018-11-14 17:08:59,517 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 117 transitions. [2018-11-14 17:08:59,619 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 17:08:59,621 INFO L225 Difference]: With dead ends: 177 [2018-11-14 17:08:59,621 INFO L226 Difference]: Without dead ends: 123 [2018-11-14 17:08:59,622 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 17:08:59,623 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states. [2018-11-14 17:08:59,694 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 122. [2018-11-14 17:08:59,694 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:08:59,694 INFO L82 GeneralOperation]: Start isEquivalent. First operand 123 states. Second operand 122 states. [2018-11-14 17:08:59,694 INFO L74 IsIncluded]: Start isIncluded. First operand 123 states. Second operand 122 states. [2018-11-14 17:08:59,694 INFO L87 Difference]: Start difference. First operand 123 states. Second operand 122 states. [2018-11-14 17:08:59,697 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:59,697 INFO L93 Difference]: Finished difference Result 123 states and 127 transitions. [2018-11-14 17:08:59,697 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 127 transitions. [2018-11-14 17:08:59,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:59,698 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:59,698 INFO L74 IsIncluded]: Start isIncluded. First operand 122 states. Second operand 123 states. [2018-11-14 17:08:59,698 INFO L87 Difference]: Start difference. First operand 122 states. Second operand 123 states. [2018-11-14 17:08:59,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:08:59,700 INFO L93 Difference]: Finished difference Result 123 states and 127 transitions. [2018-11-14 17:08:59,700 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 127 transitions. [2018-11-14 17:08:59,701 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:08:59,701 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:08:59,701 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:08:59,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:08:59,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 122 states. [2018-11-14 17:08:59,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 126 transitions. [2018-11-14 17:08:59,703 INFO L78 Accepts]: Start accepts. Automaton has 122 states and 126 transitions. Word has length 172 [2018-11-14 17:08:59,704 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:08:59,704 INFO L480 AbstractCegarLoop]: Abstraction has 122 states and 126 transitions. [2018-11-14 17:08:59,704 INFO L481 AbstractCegarLoop]: Interpolant automaton has 23 states. [2018-11-14 17:08:59,704 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 126 transitions. [2018-11-14 17:08:59,705 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 176 [2018-11-14 17:08:59,705 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:08:59,705 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 17:08:59,706 INFO L423 AbstractCegarLoop]: === Iteration 24 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:08:59,706 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:08:59,706 INFO L82 PathProgramCache]: Analyzing trace with hash -1295769913, now seen corresponding path program 20 times [2018-11-14 17:08:59,706 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:08:59,706 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:08:59,707 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:59,707 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:08:59,707 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:08:59,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:01,107 INFO L256 TraceCheckUtils]: 0: Hoare triple {15428#true} call ULTIMATE.init(); {15428#true} is VALID [2018-11-14 17:09:01,107 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 17:09:01,108 INFO L273 TraceCheckUtils]: 2: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,108 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15428#true} {15428#true} #69#return; {15428#true} is VALID [2018-11-14 17:09:01,108 INFO L256 TraceCheckUtils]: 4: Hoare triple {15428#true} call #t~ret12 := main(); {15428#true} is VALID [2018-11-14 17:09:01,108 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 17:09:01,109 INFO L273 TraceCheckUtils]: 6: Hoare triple {15430#(= main_~i~1 0)} assume true; {15430#(= main_~i~1 0)} is VALID [2018-11-14 17:09:01,109 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 17:09:01,110 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 17:09:01,111 INFO L273 TraceCheckUtils]: 9: Hoare triple {15431#(<= main_~i~1 1)} assume true; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:01,111 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 17:09:01,111 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 17:09:01,112 INFO L273 TraceCheckUtils]: 12: Hoare triple {15432#(<= main_~i~1 2)} assume true; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:01,112 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 17:09:01,112 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 17:09:01,113 INFO L273 TraceCheckUtils]: 15: Hoare triple {15433#(<= main_~i~1 3)} assume true; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:01,113 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 17:09:01,114 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 17:09:01,115 INFO L273 TraceCheckUtils]: 18: Hoare triple {15434#(<= main_~i~1 4)} assume true; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:01,115 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 17:09:01,116 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 17:09:01,116 INFO L273 TraceCheckUtils]: 21: Hoare triple {15435#(<= main_~i~1 5)} assume true; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:01,117 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 17:09:01,118 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 17:09:01,118 INFO L273 TraceCheckUtils]: 24: Hoare triple {15436#(<= main_~i~1 6)} assume true; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:01,119 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 17:09:01,119 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 17:09:01,120 INFO L273 TraceCheckUtils]: 27: Hoare triple {15437#(<= main_~i~1 7)} assume true; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:01,120 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 17:09:01,121 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 17:09:01,122 INFO L273 TraceCheckUtils]: 30: Hoare triple {15438#(<= main_~i~1 8)} assume true; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:01,122 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 17:09:01,123 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 17:09:01,123 INFO L273 TraceCheckUtils]: 33: Hoare triple {15439#(<= main_~i~1 9)} assume true; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:01,124 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 17:09:01,125 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 17:09:01,125 INFO L273 TraceCheckUtils]: 36: Hoare triple {15440#(<= main_~i~1 10)} assume true; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:01,126 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 17:09:01,126 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 17:09:01,127 INFO L273 TraceCheckUtils]: 39: Hoare triple {15441#(<= main_~i~1 11)} assume true; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:01,127 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 17:09:01,128 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 17:09:01,129 INFO L273 TraceCheckUtils]: 42: Hoare triple {15442#(<= main_~i~1 12)} assume true; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:01,129 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 17:09:01,130 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 17:09:01,130 INFO L273 TraceCheckUtils]: 45: Hoare triple {15443#(<= main_~i~1 13)} assume true; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:01,131 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 17:09:01,132 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 17:09:01,132 INFO L273 TraceCheckUtils]: 48: Hoare triple {15444#(<= main_~i~1 14)} assume true; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:01,133 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 17:09:01,133 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 17:09:01,134 INFO L273 TraceCheckUtils]: 51: Hoare triple {15445#(<= main_~i~1 15)} assume true; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:01,134 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 17:09:01,135 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 17:09:01,136 INFO L273 TraceCheckUtils]: 54: Hoare triple {15446#(<= main_~i~1 16)} assume true; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:01,136 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 17:09:01,137 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 17:09:01,137 INFO L273 TraceCheckUtils]: 57: Hoare triple {15447#(<= main_~i~1 17)} assume true; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:01,138 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 17:09:01,139 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 17:09:01,139 INFO L273 TraceCheckUtils]: 60: Hoare triple {15448#(<= main_~i~1 18)} assume true; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:01,140 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 17:09:01,140 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 17:09:01,141 INFO L273 TraceCheckUtils]: 63: Hoare triple {15449#(<= main_~i~1 19)} assume true; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:01,141 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 17:09:01,142 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 17:09:01,143 INFO L273 TraceCheckUtils]: 66: Hoare triple {15450#(<= main_~i~1 20)} assume true; {15450#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:01,143 INFO L273 TraceCheckUtils]: 67: Hoare triple {15450#(<= main_~i~1 20)} assume !(~i~1 < 10000); {15429#false} is VALID [2018-11-14 17:09:01,143 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 17:09:01,144 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 17:09:01,144 INFO L273 TraceCheckUtils]: 70: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,144 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 17:09:01,144 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 17:09:01,144 INFO L273 TraceCheckUtils]: 73: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,145 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 17:09:01,145 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 17:09:01,145 INFO L273 TraceCheckUtils]: 76: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,145 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 17:09:01,145 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 17:09:01,145 INFO L273 TraceCheckUtils]: 79: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,146 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 17:09:01,146 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 17:09:01,146 INFO L273 TraceCheckUtils]: 82: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,146 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 17:09:01,146 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 17:09:01,146 INFO L273 TraceCheckUtils]: 85: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,146 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 17:09:01,146 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 17:09:01,147 INFO L273 TraceCheckUtils]: 88: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,147 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 17:09:01,147 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 17:09:01,147 INFO L273 TraceCheckUtils]: 91: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,147 INFO L273 TraceCheckUtils]: 92: Hoare triple {15428#true} assume !(~i~0 < 10000); {15428#true} is VALID [2018-11-14 17:09:01,147 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 17:09:01,147 INFO L273 TraceCheckUtils]: 94: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,147 INFO L268 TraceCheckUtils]: 95: Hoare quadruple {15428#true} {15429#false} #73#return; {15429#false} is VALID [2018-11-14 17:09:01,147 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 17:09:01,148 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 17:09:01,148 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 17:09:01,148 INFO L273 TraceCheckUtils]: 99: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,148 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 17:09:01,148 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 17:09:01,148 INFO L273 TraceCheckUtils]: 102: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,148 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 17:09:01,148 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 17:09:01,148 INFO L273 TraceCheckUtils]: 105: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,149 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 17:09:01,149 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 17:09:01,149 INFO L273 TraceCheckUtils]: 108: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,149 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 17:09:01,149 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 17:09:01,149 INFO L273 TraceCheckUtils]: 111: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,149 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 17:09:01,149 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 17:09:01,149 INFO L273 TraceCheckUtils]: 114: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,149 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 17:09:01,150 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 17:09:01,150 INFO L273 TraceCheckUtils]: 117: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,150 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 17:09:01,150 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 17:09:01,150 INFO L273 TraceCheckUtils]: 120: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,150 INFO L273 TraceCheckUtils]: 121: Hoare triple {15428#true} assume !(~i~0 < 10000); {15428#true} is VALID [2018-11-14 17:09:01,150 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 17:09:01,150 INFO L273 TraceCheckUtils]: 123: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,150 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {15428#true} {15429#false} #75#return; {15429#false} is VALID [2018-11-14 17:09:01,151 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 17:09:01,151 INFO L273 TraceCheckUtils]: 126: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:01,151 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 17:09:01,151 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 17:09:01,151 INFO L273 TraceCheckUtils]: 129: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:01,151 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 17:09:01,151 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 17:09:01,151 INFO L273 TraceCheckUtils]: 132: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:01,151 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 17:09:01,151 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 17:09:01,152 INFO L273 TraceCheckUtils]: 135: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:01,152 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 17:09:01,152 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 17:09:01,152 INFO L273 TraceCheckUtils]: 138: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:01,152 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 17:09:01,152 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 17:09:01,152 INFO L273 TraceCheckUtils]: 141: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:01,152 INFO L273 TraceCheckUtils]: 142: Hoare triple {15429#false} assume !(~i~2 < 9999); {15429#false} is VALID [2018-11-14 17:09:01,152 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 17:09:01,153 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 17:09:01,153 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 17:09:01,153 INFO L273 TraceCheckUtils]: 146: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,153 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 17:09:01,153 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 17:09:01,153 INFO L273 TraceCheckUtils]: 149: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,153 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 17:09:01,153 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 17:09:01,153 INFO L273 TraceCheckUtils]: 152: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,154 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 17:09:01,154 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 17:09:01,154 INFO L273 TraceCheckUtils]: 155: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,154 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 17:09:01,154 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 17:09:01,154 INFO L273 TraceCheckUtils]: 158: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,154 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 17:09:01,154 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 17:09:01,154 INFO L273 TraceCheckUtils]: 161: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,154 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 17:09:01,155 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 17:09:01,155 INFO L273 TraceCheckUtils]: 164: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,155 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 17:09:01,155 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 17:09:01,155 INFO L273 TraceCheckUtils]: 167: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,155 INFO L273 TraceCheckUtils]: 168: Hoare triple {15428#true} assume !(~i~0 < 10000); {15428#true} is VALID [2018-11-14 17:09:01,155 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 17:09:01,155 INFO L273 TraceCheckUtils]: 170: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:01,155 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {15428#true} {15429#false} #77#return; {15429#false} is VALID [2018-11-14 17:09:01,155 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 17:09:01,156 INFO L273 TraceCheckUtils]: 173: Hoare triple {15429#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15429#false} is VALID [2018-11-14 17:09:01,156 INFO L273 TraceCheckUtils]: 174: Hoare triple {15429#false} assume !false; {15429#false} is VALID [2018-11-14 17:09:01,169 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 17:09:01,169 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:01,169 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 17:09:01,178 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:09:01,247 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:09:01,248 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:01,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:01,298 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:02,574 INFO L256 TraceCheckUtils]: 0: Hoare triple {15428#true} call ULTIMATE.init(); {15428#true} is VALID [2018-11-14 17:09:02,574 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 17:09:02,574 INFO L273 TraceCheckUtils]: 2: Hoare triple {15428#true} assume true; {15428#true} is VALID [2018-11-14 17:09:02,574 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15428#true} {15428#true} #69#return; {15428#true} is VALID [2018-11-14 17:09:02,575 INFO L256 TraceCheckUtils]: 4: Hoare triple {15428#true} call #t~ret12 := main(); {15428#true} is VALID [2018-11-14 17:09:02,575 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 17:09:02,576 INFO L273 TraceCheckUtils]: 6: Hoare triple {15469#(<= main_~i~1 0)} assume true; {15469#(<= main_~i~1 0)} is VALID [2018-11-14 17:09:02,576 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 17:09:02,576 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 17:09:02,577 INFO L273 TraceCheckUtils]: 9: Hoare triple {15431#(<= main_~i~1 1)} assume true; {15431#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:02,577 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 17:09:02,578 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 17:09:02,578 INFO L273 TraceCheckUtils]: 12: Hoare triple {15432#(<= main_~i~1 2)} assume true; {15432#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:02,579 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 17:09:02,579 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 17:09:02,580 INFO L273 TraceCheckUtils]: 15: Hoare triple {15433#(<= main_~i~1 3)} assume true; {15433#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:02,580 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 17:09:02,581 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 17:09:02,582 INFO L273 TraceCheckUtils]: 18: Hoare triple {15434#(<= main_~i~1 4)} assume true; {15434#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:02,582 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 17:09:02,583 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 17:09:02,583 INFO L273 TraceCheckUtils]: 21: Hoare triple {15435#(<= main_~i~1 5)} assume true; {15435#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:02,584 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 17:09:02,585 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 17:09:02,585 INFO L273 TraceCheckUtils]: 24: Hoare triple {15436#(<= main_~i~1 6)} assume true; {15436#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:02,586 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 17:09:02,586 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 17:09:02,587 INFO L273 TraceCheckUtils]: 27: Hoare triple {15437#(<= main_~i~1 7)} assume true; {15437#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:02,587 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 17:09:02,588 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 17:09:02,589 INFO L273 TraceCheckUtils]: 30: Hoare triple {15438#(<= main_~i~1 8)} assume true; {15438#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:02,589 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 17:09:02,590 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 17:09:02,590 INFO L273 TraceCheckUtils]: 33: Hoare triple {15439#(<= main_~i~1 9)} assume true; {15439#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:02,591 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 17:09:02,591 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 17:09:02,592 INFO L273 TraceCheckUtils]: 36: Hoare triple {15440#(<= main_~i~1 10)} assume true; {15440#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:02,593 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 17:09:02,593 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 17:09:02,594 INFO L273 TraceCheckUtils]: 39: Hoare triple {15441#(<= main_~i~1 11)} assume true; {15441#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:02,594 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 17:09:02,595 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 17:09:02,595 INFO L273 TraceCheckUtils]: 42: Hoare triple {15442#(<= main_~i~1 12)} assume true; {15442#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:02,596 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 17:09:02,597 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 17:09:02,597 INFO L273 TraceCheckUtils]: 45: Hoare triple {15443#(<= main_~i~1 13)} assume true; {15443#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:02,598 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 17:09:02,598 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 17:09:02,599 INFO L273 TraceCheckUtils]: 48: Hoare triple {15444#(<= main_~i~1 14)} assume true; {15444#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:02,599 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 17:09:02,600 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 17:09:02,601 INFO L273 TraceCheckUtils]: 51: Hoare triple {15445#(<= main_~i~1 15)} assume true; {15445#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:02,601 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 17:09:02,602 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 17:09:02,602 INFO L273 TraceCheckUtils]: 54: Hoare triple {15446#(<= main_~i~1 16)} assume true; {15446#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:02,603 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 17:09:02,604 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 17:09:02,604 INFO L273 TraceCheckUtils]: 57: Hoare triple {15447#(<= main_~i~1 17)} assume true; {15447#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:02,605 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 17:09:02,605 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 17:09:02,606 INFO L273 TraceCheckUtils]: 60: Hoare triple {15448#(<= main_~i~1 18)} assume true; {15448#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:02,606 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 17:09:02,626 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 17:09:02,643 INFO L273 TraceCheckUtils]: 63: Hoare triple {15449#(<= main_~i~1 19)} assume true; {15449#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:02,651 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 17:09:02,654 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 17:09:02,654 INFO L273 TraceCheckUtils]: 66: Hoare triple {15450#(<= main_~i~1 20)} assume true; {15450#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:02,654 INFO L273 TraceCheckUtils]: 67: Hoare triple {15450#(<= main_~i~1 20)} assume !(~i~1 < 10000); {15429#false} is VALID [2018-11-14 17:09:02,655 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 17:09:02,655 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 17:09:02,655 INFO L273 TraceCheckUtils]: 70: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,655 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 17:09:02,655 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 17:09:02,655 INFO L273 TraceCheckUtils]: 73: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,655 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 17:09:02,655 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 17:09:02,655 INFO L273 TraceCheckUtils]: 76: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,655 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 17:09:02,656 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 17:09:02,656 INFO L273 TraceCheckUtils]: 79: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,656 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 17:09:02,656 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 17:09:02,656 INFO L273 TraceCheckUtils]: 82: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,656 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 17:09:02,656 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 17:09:02,656 INFO L273 TraceCheckUtils]: 85: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,656 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 17:09:02,657 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 17:09:02,657 INFO L273 TraceCheckUtils]: 88: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,657 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 17:09:02,657 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 17:09:02,657 INFO L273 TraceCheckUtils]: 91: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,657 INFO L273 TraceCheckUtils]: 92: Hoare triple {15429#false} assume !(~i~0 < 10000); {15429#false} is VALID [2018-11-14 17:09:02,657 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 17:09:02,657 INFO L273 TraceCheckUtils]: 94: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,657 INFO L268 TraceCheckUtils]: 95: Hoare quadruple {15429#false} {15429#false} #73#return; {15429#false} is VALID [2018-11-14 17:09:02,657 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 17:09:02,658 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 17:09:02,658 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 17:09:02,658 INFO L273 TraceCheckUtils]: 99: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,658 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 17:09:02,658 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 17:09:02,658 INFO L273 TraceCheckUtils]: 102: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,658 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 17:09:02,658 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 17:09:02,658 INFO L273 TraceCheckUtils]: 105: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,658 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 17:09:02,659 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 17:09:02,659 INFO L273 TraceCheckUtils]: 108: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,659 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 17:09:02,659 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 17:09:02,659 INFO L273 TraceCheckUtils]: 111: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,659 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 17:09:02,659 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 17:09:02,659 INFO L273 TraceCheckUtils]: 114: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,659 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 17:09:02,659 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 17:09:02,660 INFO L273 TraceCheckUtils]: 117: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,660 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 17:09:02,660 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 17:09:02,660 INFO L273 TraceCheckUtils]: 120: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,660 INFO L273 TraceCheckUtils]: 121: Hoare triple {15429#false} assume !(~i~0 < 10000); {15429#false} is VALID [2018-11-14 17:09:02,660 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 17:09:02,660 INFO L273 TraceCheckUtils]: 123: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,660 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {15429#false} {15429#false} #75#return; {15429#false} is VALID [2018-11-14 17:09:02,660 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 17:09:02,661 INFO L273 TraceCheckUtils]: 126: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,661 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 17:09:02,661 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 17:09:02,661 INFO L273 TraceCheckUtils]: 129: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,661 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 17:09:02,661 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 17:09:02,661 INFO L273 TraceCheckUtils]: 132: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,661 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 17:09:02,661 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 17:09:02,661 INFO L273 TraceCheckUtils]: 135: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,662 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 17:09:02,662 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 17:09:02,662 INFO L273 TraceCheckUtils]: 138: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,662 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 17:09:02,662 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 17:09:02,662 INFO L273 TraceCheckUtils]: 141: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,662 INFO L273 TraceCheckUtils]: 142: Hoare triple {15429#false} assume !(~i~2 < 9999); {15429#false} is VALID [2018-11-14 17:09:02,662 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 17:09:02,662 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 17:09:02,662 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 17:09:02,663 INFO L273 TraceCheckUtils]: 146: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,663 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 17:09:02,663 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 17:09:02,663 INFO L273 TraceCheckUtils]: 149: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,663 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 17:09:02,663 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 17:09:02,663 INFO L273 TraceCheckUtils]: 152: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,663 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 17:09:02,663 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 17:09:02,664 INFO L273 TraceCheckUtils]: 155: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,664 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 17:09:02,664 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 17:09:02,664 INFO L273 TraceCheckUtils]: 158: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,664 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 17:09:02,664 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 17:09:02,664 INFO L273 TraceCheckUtils]: 161: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,664 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 17:09:02,664 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 17:09:02,664 INFO L273 TraceCheckUtils]: 164: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,665 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 17:09:02,665 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 17:09:02,665 INFO L273 TraceCheckUtils]: 167: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,665 INFO L273 TraceCheckUtils]: 168: Hoare triple {15429#false} assume !(~i~0 < 10000); {15429#false} is VALID [2018-11-14 17:09:02,665 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 17:09:02,665 INFO L273 TraceCheckUtils]: 170: Hoare triple {15429#false} assume true; {15429#false} is VALID [2018-11-14 17:09:02,665 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {15429#false} {15429#false} #77#return; {15429#false} is VALID [2018-11-14 17:09:02,665 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 17:09:02,665 INFO L273 TraceCheckUtils]: 173: Hoare triple {15429#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15429#false} is VALID [2018-11-14 17:09:02,665 INFO L273 TraceCheckUtils]: 174: Hoare triple {15429#false} assume !false; {15429#false} is VALID [2018-11-14 17:09:02,679 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 17:09:02,699 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:02,699 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 23] total 24 [2018-11-14 17:09:02,699 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 175 [2018-11-14 17:09:02,700 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:02,700 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states. [2018-11-14 17:09:02,796 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 17:09:02,797 INFO L459 AbstractCegarLoop]: Interpolant automaton has 24 states [2018-11-14 17:09:02,797 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2018-11-14 17:09:02,797 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=276, Invalid=276, Unknown=0, NotChecked=0, Total=552 [2018-11-14 17:09:02,798 INFO L87 Difference]: Start difference. First operand 122 states and 126 transitions. Second operand 24 states. [2018-11-14 17:09:03,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:03,467 INFO L93 Difference]: Finished difference Result 180 states and 188 transitions. [2018-11-14 17:09:03,467 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2018-11-14 17:09:03,467 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 175 [2018-11-14 17:09:03,467 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:03,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-14 17:09:03,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 120 transitions. [2018-11-14 17:09:03,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-14 17:09:03,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 120 transitions. [2018-11-14 17:09:03,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 120 transitions. [2018-11-14 17:09:03,612 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 17:09:03,615 INFO L225 Difference]: With dead ends: 180 [2018-11-14 17:09:03,615 INFO L226 Difference]: Without dead ends: 126 [2018-11-14 17:09:03,616 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=276, Invalid=276, Unknown=0, NotChecked=0, Total=552 [2018-11-14 17:09:03,616 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2018-11-14 17:09:03,661 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 125. [2018-11-14 17:09:03,661 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:03,661 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand 125 states. [2018-11-14 17:09:03,662 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand 125 states. [2018-11-14 17:09:03,662 INFO L87 Difference]: Start difference. First operand 126 states. Second operand 125 states. [2018-11-14 17:09:03,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:03,665 INFO L93 Difference]: Finished difference Result 126 states and 130 transitions. [2018-11-14 17:09:03,665 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 130 transitions. [2018-11-14 17:09:03,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:03,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:03,665 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand 126 states. [2018-11-14 17:09:03,665 INFO L87 Difference]: Start difference. First operand 125 states. Second operand 126 states. [2018-11-14 17:09:03,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:03,668 INFO L93 Difference]: Finished difference Result 126 states and 130 transitions. [2018-11-14 17:09:03,668 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 130 transitions. [2018-11-14 17:09:03,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:03,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:03,669 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:03,669 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:03,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 125 states. [2018-11-14 17:09:03,671 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 129 transitions. [2018-11-14 17:09:03,671 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 129 transitions. Word has length 175 [2018-11-14 17:09:03,671 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:03,671 INFO L480 AbstractCegarLoop]: Abstraction has 125 states and 129 transitions. [2018-11-14 17:09:03,671 INFO L481 AbstractCegarLoop]: Interpolant automaton has 24 states. [2018-11-14 17:09:03,672 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 129 transitions. [2018-11-14 17:09:03,672 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 179 [2018-11-14 17:09:03,673 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:03,673 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 17:09:03,673 INFO L423 AbstractCegarLoop]: === Iteration 25 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:03,673 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:03,673 INFO L82 PathProgramCache]: Analyzing trace with hash -325103012, now seen corresponding path program 21 times [2018-11-14 17:09:03,674 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:03,674 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:03,674 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:03,674 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:03,675 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:03,699 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:04,115 INFO L256 TraceCheckUtils]: 0: Hoare triple {16639#true} call ULTIMATE.init(); {16639#true} is VALID [2018-11-14 17:09:04,116 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 17:09:04,116 INFO L273 TraceCheckUtils]: 2: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,116 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16639#true} {16639#true} #69#return; {16639#true} is VALID [2018-11-14 17:09:04,116 INFO L256 TraceCheckUtils]: 4: Hoare triple {16639#true} call #t~ret12 := main(); {16639#true} is VALID [2018-11-14 17:09:04,117 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 17:09:04,117 INFO L273 TraceCheckUtils]: 6: Hoare triple {16641#(= main_~i~1 0)} assume true; {16641#(= main_~i~1 0)} is VALID [2018-11-14 17:09:04,118 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 17:09:04,119 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 17:09:04,119 INFO L273 TraceCheckUtils]: 9: Hoare triple {16642#(<= main_~i~1 1)} assume true; {16642#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:04,119 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 17:09:04,120 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 17:09:04,120 INFO L273 TraceCheckUtils]: 12: Hoare triple {16643#(<= main_~i~1 2)} assume true; {16643#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:04,120 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 17:09:04,121 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 17:09:04,121 INFO L273 TraceCheckUtils]: 15: Hoare triple {16644#(<= main_~i~1 3)} assume true; {16644#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:04,121 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 17:09:04,122 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 17:09:04,122 INFO L273 TraceCheckUtils]: 18: Hoare triple {16645#(<= main_~i~1 4)} assume true; {16645#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:04,123 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 17:09:04,123 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 17:09:04,124 INFO L273 TraceCheckUtils]: 21: Hoare triple {16646#(<= main_~i~1 5)} assume true; {16646#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:04,124 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 17:09:04,125 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 17:09:04,126 INFO L273 TraceCheckUtils]: 24: Hoare triple {16647#(<= main_~i~1 6)} assume true; {16647#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:04,126 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 17:09:04,127 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 17:09:04,127 INFO L273 TraceCheckUtils]: 27: Hoare triple {16648#(<= main_~i~1 7)} assume true; {16648#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:04,128 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 17:09:04,129 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 17:09:04,129 INFO L273 TraceCheckUtils]: 30: Hoare triple {16649#(<= main_~i~1 8)} assume true; {16649#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:04,130 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 17:09:04,130 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 17:09:04,131 INFO L273 TraceCheckUtils]: 33: Hoare triple {16650#(<= main_~i~1 9)} assume true; {16650#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:04,131 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 17:09:04,132 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 17:09:04,133 INFO L273 TraceCheckUtils]: 36: Hoare triple {16651#(<= main_~i~1 10)} assume true; {16651#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:04,133 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 17:09:04,134 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 17:09:04,134 INFO L273 TraceCheckUtils]: 39: Hoare triple {16652#(<= main_~i~1 11)} assume true; {16652#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:04,135 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 17:09:04,136 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 17:09:04,136 INFO L273 TraceCheckUtils]: 42: Hoare triple {16653#(<= main_~i~1 12)} assume true; {16653#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:04,137 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 17:09:04,137 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 17:09:04,138 INFO L273 TraceCheckUtils]: 45: Hoare triple {16654#(<= main_~i~1 13)} assume true; {16654#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:04,138 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 17:09:04,139 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 17:09:04,139 INFO L273 TraceCheckUtils]: 48: Hoare triple {16655#(<= main_~i~1 14)} assume true; {16655#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:04,140 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 17:09:04,141 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 17:09:04,141 INFO L273 TraceCheckUtils]: 51: Hoare triple {16656#(<= main_~i~1 15)} assume true; {16656#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:04,142 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 17:09:04,142 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 17:09:04,143 INFO L273 TraceCheckUtils]: 54: Hoare triple {16657#(<= main_~i~1 16)} assume true; {16657#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:04,143 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 17:09:04,144 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 17:09:04,145 INFO L273 TraceCheckUtils]: 57: Hoare triple {16658#(<= main_~i~1 17)} assume true; {16658#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:04,145 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 17:09:04,146 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 17:09:04,146 INFO L273 TraceCheckUtils]: 60: Hoare triple {16659#(<= main_~i~1 18)} assume true; {16659#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:04,147 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 17:09:04,148 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 17:09:04,148 INFO L273 TraceCheckUtils]: 63: Hoare triple {16660#(<= main_~i~1 19)} assume true; {16660#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:04,149 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 17:09:04,149 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 17:09:04,150 INFO L273 TraceCheckUtils]: 66: Hoare triple {16661#(<= main_~i~1 20)} assume true; {16661#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:04,150 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 17:09:04,151 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 17:09:04,152 INFO L273 TraceCheckUtils]: 69: Hoare triple {16662#(<= main_~i~1 21)} assume true; {16662#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:04,152 INFO L273 TraceCheckUtils]: 70: Hoare triple {16662#(<= main_~i~1 21)} assume !(~i~1 < 10000); {16640#false} is VALID [2018-11-14 17:09:04,153 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 17:09:04,153 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 17:09:04,153 INFO L273 TraceCheckUtils]: 73: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,153 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 17:09:04,153 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 17:09:04,154 INFO L273 TraceCheckUtils]: 76: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,154 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 17:09:04,154 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 17:09:04,154 INFO L273 TraceCheckUtils]: 79: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,154 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 17:09:04,154 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 17:09:04,155 INFO L273 TraceCheckUtils]: 82: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,155 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 17:09:04,155 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 17:09:04,155 INFO L273 TraceCheckUtils]: 85: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,155 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 17:09:04,156 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 17:09:04,156 INFO L273 TraceCheckUtils]: 88: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,156 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 17:09:04,156 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 17:09:04,156 INFO L273 TraceCheckUtils]: 91: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,156 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 17:09:04,157 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 17:09:04,157 INFO L273 TraceCheckUtils]: 94: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,157 INFO L273 TraceCheckUtils]: 95: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 17:09:04,157 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 17:09:04,157 INFO L273 TraceCheckUtils]: 97: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,158 INFO L268 TraceCheckUtils]: 98: Hoare quadruple {16639#true} {16640#false} #73#return; {16640#false} is VALID [2018-11-14 17:09:04,158 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 17:09:04,158 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 17:09:04,158 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 17:09:04,158 INFO L273 TraceCheckUtils]: 102: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,158 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 17:09:04,158 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 17:09:04,158 INFO L273 TraceCheckUtils]: 105: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,158 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 17:09:04,158 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 17:09:04,159 INFO L273 TraceCheckUtils]: 108: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,159 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 17:09:04,159 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 17:09:04,159 INFO L273 TraceCheckUtils]: 111: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,159 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 17:09:04,159 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 17:09:04,159 INFO L273 TraceCheckUtils]: 114: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,159 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 17:09:04,159 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 17:09:04,160 INFO L273 TraceCheckUtils]: 117: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,160 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 17:09:04,160 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 17:09:04,160 INFO L273 TraceCheckUtils]: 120: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,160 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 17:09:04,160 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 17:09:04,160 INFO L273 TraceCheckUtils]: 123: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,160 INFO L273 TraceCheckUtils]: 124: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 17:09:04,160 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 17:09:04,160 INFO L273 TraceCheckUtils]: 126: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,161 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {16639#true} {16640#false} #75#return; {16640#false} is VALID [2018-11-14 17:09:04,161 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 17:09:04,161 INFO L273 TraceCheckUtils]: 129: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,161 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 17:09:04,161 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 17:09:04,161 INFO L273 TraceCheckUtils]: 132: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,161 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 17:09:04,161 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 17:09:04,161 INFO L273 TraceCheckUtils]: 135: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,162 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 17:09:04,162 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 17:09:04,162 INFO L273 TraceCheckUtils]: 138: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,162 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 17:09:04,162 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 17:09:04,162 INFO L273 TraceCheckUtils]: 141: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,162 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 17:09:04,162 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 17:09:04,163 INFO L273 TraceCheckUtils]: 144: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,163 INFO L273 TraceCheckUtils]: 145: Hoare triple {16640#false} assume !(~i~2 < 9999); {16640#false} is VALID [2018-11-14 17:09:04,163 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 17:09:04,163 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 17:09:04,163 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 17:09:04,163 INFO L273 TraceCheckUtils]: 149: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,163 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 17:09:04,164 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 17:09:04,164 INFO L273 TraceCheckUtils]: 152: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,164 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 17:09:04,164 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 17:09:04,164 INFO L273 TraceCheckUtils]: 155: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,164 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 17:09:04,165 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 17:09:04,165 INFO L273 TraceCheckUtils]: 158: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,165 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 17:09:04,165 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 17:09:04,165 INFO L273 TraceCheckUtils]: 161: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,165 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 17:09:04,165 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 17:09:04,166 INFO L273 TraceCheckUtils]: 164: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,166 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 17:09:04,166 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 17:09:04,166 INFO L273 TraceCheckUtils]: 167: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,166 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 17:09:04,166 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 17:09:04,166 INFO L273 TraceCheckUtils]: 170: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,167 INFO L273 TraceCheckUtils]: 171: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 17:09:04,167 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 17:09:04,167 INFO L273 TraceCheckUtils]: 173: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,167 INFO L268 TraceCheckUtils]: 174: Hoare quadruple {16639#true} {16640#false} #77#return; {16640#false} is VALID [2018-11-14 17:09:04,167 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 17:09:04,167 INFO L273 TraceCheckUtils]: 176: Hoare triple {16640#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16640#false} is VALID [2018-11-14 17:09:04,168 INFO L273 TraceCheckUtils]: 177: Hoare triple {16640#false} assume !false; {16640#false} is VALID [2018-11-14 17:09:04,186 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 17:09:04,186 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:04,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 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 17:09:04,200 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:09:04,273 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-14 17:09:04,274 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:04,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:04,311 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:04,525 INFO L256 TraceCheckUtils]: 0: Hoare triple {16639#true} call ULTIMATE.init(); {16639#true} is VALID [2018-11-14 17:09:04,525 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 17:09:04,525 INFO L273 TraceCheckUtils]: 2: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,525 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16639#true} {16639#true} #69#return; {16639#true} is VALID [2018-11-14 17:09:04,526 INFO L256 TraceCheckUtils]: 4: Hoare triple {16639#true} call #t~ret12 := main(); {16639#true} is VALID [2018-11-14 17:09:04,526 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 17:09:04,526 INFO L273 TraceCheckUtils]: 6: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,526 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 17:09:04,526 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 17:09:04,526 INFO L273 TraceCheckUtils]: 9: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,527 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 17:09:04,527 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 17:09:04,527 INFO L273 TraceCheckUtils]: 12: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,527 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 17:09:04,527 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 17:09:04,527 INFO L273 TraceCheckUtils]: 15: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,527 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 17:09:04,527 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 17:09:04,527 INFO L273 TraceCheckUtils]: 18: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,527 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 17:09:04,528 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 17:09:04,528 INFO L273 TraceCheckUtils]: 21: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,528 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 17:09:04,528 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 17:09:04,528 INFO L273 TraceCheckUtils]: 24: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,528 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 17:09:04,528 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 17:09:04,528 INFO L273 TraceCheckUtils]: 27: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,528 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 17:09:04,528 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 17:09:04,529 INFO L273 TraceCheckUtils]: 30: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,529 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 17:09:04,529 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 17:09:04,529 INFO L273 TraceCheckUtils]: 33: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,529 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 17:09:04,529 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 17:09:04,529 INFO L273 TraceCheckUtils]: 36: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,529 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 17:09:04,529 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 17:09:04,530 INFO L273 TraceCheckUtils]: 39: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,530 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 17:09:04,530 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 17:09:04,530 INFO L273 TraceCheckUtils]: 42: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,530 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 17:09:04,530 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 17:09:04,530 INFO L273 TraceCheckUtils]: 45: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,530 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 17:09:04,530 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 17:09:04,530 INFO L273 TraceCheckUtils]: 48: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,531 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 17:09:04,531 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 17:09:04,531 INFO L273 TraceCheckUtils]: 51: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,531 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 17:09:04,531 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 17:09:04,531 INFO L273 TraceCheckUtils]: 54: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,531 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 17:09:04,531 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 17:09:04,531 INFO L273 TraceCheckUtils]: 57: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,532 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 17:09:04,532 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 17:09:04,532 INFO L273 TraceCheckUtils]: 60: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,532 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 17:09:04,532 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 17:09:04,532 INFO L273 TraceCheckUtils]: 63: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,532 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 17:09:04,532 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 17:09:04,532 INFO L273 TraceCheckUtils]: 66: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,532 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 17:09:04,533 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 17:09:04,533 INFO L273 TraceCheckUtils]: 69: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,533 INFO L273 TraceCheckUtils]: 70: Hoare triple {16639#true} assume !(~i~1 < 10000); {16639#true} is VALID [2018-11-14 17:09:04,533 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 17:09:04,533 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 17:09:04,533 INFO L273 TraceCheckUtils]: 73: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,533 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 17:09:04,533 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 17:09:04,533 INFO L273 TraceCheckUtils]: 76: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,533 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 17:09:04,534 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 17:09:04,534 INFO L273 TraceCheckUtils]: 79: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,534 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 17:09:04,534 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 17:09:04,534 INFO L273 TraceCheckUtils]: 82: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,534 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 17:09:04,534 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 17:09:04,534 INFO L273 TraceCheckUtils]: 85: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,534 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 17:09:04,535 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 17:09:04,535 INFO L273 TraceCheckUtils]: 88: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,535 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 17:09:04,535 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 17:09:04,535 INFO L273 TraceCheckUtils]: 91: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,535 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 17:09:04,535 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 17:09:04,535 INFO L273 TraceCheckUtils]: 94: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,535 INFO L273 TraceCheckUtils]: 95: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 17:09:04,535 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 17:09:04,536 INFO L273 TraceCheckUtils]: 97: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,536 INFO L268 TraceCheckUtils]: 98: Hoare quadruple {16639#true} {16639#true} #73#return; {16639#true} is VALID [2018-11-14 17:09:04,536 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 17:09:04,536 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 17:09:04,536 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 17:09:04,536 INFO L273 TraceCheckUtils]: 102: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,536 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 17:09:04,536 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 17:09:04,536 INFO L273 TraceCheckUtils]: 105: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,536 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 17:09:04,537 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 17:09:04,537 INFO L273 TraceCheckUtils]: 108: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,537 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 17:09:04,537 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 17:09:04,537 INFO L273 TraceCheckUtils]: 111: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,537 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 17:09:04,537 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 17:09:04,537 INFO L273 TraceCheckUtils]: 114: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,537 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 17:09:04,538 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 17:09:04,538 INFO L273 TraceCheckUtils]: 117: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,538 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 17:09:04,538 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 17:09:04,538 INFO L273 TraceCheckUtils]: 120: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,538 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 17:09:04,538 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 17:09:04,538 INFO L273 TraceCheckUtils]: 123: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,538 INFO L273 TraceCheckUtils]: 124: Hoare triple {16639#true} assume !(~i~0 < 10000); {16639#true} is VALID [2018-11-14 17:09:04,538 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 17:09:04,539 INFO L273 TraceCheckUtils]: 126: Hoare triple {16639#true} assume true; {16639#true} is VALID [2018-11-14 17:09:04,539 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {16639#true} {16639#true} #75#return; {16639#true} is VALID [2018-11-14 17:09:04,539 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 17:09:04,539 INFO L273 TraceCheckUtils]: 129: Hoare triple {17050#(<= main_~i~2 0)} assume true; {17050#(<= main_~i~2 0)} is VALID [2018-11-14 17:09:04,540 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 17:09:04,540 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 17:09:04,541 INFO L273 TraceCheckUtils]: 132: Hoare triple {17060#(<= main_~i~2 1)} assume true; {17060#(<= main_~i~2 1)} is VALID [2018-11-14 17:09:04,541 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 17:09:04,541 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 17:09:04,542 INFO L273 TraceCheckUtils]: 135: Hoare triple {17070#(<= main_~i~2 2)} assume true; {17070#(<= main_~i~2 2)} is VALID [2018-11-14 17:09:04,542 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 17:09:04,542 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 17:09:04,543 INFO L273 TraceCheckUtils]: 138: Hoare triple {17080#(<= main_~i~2 3)} assume true; {17080#(<= main_~i~2 3)} is VALID [2018-11-14 17:09:04,543 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 17:09:04,544 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 17:09:04,545 INFO L273 TraceCheckUtils]: 141: Hoare triple {17090#(<= main_~i~2 4)} assume true; {17090#(<= main_~i~2 4)} is VALID [2018-11-14 17:09:04,545 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 17:09:04,546 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 17:09:04,546 INFO L273 TraceCheckUtils]: 144: Hoare triple {17100#(<= main_~i~2 5)} assume true; {17100#(<= main_~i~2 5)} is VALID [2018-11-14 17:09:04,547 INFO L273 TraceCheckUtils]: 145: Hoare triple {17100#(<= main_~i~2 5)} assume !(~i~2 < 9999); {16640#false} is VALID [2018-11-14 17:09:04,547 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 17:09:04,547 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 17:09:04,548 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 17:09:04,548 INFO L273 TraceCheckUtils]: 149: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,548 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 17:09:04,548 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 17:09:04,548 INFO L273 TraceCheckUtils]: 152: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,548 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 17:09:04,549 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 17:09:04,549 INFO L273 TraceCheckUtils]: 155: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,549 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 17:09:04,549 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 17:09:04,549 INFO L273 TraceCheckUtils]: 158: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,549 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 17:09:04,549 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 17:09:04,550 INFO L273 TraceCheckUtils]: 161: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,550 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 17:09:04,550 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 17:09:04,550 INFO L273 TraceCheckUtils]: 164: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,550 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 17:09:04,550 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 17:09:04,550 INFO L273 TraceCheckUtils]: 167: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,550 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 17:09:04,550 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 17:09:04,550 INFO L273 TraceCheckUtils]: 170: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,551 INFO L273 TraceCheckUtils]: 171: Hoare triple {16640#false} assume !(~i~0 < 10000); {16640#false} is VALID [2018-11-14 17:09:04,551 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 17:09:04,551 INFO L273 TraceCheckUtils]: 173: Hoare triple {16640#false} assume true; {16640#false} is VALID [2018-11-14 17:09:04,551 INFO L268 TraceCheckUtils]: 174: Hoare quadruple {16640#false} {16640#false} #77#return; {16640#false} is VALID [2018-11-14 17:09:04,551 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 17:09:04,551 INFO L273 TraceCheckUtils]: 176: Hoare triple {16640#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16640#false} is VALID [2018-11-14 17:09:04,551 INFO L273 TraceCheckUtils]: 177: Hoare triple {16640#false} assume !false; {16640#false} is VALID [2018-11-14 17:09:04,563 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 17:09:04,582 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:04,583 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 8] total 30 [2018-11-14 17:09:04,583 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 178 [2018-11-14 17:09:04,583 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:04,584 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2018-11-14 17:09:04,707 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 17:09:04,707 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2018-11-14 17:09:04,707 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2018-11-14 17:09:04,708 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=303, Invalid=567, Unknown=0, NotChecked=0, Total=870 [2018-11-14 17:09:04,708 INFO L87 Difference]: Start difference. First operand 125 states and 129 transitions. Second operand 30 states. [2018-11-14 17:09:06,454 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:06,455 INFO L93 Difference]: Finished difference Result 187 states and 196 transitions. [2018-11-14 17:09:06,455 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2018-11-14 17:09:06,455 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 178 [2018-11-14 17:09:06,455 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:06,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 17:09:06,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 142 transitions. [2018-11-14 17:09:06,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 17:09:06,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 142 transitions. [2018-11-14 17:09:06,457 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states and 142 transitions. [2018-11-14 17:09:06,583 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 17:09:06,586 INFO L225 Difference]: With dead ends: 187 [2018-11-14 17:09:06,586 INFO L226 Difference]: Without dead ends: 133 [2018-11-14 17:09:06,587 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 17:09:06,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 133 states. [2018-11-14 17:09:06,631 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 133 to 131. [2018-11-14 17:09:06,631 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:06,631 INFO L82 GeneralOperation]: Start isEquivalent. First operand 133 states. Second operand 131 states. [2018-11-14 17:09:06,632 INFO L74 IsIncluded]: Start isIncluded. First operand 133 states. Second operand 131 states. [2018-11-14 17:09:06,632 INFO L87 Difference]: Start difference. First operand 133 states. Second operand 131 states. [2018-11-14 17:09:06,633 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:06,633 INFO L93 Difference]: Finished difference Result 133 states and 137 transitions. [2018-11-14 17:09:06,634 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 137 transitions. [2018-11-14 17:09:06,634 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:06,634 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:06,634 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand 133 states. [2018-11-14 17:09:06,634 INFO L87 Difference]: Start difference. First operand 131 states. Second operand 133 states. [2018-11-14 17:09:06,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:06,636 INFO L93 Difference]: Finished difference Result 133 states and 137 transitions. [2018-11-14 17:09:06,636 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 137 transitions. [2018-11-14 17:09:06,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:06,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:06,636 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:06,636 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:06,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 131 states. [2018-11-14 17:09:06,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 135 transitions. [2018-11-14 17:09:06,638 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 135 transitions. Word has length 178 [2018-11-14 17:09:06,638 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:06,638 INFO L480 AbstractCegarLoop]: Abstraction has 131 states and 135 transitions. [2018-11-14 17:09:06,638 INFO L481 AbstractCegarLoop]: Interpolant automaton has 30 states. [2018-11-14 17:09:06,639 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 135 transitions. [2018-11-14 17:09:06,639 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 185 [2018-11-14 17:09:06,639 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:06,639 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 17:09:06,640 INFO L423 AbstractCegarLoop]: === Iteration 26 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:06,640 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:06,640 INFO L82 PathProgramCache]: Analyzing trace with hash 1320716308, now seen corresponding path program 22 times [2018-11-14 17:09:06,640 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:06,640 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:06,641 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:06,641 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:06,641 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:06,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:07,486 INFO L256 TraceCheckUtils]: 0: Hoare triple {17896#true} call ULTIMATE.init(); {17896#true} is VALID [2018-11-14 17:09:07,486 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 17:09:07,486 INFO L273 TraceCheckUtils]: 2: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,487 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17896#true} {17896#true} #69#return; {17896#true} is VALID [2018-11-14 17:09:07,487 INFO L256 TraceCheckUtils]: 4: Hoare triple {17896#true} call #t~ret12 := main(); {17896#true} is VALID [2018-11-14 17:09:07,487 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 17:09:07,488 INFO L273 TraceCheckUtils]: 6: Hoare triple {17898#(= main_~i~1 0)} assume true; {17898#(= main_~i~1 0)} is VALID [2018-11-14 17:09:07,488 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 17:09:07,489 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 17:09:07,489 INFO L273 TraceCheckUtils]: 9: Hoare triple {17899#(<= main_~i~1 1)} assume true; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:07,489 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 17:09:07,490 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 17:09:07,490 INFO L273 TraceCheckUtils]: 12: Hoare triple {17900#(<= main_~i~1 2)} assume true; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:07,491 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 17:09:07,491 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 17:09:07,492 INFO L273 TraceCheckUtils]: 15: Hoare triple {17901#(<= main_~i~1 3)} assume true; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:07,492 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 17:09:07,493 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 17:09:07,493 INFO L273 TraceCheckUtils]: 18: Hoare triple {17902#(<= main_~i~1 4)} assume true; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:07,494 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 17:09:07,495 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 17:09:07,495 INFO L273 TraceCheckUtils]: 21: Hoare triple {17903#(<= main_~i~1 5)} assume true; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:07,496 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 17:09:07,497 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 17:09:07,497 INFO L273 TraceCheckUtils]: 24: Hoare triple {17904#(<= main_~i~1 6)} assume true; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:07,498 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 17:09:07,498 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 17:09:07,499 INFO L273 TraceCheckUtils]: 27: Hoare triple {17905#(<= main_~i~1 7)} assume true; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:07,499 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 17:09:07,500 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 17:09:07,501 INFO L273 TraceCheckUtils]: 30: Hoare triple {17906#(<= main_~i~1 8)} assume true; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:07,501 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 17:09:07,502 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 17:09:07,502 INFO L273 TraceCheckUtils]: 33: Hoare triple {17907#(<= main_~i~1 9)} assume true; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:07,503 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 17:09:07,503 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 17:09:07,504 INFO L273 TraceCheckUtils]: 36: Hoare triple {17908#(<= main_~i~1 10)} assume true; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:07,505 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 17:09:07,505 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 17:09:07,506 INFO L273 TraceCheckUtils]: 39: Hoare triple {17909#(<= main_~i~1 11)} assume true; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:07,506 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 17:09:07,507 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 17:09:07,507 INFO L273 TraceCheckUtils]: 42: Hoare triple {17910#(<= main_~i~1 12)} assume true; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:07,508 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 17:09:07,509 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 17:09:07,509 INFO L273 TraceCheckUtils]: 45: Hoare triple {17911#(<= main_~i~1 13)} assume true; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:07,510 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 17:09:07,510 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 17:09:07,511 INFO L273 TraceCheckUtils]: 48: Hoare triple {17912#(<= main_~i~1 14)} assume true; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:07,511 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 17:09:07,512 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 17:09:07,513 INFO L273 TraceCheckUtils]: 51: Hoare triple {17913#(<= main_~i~1 15)} assume true; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:07,513 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 17:09:07,514 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 17:09:07,514 INFO L273 TraceCheckUtils]: 54: Hoare triple {17914#(<= main_~i~1 16)} assume true; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:07,515 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 17:09:07,516 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 17:09:07,516 INFO L273 TraceCheckUtils]: 57: Hoare triple {17915#(<= main_~i~1 17)} assume true; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:07,517 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 17:09:07,517 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 17:09:07,518 INFO L273 TraceCheckUtils]: 60: Hoare triple {17916#(<= main_~i~1 18)} assume true; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:07,518 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 17:09:07,519 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 17:09:07,520 INFO L273 TraceCheckUtils]: 63: Hoare triple {17917#(<= main_~i~1 19)} assume true; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:07,520 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 17:09:07,521 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 17:09:07,521 INFO L273 TraceCheckUtils]: 66: Hoare triple {17918#(<= main_~i~1 20)} assume true; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:07,522 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 17:09:07,523 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 17:09:07,523 INFO L273 TraceCheckUtils]: 69: Hoare triple {17919#(<= main_~i~1 21)} assume true; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:07,524 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 17:09:07,524 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 17:09:07,525 INFO L273 TraceCheckUtils]: 72: Hoare triple {17920#(<= main_~i~1 22)} assume true; {17920#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:07,526 INFO L273 TraceCheckUtils]: 73: Hoare triple {17920#(<= main_~i~1 22)} assume !(~i~1 < 10000); {17897#false} is VALID [2018-11-14 17:09:07,526 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 17:09:07,526 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 17:09:07,526 INFO L273 TraceCheckUtils]: 76: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,526 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 17:09:07,527 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 17:09:07,527 INFO L273 TraceCheckUtils]: 79: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,527 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 17:09:07,527 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 17:09:07,527 INFO L273 TraceCheckUtils]: 82: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,527 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 17:09:07,528 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 17:09:07,528 INFO L273 TraceCheckUtils]: 85: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,528 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 17:09:07,528 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 17:09:07,528 INFO L273 TraceCheckUtils]: 88: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,528 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 17:09:07,529 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 17:09:07,529 INFO L273 TraceCheckUtils]: 91: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,529 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 17:09:07,529 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 17:09:07,529 INFO L273 TraceCheckUtils]: 94: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,529 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 17:09:07,529 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 17:09:07,529 INFO L273 TraceCheckUtils]: 97: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,530 INFO L273 TraceCheckUtils]: 98: Hoare triple {17896#true} assume !(~i~0 < 10000); {17896#true} is VALID [2018-11-14 17:09:07,530 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 17:09:07,530 INFO L273 TraceCheckUtils]: 100: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,530 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {17896#true} {17897#false} #73#return; {17897#false} is VALID [2018-11-14 17:09:07,530 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 17:09:07,530 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 17:09:07,530 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 17:09:07,530 INFO L273 TraceCheckUtils]: 105: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,530 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 17:09:07,531 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 17:09:07,531 INFO L273 TraceCheckUtils]: 108: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,531 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 17:09:07,531 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 17:09:07,531 INFO L273 TraceCheckUtils]: 111: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,531 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 17:09:07,531 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 17:09:07,531 INFO L273 TraceCheckUtils]: 114: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,531 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 17:09:07,532 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 17:09:07,532 INFO L273 TraceCheckUtils]: 117: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,532 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 17:09:07,532 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 17:09:07,532 INFO L273 TraceCheckUtils]: 120: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,532 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 17:09:07,532 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 17:09:07,532 INFO L273 TraceCheckUtils]: 123: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,532 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 17:09:07,532 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 17:09:07,533 INFO L273 TraceCheckUtils]: 126: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,533 INFO L273 TraceCheckUtils]: 127: Hoare triple {17896#true} assume !(~i~0 < 10000); {17896#true} is VALID [2018-11-14 17:09:07,533 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 17:09:07,533 INFO L273 TraceCheckUtils]: 129: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,533 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {17896#true} {17897#false} #75#return; {17897#false} is VALID [2018-11-14 17:09:07,533 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 17:09:07,533 INFO L273 TraceCheckUtils]: 132: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,533 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 17:09:07,533 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 17:09:07,534 INFO L273 TraceCheckUtils]: 135: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,534 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 17:09:07,534 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 17:09:07,534 INFO L273 TraceCheckUtils]: 138: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,534 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 17:09:07,534 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 17:09:07,534 INFO L273 TraceCheckUtils]: 141: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,534 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 17:09:07,534 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 17:09:07,534 INFO L273 TraceCheckUtils]: 144: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,535 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 17:09:07,535 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 17:09:07,535 INFO L273 TraceCheckUtils]: 147: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,535 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 17:09:07,535 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 17:09:07,535 INFO L273 TraceCheckUtils]: 150: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,535 INFO L273 TraceCheckUtils]: 151: Hoare triple {17897#false} assume !(~i~2 < 9999); {17897#false} is VALID [2018-11-14 17:09:07,535 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 17:09:07,535 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 17:09:07,535 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 17:09:07,536 INFO L273 TraceCheckUtils]: 155: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,536 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 17:09:07,536 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 17:09:07,536 INFO L273 TraceCheckUtils]: 158: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,536 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 17:09:07,536 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 17:09:07,536 INFO L273 TraceCheckUtils]: 161: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,536 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 17:09:07,536 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 17:09:07,537 INFO L273 TraceCheckUtils]: 164: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,537 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 17:09:07,537 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 17:09:07,537 INFO L273 TraceCheckUtils]: 167: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,537 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 17:09:07,537 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 17:09:07,537 INFO L273 TraceCheckUtils]: 170: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,537 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 17:09:07,537 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 17:09:07,537 INFO L273 TraceCheckUtils]: 173: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,538 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 17:09:07,538 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 17:09:07,538 INFO L273 TraceCheckUtils]: 176: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,538 INFO L273 TraceCheckUtils]: 177: Hoare triple {17896#true} assume !(~i~0 < 10000); {17896#true} is VALID [2018-11-14 17:09:07,538 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 17:09:07,538 INFO L273 TraceCheckUtils]: 179: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,538 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {17896#true} {17897#false} #77#return; {17897#false} is VALID [2018-11-14 17:09:07,538 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 17:09:07,538 INFO L273 TraceCheckUtils]: 182: Hoare triple {17897#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {17897#false} is VALID [2018-11-14 17:09:07,538 INFO L273 TraceCheckUtils]: 183: Hoare triple {17897#false} assume !false; {17897#false} is VALID [2018-11-14 17:09:07,553 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 17:09:07,553 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:07,553 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 17:09:07,562 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 17:09:07,631 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 17:09:07,631 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:07,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:07,661 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:07,915 INFO L256 TraceCheckUtils]: 0: Hoare triple {17896#true} call ULTIMATE.init(); {17896#true} is VALID [2018-11-14 17:09:07,916 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 17:09:07,916 INFO L273 TraceCheckUtils]: 2: Hoare triple {17896#true} assume true; {17896#true} is VALID [2018-11-14 17:09:07,916 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17896#true} {17896#true} #69#return; {17896#true} is VALID [2018-11-14 17:09:07,916 INFO L256 TraceCheckUtils]: 4: Hoare triple {17896#true} call #t~ret12 := main(); {17896#true} is VALID [2018-11-14 17:09:07,917 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 17:09:07,917 INFO L273 TraceCheckUtils]: 6: Hoare triple {17939#(<= main_~i~1 0)} assume true; {17939#(<= main_~i~1 0)} is VALID [2018-11-14 17:09:07,917 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 17:09:07,918 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 17:09:07,918 INFO L273 TraceCheckUtils]: 9: Hoare triple {17899#(<= main_~i~1 1)} assume true; {17899#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:07,918 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 17:09:07,919 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 17:09:07,919 INFO L273 TraceCheckUtils]: 12: Hoare triple {17900#(<= main_~i~1 2)} assume true; {17900#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:07,919 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 17:09:07,920 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 17:09:07,920 INFO L273 TraceCheckUtils]: 15: Hoare triple {17901#(<= main_~i~1 3)} assume true; {17901#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:07,921 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 17:09:07,922 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 17:09:07,922 INFO L273 TraceCheckUtils]: 18: Hoare triple {17902#(<= main_~i~1 4)} assume true; {17902#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:07,923 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 17:09:07,923 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 17:09:07,924 INFO L273 TraceCheckUtils]: 21: Hoare triple {17903#(<= main_~i~1 5)} assume true; {17903#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:07,924 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 17:09:07,925 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 17:09:07,926 INFO L273 TraceCheckUtils]: 24: Hoare triple {17904#(<= main_~i~1 6)} assume true; {17904#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:07,926 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 17:09:07,927 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 17:09:07,927 INFO L273 TraceCheckUtils]: 27: Hoare triple {17905#(<= main_~i~1 7)} assume true; {17905#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:07,928 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 17:09:07,929 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 17:09:07,929 INFO L273 TraceCheckUtils]: 30: Hoare triple {17906#(<= main_~i~1 8)} assume true; {17906#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:07,930 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 17:09:07,930 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 17:09:07,931 INFO L273 TraceCheckUtils]: 33: Hoare triple {17907#(<= main_~i~1 9)} assume true; {17907#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:07,931 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 17:09:07,932 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 17:09:07,932 INFO L273 TraceCheckUtils]: 36: Hoare triple {17908#(<= main_~i~1 10)} assume true; {17908#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:07,933 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 17:09:07,934 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 17:09:07,934 INFO L273 TraceCheckUtils]: 39: Hoare triple {17909#(<= main_~i~1 11)} assume true; {17909#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:07,934 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 17:09:07,935 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 17:09:07,936 INFO L273 TraceCheckUtils]: 42: Hoare triple {17910#(<= main_~i~1 12)} assume true; {17910#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:07,936 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 17:09:07,937 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 17:09:07,937 INFO L273 TraceCheckUtils]: 45: Hoare triple {17911#(<= main_~i~1 13)} assume true; {17911#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:07,938 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 17:09:07,938 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 17:09:07,939 INFO L273 TraceCheckUtils]: 48: Hoare triple {17912#(<= main_~i~1 14)} assume true; {17912#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:07,939 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 17:09:07,940 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 17:09:07,941 INFO L273 TraceCheckUtils]: 51: Hoare triple {17913#(<= main_~i~1 15)} assume true; {17913#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:07,941 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 17:09:07,942 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 17:09:07,942 INFO L273 TraceCheckUtils]: 54: Hoare triple {17914#(<= main_~i~1 16)} assume true; {17914#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:07,943 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 17:09:07,943 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 17:09:07,944 INFO L273 TraceCheckUtils]: 57: Hoare triple {17915#(<= main_~i~1 17)} assume true; {17915#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:07,944 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 17:09:07,945 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 17:09:07,946 INFO L273 TraceCheckUtils]: 60: Hoare triple {17916#(<= main_~i~1 18)} assume true; {17916#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:07,946 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 17:09:07,947 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 17:09:07,947 INFO L273 TraceCheckUtils]: 63: Hoare triple {17917#(<= main_~i~1 19)} assume true; {17917#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:07,948 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 17:09:07,948 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 17:09:07,949 INFO L273 TraceCheckUtils]: 66: Hoare triple {17918#(<= main_~i~1 20)} assume true; {17918#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:07,949 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 17:09:07,950 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 17:09:07,951 INFO L273 TraceCheckUtils]: 69: Hoare triple {17919#(<= main_~i~1 21)} assume true; {17919#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:07,951 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 17:09:07,952 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 17:09:07,952 INFO L273 TraceCheckUtils]: 72: Hoare triple {17920#(<= main_~i~1 22)} assume true; {17920#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:07,953 INFO L273 TraceCheckUtils]: 73: Hoare triple {17920#(<= main_~i~1 22)} assume !(~i~1 < 10000); {17897#false} is VALID [2018-11-14 17:09:07,953 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 17:09:07,953 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 17:09:07,953 INFO L273 TraceCheckUtils]: 76: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,954 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 17:09:07,954 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 17:09:07,954 INFO L273 TraceCheckUtils]: 79: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,954 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 17:09:07,954 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 17:09:07,954 INFO L273 TraceCheckUtils]: 82: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,955 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 17:09:07,955 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 17:09:07,955 INFO L273 TraceCheckUtils]: 85: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,955 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 17:09:07,955 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 17:09:07,955 INFO L273 TraceCheckUtils]: 88: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,956 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 17:09:07,956 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 17:09:07,956 INFO L273 TraceCheckUtils]: 91: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,956 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 17:09:07,956 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 17:09:07,956 INFO L273 TraceCheckUtils]: 94: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,956 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 17:09:07,956 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 17:09:07,956 INFO L273 TraceCheckUtils]: 97: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,957 INFO L273 TraceCheckUtils]: 98: Hoare triple {17897#false} assume !(~i~0 < 10000); {17897#false} is VALID [2018-11-14 17:09:07,957 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 17:09:07,957 INFO L273 TraceCheckUtils]: 100: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,957 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {17897#false} {17897#false} #73#return; {17897#false} is VALID [2018-11-14 17:09:07,957 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 17:09:07,957 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 17:09:07,957 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 17:09:07,957 INFO L273 TraceCheckUtils]: 105: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,957 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 17:09:07,958 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 17:09:07,958 INFO L273 TraceCheckUtils]: 108: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,958 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 17:09:07,958 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 17:09:07,958 INFO L273 TraceCheckUtils]: 111: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,958 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 17:09:07,958 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 17:09:07,958 INFO L273 TraceCheckUtils]: 114: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,958 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 17:09:07,958 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 17:09:07,959 INFO L273 TraceCheckUtils]: 117: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,959 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 17:09:07,959 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 17:09:07,959 INFO L273 TraceCheckUtils]: 120: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,959 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 17:09:07,959 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 17:09:07,959 INFO L273 TraceCheckUtils]: 123: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,959 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 17:09:07,959 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 17:09:07,959 INFO L273 TraceCheckUtils]: 126: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,960 INFO L273 TraceCheckUtils]: 127: Hoare triple {17897#false} assume !(~i~0 < 10000); {17897#false} is VALID [2018-11-14 17:09:07,960 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 17:09:07,960 INFO L273 TraceCheckUtils]: 129: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,960 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {17897#false} {17897#false} #75#return; {17897#false} is VALID [2018-11-14 17:09:07,960 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 17:09:07,960 INFO L273 TraceCheckUtils]: 132: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,960 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 17:09:07,960 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 17:09:07,960 INFO L273 TraceCheckUtils]: 135: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,960 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 17:09:07,961 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 17:09:07,961 INFO L273 TraceCheckUtils]: 138: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,961 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 17:09:07,961 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 17:09:07,961 INFO L273 TraceCheckUtils]: 141: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,961 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 17:09:07,961 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 17:09:07,961 INFO L273 TraceCheckUtils]: 144: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,961 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 17:09:07,962 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 17:09:07,962 INFO L273 TraceCheckUtils]: 147: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,962 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 17:09:07,962 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 17:09:07,962 INFO L273 TraceCheckUtils]: 150: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,962 INFO L273 TraceCheckUtils]: 151: Hoare triple {17897#false} assume !(~i~2 < 9999); {17897#false} is VALID [2018-11-14 17:09:07,962 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 17:09:07,962 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 17:09:07,962 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 17:09:07,962 INFO L273 TraceCheckUtils]: 155: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,963 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 17:09:07,963 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 17:09:07,963 INFO L273 TraceCheckUtils]: 158: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,963 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 17:09:07,963 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 17:09:07,963 INFO L273 TraceCheckUtils]: 161: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,963 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 17:09:07,963 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 17:09:07,963 INFO L273 TraceCheckUtils]: 164: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,964 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 17:09:07,964 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 17:09:07,964 INFO L273 TraceCheckUtils]: 167: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,964 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 17:09:07,964 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 17:09:07,964 INFO L273 TraceCheckUtils]: 170: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,964 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 17:09:07,964 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 17:09:07,964 INFO L273 TraceCheckUtils]: 173: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,964 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 17:09:07,965 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 17:09:07,965 INFO L273 TraceCheckUtils]: 176: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,965 INFO L273 TraceCheckUtils]: 177: Hoare triple {17897#false} assume !(~i~0 < 10000); {17897#false} is VALID [2018-11-14 17:09:07,965 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 17:09:07,965 INFO L273 TraceCheckUtils]: 179: Hoare triple {17897#false} assume true; {17897#false} is VALID [2018-11-14 17:09:07,965 INFO L268 TraceCheckUtils]: 180: Hoare quadruple {17897#false} {17897#false} #77#return; {17897#false} is VALID [2018-11-14 17:09:07,965 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 17:09:07,965 INFO L273 TraceCheckUtils]: 182: Hoare triple {17897#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {17897#false} is VALID [2018-11-14 17:09:07,965 INFO L273 TraceCheckUtils]: 183: Hoare triple {17897#false} assume !false; {17897#false} is VALID [2018-11-14 17:09:07,980 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 17:09:08,000 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:08,000 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 25] total 26 [2018-11-14 17:09:08,001 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 184 [2018-11-14 17:09:08,001 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:08,001 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-14 17:09:08,107 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 17:09:08,107 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-14 17:09:08,107 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-14 17:09:08,108 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=325, Invalid=325, Unknown=0, NotChecked=0, Total=650 [2018-11-14 17:09:08,108 INFO L87 Difference]: Start difference. First operand 131 states and 135 transitions. Second operand 26 states. [2018-11-14 17:09:08,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:08,330 INFO L93 Difference]: Finished difference Result 192 states and 200 transitions. [2018-11-14 17:09:08,330 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-14 17:09:08,330 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 184 [2018-11-14 17:09:08,330 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:08,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 17:09:08,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 126 transitions. [2018-11-14 17:09:08,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-14 17:09:08,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 126 transitions. [2018-11-14 17:09:08,333 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 126 transitions. [2018-11-14 17:09:08,450 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 17:09:08,453 INFO L225 Difference]: With dead ends: 192 [2018-11-14 17:09:08,453 INFO L226 Difference]: Without dead ends: 135 [2018-11-14 17:09:08,454 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 184 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=325, Invalid=325, Unknown=0, NotChecked=0, Total=650 [2018-11-14 17:09:08,454 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2018-11-14 17:09:08,492 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 134. [2018-11-14 17:09:08,492 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:08,492 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand 134 states. [2018-11-14 17:09:08,492 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand 134 states. [2018-11-14 17:09:08,493 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 134 states. [2018-11-14 17:09:08,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:08,495 INFO L93 Difference]: Finished difference Result 135 states and 139 transitions. [2018-11-14 17:09:08,495 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 139 transitions. [2018-11-14 17:09:08,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:08,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:08,496 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand 135 states. [2018-11-14 17:09:08,496 INFO L87 Difference]: Start difference. First operand 134 states. Second operand 135 states. [2018-11-14 17:09:08,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:08,498 INFO L93 Difference]: Finished difference Result 135 states and 139 transitions. [2018-11-14 17:09:08,498 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 139 transitions. [2018-11-14 17:09:08,498 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:08,498 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:08,499 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:08,499 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:08,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 134 states. [2018-11-14 17:09:08,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 134 states to 134 states and 138 transitions. [2018-11-14 17:09:08,501 INFO L78 Accepts]: Start accepts. Automaton has 134 states and 138 transitions. Word has length 184 [2018-11-14 17:09:08,501 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:08,501 INFO L480 AbstractCegarLoop]: Abstraction has 134 states and 138 transitions. [2018-11-14 17:09:08,501 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-14 17:09:08,502 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 138 transitions. [2018-11-14 17:09:08,503 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 188 [2018-11-14 17:09:08,503 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:08,503 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 17:09:08,503 INFO L423 AbstractCegarLoop]: === Iteration 27 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:08,503 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:08,504 INFO L82 PathProgramCache]: Analyzing trace with hash -880440289, now seen corresponding path program 23 times [2018-11-14 17:09:08,504 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:08,504 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:08,504 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:08,505 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:08,505 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:08,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:09,187 INFO L256 TraceCheckUtils]: 0: Hoare triple {19182#true} call ULTIMATE.init(); {19182#true} is VALID [2018-11-14 17:09:09,188 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 17:09:09,188 INFO L273 TraceCheckUtils]: 2: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,188 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19182#true} {19182#true} #69#return; {19182#true} is VALID [2018-11-14 17:09:09,188 INFO L256 TraceCheckUtils]: 4: Hoare triple {19182#true} call #t~ret12 := main(); {19182#true} is VALID [2018-11-14 17:09:09,189 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 17:09:09,189 INFO L273 TraceCheckUtils]: 6: Hoare triple {19184#(= main_~i~1 0)} assume true; {19184#(= main_~i~1 0)} is VALID [2018-11-14 17:09:09,189 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 17:09:09,190 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 17:09:09,190 INFO L273 TraceCheckUtils]: 9: Hoare triple {19185#(<= main_~i~1 1)} assume true; {19185#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:09,190 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 17:09:09,191 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 17:09:09,191 INFO L273 TraceCheckUtils]: 12: Hoare triple {19186#(<= main_~i~1 2)} assume true; {19186#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:09,192 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 17:09:09,192 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 17:09:09,192 INFO L273 TraceCheckUtils]: 15: Hoare triple {19187#(<= main_~i~1 3)} assume true; {19187#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:09,193 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 17:09:09,194 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 17:09:09,194 INFO L273 TraceCheckUtils]: 18: Hoare triple {19188#(<= main_~i~1 4)} assume true; {19188#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:09,194 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 17:09:09,195 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 17:09:09,196 INFO L273 TraceCheckUtils]: 21: Hoare triple {19189#(<= main_~i~1 5)} assume true; {19189#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:09,198 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 17:09:09,199 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 17:09:09,199 INFO L273 TraceCheckUtils]: 24: Hoare triple {19190#(<= main_~i~1 6)} assume true; {19190#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:09,200 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 17:09:09,200 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 17:09:09,201 INFO L273 TraceCheckUtils]: 27: Hoare triple {19191#(<= main_~i~1 7)} assume true; {19191#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:09,201 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 17:09:09,201 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 17:09:09,202 INFO L273 TraceCheckUtils]: 30: Hoare triple {19192#(<= main_~i~1 8)} assume true; {19192#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:09,202 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 17:09:09,202 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 17:09:09,203 INFO L273 TraceCheckUtils]: 33: Hoare triple {19193#(<= main_~i~1 9)} assume true; {19193#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:09,203 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 17:09:09,204 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 17:09:09,204 INFO L273 TraceCheckUtils]: 36: Hoare triple {19194#(<= main_~i~1 10)} assume true; {19194#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:09,205 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 17:09:09,206 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 17:09:09,206 INFO L273 TraceCheckUtils]: 39: Hoare triple {19195#(<= main_~i~1 11)} assume true; {19195#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:09,207 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 17:09:09,207 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 17:09:09,208 INFO L273 TraceCheckUtils]: 42: Hoare triple {19196#(<= main_~i~1 12)} assume true; {19196#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:09,208 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 17:09:09,209 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 17:09:09,209 INFO L273 TraceCheckUtils]: 45: Hoare triple {19197#(<= main_~i~1 13)} assume true; {19197#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:09,210 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 17:09:09,210 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 17:09:09,211 INFO L273 TraceCheckUtils]: 48: Hoare triple {19198#(<= main_~i~1 14)} assume true; {19198#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:09,211 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 17:09:09,212 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 17:09:09,213 INFO L273 TraceCheckUtils]: 51: Hoare triple {19199#(<= main_~i~1 15)} assume true; {19199#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:09,213 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 17:09:09,214 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 17:09:09,214 INFO L273 TraceCheckUtils]: 54: Hoare triple {19200#(<= main_~i~1 16)} assume true; {19200#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:09,215 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 17:09:09,215 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 17:09:09,216 INFO L273 TraceCheckUtils]: 57: Hoare triple {19201#(<= main_~i~1 17)} assume true; {19201#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:09,216 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 17:09:09,217 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 17:09:09,217 INFO L273 TraceCheckUtils]: 60: Hoare triple {19202#(<= main_~i~1 18)} assume true; {19202#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:09,218 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 17:09:09,219 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 17:09:09,219 INFO L273 TraceCheckUtils]: 63: Hoare triple {19203#(<= main_~i~1 19)} assume true; {19203#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:09,219 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 17:09:09,220 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 17:09:09,221 INFO L273 TraceCheckUtils]: 66: Hoare triple {19204#(<= main_~i~1 20)} assume true; {19204#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:09,221 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 17:09:09,222 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 17:09:09,222 INFO L273 TraceCheckUtils]: 69: Hoare triple {19205#(<= main_~i~1 21)} assume true; {19205#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:09,223 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 17:09:09,223 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 17:09:09,224 INFO L273 TraceCheckUtils]: 72: Hoare triple {19206#(<= main_~i~1 22)} assume true; {19206#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:09,224 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 17:09:09,225 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 17:09:09,225 INFO L273 TraceCheckUtils]: 75: Hoare triple {19207#(<= main_~i~1 23)} assume true; {19207#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:09,226 INFO L273 TraceCheckUtils]: 76: Hoare triple {19207#(<= main_~i~1 23)} assume !(~i~1 < 10000); {19183#false} is VALID [2018-11-14 17:09:09,226 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 17:09:09,226 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 17:09:09,227 INFO L273 TraceCheckUtils]: 79: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,227 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 17:09:09,227 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 17:09:09,227 INFO L273 TraceCheckUtils]: 82: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,227 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 17:09:09,228 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 17:09:09,228 INFO L273 TraceCheckUtils]: 85: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,228 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 17:09:09,228 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 17:09:09,228 INFO L273 TraceCheckUtils]: 88: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,228 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 17:09:09,228 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 17:09:09,228 INFO L273 TraceCheckUtils]: 91: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,229 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 17:09:09,229 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 17:09:09,229 INFO L273 TraceCheckUtils]: 94: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,229 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 17:09:09,229 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 17:09:09,229 INFO L273 TraceCheckUtils]: 97: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,229 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 17:09:09,229 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 17:09:09,229 INFO L273 TraceCheckUtils]: 100: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,230 INFO L273 TraceCheckUtils]: 101: Hoare triple {19182#true} assume !(~i~0 < 10000); {19182#true} is VALID [2018-11-14 17:09:09,230 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 17:09:09,230 INFO L273 TraceCheckUtils]: 103: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,230 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {19182#true} {19183#false} #73#return; {19183#false} is VALID [2018-11-14 17:09:09,230 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 17:09:09,230 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 17:09:09,230 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 17:09:09,230 INFO L273 TraceCheckUtils]: 108: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,230 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 17:09:09,230 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 17:09:09,231 INFO L273 TraceCheckUtils]: 111: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,231 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 17:09:09,231 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 17:09:09,231 INFO L273 TraceCheckUtils]: 114: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,231 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 17:09:09,231 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 17:09:09,231 INFO L273 TraceCheckUtils]: 117: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,231 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 17:09:09,231 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 17:09:09,231 INFO L273 TraceCheckUtils]: 120: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,232 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 17:09:09,232 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 17:09:09,232 INFO L273 TraceCheckUtils]: 123: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,232 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 17:09:09,232 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 17:09:09,232 INFO L273 TraceCheckUtils]: 126: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,232 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 17:09:09,232 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 17:09:09,232 INFO L273 TraceCheckUtils]: 129: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,233 INFO L273 TraceCheckUtils]: 130: Hoare triple {19182#true} assume !(~i~0 < 10000); {19182#true} is VALID [2018-11-14 17:09:09,233 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 17:09:09,233 INFO L273 TraceCheckUtils]: 132: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,233 INFO L268 TraceCheckUtils]: 133: Hoare quadruple {19182#true} {19183#false} #75#return; {19183#false} is VALID [2018-11-14 17:09:09,233 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 17:09:09,233 INFO L273 TraceCheckUtils]: 135: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:09,233 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 17:09:09,233 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 17:09:09,234 INFO L273 TraceCheckUtils]: 138: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:09,234 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 17:09:09,234 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 17:09:09,234 INFO L273 TraceCheckUtils]: 141: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:09,234 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 17:09:09,234 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 17:09:09,234 INFO L273 TraceCheckUtils]: 144: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:09,235 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 17:09:09,235 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 17:09:09,235 INFO L273 TraceCheckUtils]: 147: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:09,235 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 17:09:09,235 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 17:09:09,235 INFO L273 TraceCheckUtils]: 150: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:09,236 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 17:09:09,236 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 17:09:09,236 INFO L273 TraceCheckUtils]: 153: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:09,236 INFO L273 TraceCheckUtils]: 154: Hoare triple {19183#false} assume !(~i~2 < 9999); {19183#false} is VALID [2018-11-14 17:09:09,236 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 17:09:09,236 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 17:09:09,237 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 17:09:09,237 INFO L273 TraceCheckUtils]: 158: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,237 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 17:09:09,237 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 17:09:09,237 INFO L273 TraceCheckUtils]: 161: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,237 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 17:09:09,238 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 17:09:09,238 INFO L273 TraceCheckUtils]: 164: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,238 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 17:09:09,238 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 17:09:09,238 INFO L273 TraceCheckUtils]: 167: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,238 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 17:09:09,239 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 17:09:09,239 INFO L273 TraceCheckUtils]: 170: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,239 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 17:09:09,239 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 17:09:09,239 INFO L273 TraceCheckUtils]: 173: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,239 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 17:09:09,239 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 17:09:09,240 INFO L273 TraceCheckUtils]: 176: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,240 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 17:09:09,240 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 17:09:09,240 INFO L273 TraceCheckUtils]: 179: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,240 INFO L273 TraceCheckUtils]: 180: Hoare triple {19182#true} assume !(~i~0 < 10000); {19182#true} is VALID [2018-11-14 17:09:09,240 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 17:09:09,241 INFO L273 TraceCheckUtils]: 182: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:09,241 INFO L268 TraceCheckUtils]: 183: Hoare quadruple {19182#true} {19183#false} #77#return; {19183#false} is VALID [2018-11-14 17:09:09,241 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 17:09:09,241 INFO L273 TraceCheckUtils]: 185: Hoare triple {19183#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19183#false} is VALID [2018-11-14 17:09:09,241 INFO L273 TraceCheckUtils]: 186: Hoare triple {19183#false} assume !false; {19183#false} is VALID [2018-11-14 17:09:09,274 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 17:09:09,274 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:09,274 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 17:09:09,292 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 17:09:11,978 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 23 check-sat command(s) [2018-11-14 17:09:11,978 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:12,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:12,042 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:13,281 INFO L256 TraceCheckUtils]: 0: Hoare triple {19182#true} call ULTIMATE.init(); {19182#true} is VALID [2018-11-14 17:09:13,281 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 17:09:13,281 INFO L273 TraceCheckUtils]: 2: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,282 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19182#true} {19182#true} #69#return; {19182#true} is VALID [2018-11-14 17:09:13,282 INFO L256 TraceCheckUtils]: 4: Hoare triple {19182#true} call #t~ret12 := main(); {19182#true} is VALID [2018-11-14 17:09:13,282 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 17:09:13,282 INFO L273 TraceCheckUtils]: 6: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,282 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 17:09:13,283 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 17:09:13,283 INFO L273 TraceCheckUtils]: 9: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,283 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 17:09:13,283 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 17:09:13,283 INFO L273 TraceCheckUtils]: 12: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,284 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 17:09:13,284 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 17:09:13,284 INFO L273 TraceCheckUtils]: 15: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,284 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 17:09:13,284 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 17:09:13,284 INFO L273 TraceCheckUtils]: 18: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,284 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 17:09:13,284 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 17:09:13,284 INFO L273 TraceCheckUtils]: 21: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,285 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 17:09:13,285 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 17:09:13,285 INFO L273 TraceCheckUtils]: 24: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,285 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 17:09:13,285 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 17:09:13,285 INFO L273 TraceCheckUtils]: 27: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,285 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 17:09:13,285 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 17:09:13,285 INFO L273 TraceCheckUtils]: 30: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,285 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 17:09:13,286 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 17:09:13,286 INFO L273 TraceCheckUtils]: 33: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,286 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 17:09:13,286 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 17:09:13,286 INFO L273 TraceCheckUtils]: 36: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,286 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 17:09:13,286 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 17:09:13,286 INFO L273 TraceCheckUtils]: 39: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,286 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 17:09:13,286 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 17:09:13,287 INFO L273 TraceCheckUtils]: 42: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,287 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 17:09:13,287 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 17:09:13,287 INFO L273 TraceCheckUtils]: 45: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,287 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 17:09:13,287 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 17:09:13,287 INFO L273 TraceCheckUtils]: 48: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,287 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 17:09:13,287 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 17:09:13,287 INFO L273 TraceCheckUtils]: 51: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,288 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 17:09:13,288 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 17:09:13,288 INFO L273 TraceCheckUtils]: 54: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,288 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 17:09:13,288 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 17:09:13,288 INFO L273 TraceCheckUtils]: 57: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,288 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 17:09:13,288 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 17:09:13,288 INFO L273 TraceCheckUtils]: 60: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,289 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 17:09:13,289 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 17:09:13,289 INFO L273 TraceCheckUtils]: 63: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,289 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 17:09:13,289 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 17:09:13,289 INFO L273 TraceCheckUtils]: 66: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,289 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 17:09:13,289 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 17:09:13,290 INFO L273 TraceCheckUtils]: 69: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,290 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 17:09:13,290 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 17:09:13,290 INFO L273 TraceCheckUtils]: 72: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,290 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 17:09:13,290 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 17:09:13,291 INFO L273 TraceCheckUtils]: 75: Hoare triple {19182#true} assume true; {19182#true} is VALID [2018-11-14 17:09:13,291 INFO L273 TraceCheckUtils]: 76: Hoare triple {19182#true} assume !(~i~1 < 10000); {19182#true} is VALID [2018-11-14 17:09:13,291 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 17:09:13,291 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 17:09:13,292 INFO L273 TraceCheckUtils]: 79: Hoare triple {19445#(<= mapavg_~i~0 0)} assume true; {19445#(<= mapavg_~i~0 0)} is VALID [2018-11-14 17:09:13,292 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 17:09:13,292 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 17:09:13,293 INFO L273 TraceCheckUtils]: 82: Hoare triple {19455#(<= mapavg_~i~0 1)} assume true; {19455#(<= mapavg_~i~0 1)} is VALID [2018-11-14 17:09:13,293 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 17:09:13,293 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 17:09:13,294 INFO L273 TraceCheckUtils]: 85: Hoare triple {19465#(<= mapavg_~i~0 2)} assume true; {19465#(<= mapavg_~i~0 2)} is VALID [2018-11-14 17:09:13,294 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 17:09:13,294 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 17:09:13,295 INFO L273 TraceCheckUtils]: 88: Hoare triple {19475#(<= mapavg_~i~0 3)} assume true; {19475#(<= mapavg_~i~0 3)} is VALID [2018-11-14 17:09:13,295 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 17:09:13,296 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 17:09:13,296 INFO L273 TraceCheckUtils]: 91: Hoare triple {19485#(<= mapavg_~i~0 4)} assume true; {19485#(<= mapavg_~i~0 4)} is VALID [2018-11-14 17:09:13,297 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 17:09:13,297 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 17:09:13,298 INFO L273 TraceCheckUtils]: 94: Hoare triple {19495#(<= mapavg_~i~0 5)} assume true; {19495#(<= mapavg_~i~0 5)} is VALID [2018-11-14 17:09:13,298 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 17:09:13,299 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 17:09:13,300 INFO L273 TraceCheckUtils]: 97: Hoare triple {19505#(<= mapavg_~i~0 6)} assume true; {19505#(<= mapavg_~i~0 6)} is VALID [2018-11-14 17:09:13,300 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 17:09:13,301 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 17:09:13,301 INFO L273 TraceCheckUtils]: 100: Hoare triple {19515#(<= mapavg_~i~0 7)} assume true; {19515#(<= mapavg_~i~0 7)} is VALID [2018-11-14 17:09:13,302 INFO L273 TraceCheckUtils]: 101: Hoare triple {19515#(<= mapavg_~i~0 7)} assume !(~i~0 < 10000); {19183#false} is VALID [2018-11-14 17:09:13,302 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 17:09:13,302 INFO L273 TraceCheckUtils]: 103: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,303 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {19183#false} {19182#true} #73#return; {19183#false} is VALID [2018-11-14 17:09:13,303 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 17:09:13,303 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 17:09:13,304 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 17:09:13,304 INFO L273 TraceCheckUtils]: 108: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,304 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 17:09:13,304 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 17:09:13,305 INFO L273 TraceCheckUtils]: 111: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,305 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 17:09:13,305 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 17:09:13,305 INFO L273 TraceCheckUtils]: 114: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,305 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 17:09:13,305 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 17:09:13,306 INFO L273 TraceCheckUtils]: 117: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,306 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 17:09:13,306 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 17:09:13,306 INFO L273 TraceCheckUtils]: 120: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,306 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 17:09:13,306 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 17:09:13,307 INFO L273 TraceCheckUtils]: 123: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,307 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 17:09:13,307 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 17:09:13,307 INFO L273 TraceCheckUtils]: 126: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,307 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 17:09:13,307 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 17:09:13,307 INFO L273 TraceCheckUtils]: 129: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,308 INFO L273 TraceCheckUtils]: 130: Hoare triple {19183#false} assume !(~i~0 < 10000); {19183#false} is VALID [2018-11-14 17:09:13,308 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 17:09:13,308 INFO L273 TraceCheckUtils]: 132: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,308 INFO L268 TraceCheckUtils]: 133: Hoare quadruple {19183#false} {19183#false} #75#return; {19183#false} is VALID [2018-11-14 17:09:13,308 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 17:09:13,308 INFO L273 TraceCheckUtils]: 135: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,308 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 17:09:13,308 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 17:09:13,308 INFO L273 TraceCheckUtils]: 138: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,308 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 17:09:13,309 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 17:09:13,309 INFO L273 TraceCheckUtils]: 141: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,309 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 17:09:13,309 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 17:09:13,309 INFO L273 TraceCheckUtils]: 144: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,309 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 17:09:13,309 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 17:09:13,309 INFO L273 TraceCheckUtils]: 147: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,309 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 17:09:13,309 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 17:09:13,310 INFO L273 TraceCheckUtils]: 150: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,310 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 17:09:13,310 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 17:09:13,310 INFO L273 TraceCheckUtils]: 153: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,310 INFO L273 TraceCheckUtils]: 154: Hoare triple {19183#false} assume !(~i~2 < 9999); {19183#false} is VALID [2018-11-14 17:09:13,310 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 17:09:13,310 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 17:09:13,310 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 17:09:13,310 INFO L273 TraceCheckUtils]: 158: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,310 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 17:09:13,311 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 17:09:13,311 INFO L273 TraceCheckUtils]: 161: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,311 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 17:09:13,311 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 17:09:13,311 INFO L273 TraceCheckUtils]: 164: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,311 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 17:09:13,311 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 17:09:13,311 INFO L273 TraceCheckUtils]: 167: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,311 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 17:09:13,311 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 17:09:13,312 INFO L273 TraceCheckUtils]: 170: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,312 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 17:09:13,312 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 17:09:13,312 INFO L273 TraceCheckUtils]: 173: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,312 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 17:09:13,312 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 17:09:13,312 INFO L273 TraceCheckUtils]: 176: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,312 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 17:09:13,312 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 17:09:13,312 INFO L273 TraceCheckUtils]: 179: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,313 INFO L273 TraceCheckUtils]: 180: Hoare triple {19183#false} assume !(~i~0 < 10000); {19183#false} is VALID [2018-11-14 17:09:13,313 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 17:09:13,313 INFO L273 TraceCheckUtils]: 182: Hoare triple {19183#false} assume true; {19183#false} is VALID [2018-11-14 17:09:13,313 INFO L268 TraceCheckUtils]: 183: Hoare quadruple {19183#false} {19183#false} #77#return; {19183#false} is VALID [2018-11-14 17:09:13,313 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 17:09:13,313 INFO L273 TraceCheckUtils]: 185: Hoare triple {19183#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19183#false} is VALID [2018-11-14 17:09:13,313 INFO L273 TraceCheckUtils]: 186: Hoare triple {19183#false} assume !false; {19183#false} is VALID [2018-11-14 17:09:13,326 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 17:09:13,348 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:13,348 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [26, 10] total 34 [2018-11-14 17:09:13,349 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 187 [2018-11-14 17:09:13,349 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:13,349 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states. [2018-11-14 17:09:13,704 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 17:09:13,704 INFO L459 AbstractCegarLoop]: Interpolant automaton has 34 states [2018-11-14 17:09:13,705 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2018-11-14 17:09:13,705 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=369, Invalid=753, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 17:09:13,705 INFO L87 Difference]: Start difference. First operand 134 states and 138 transitions. Second operand 34 states. [2018-11-14 17:09:14,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:14,732 INFO L93 Difference]: Finished difference Result 199 states and 211 transitions. [2018-11-14 17:09:14,732 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2018-11-14 17:09:14,732 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 187 [2018-11-14 17:09:14,732 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:14,732 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 17:09:14,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 157 transitions. [2018-11-14 17:09:14,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 17:09:14,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 157 transitions. [2018-11-14 17:09:14,734 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states and 157 transitions. [2018-11-14 17:09:14,884 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 17:09:14,887 INFO L225 Difference]: With dead ends: 199 [2018-11-14 17:09:14,887 INFO L226 Difference]: Without dead ends: 142 [2018-11-14 17:09:14,888 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 180 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 184 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=369, Invalid=753, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 17:09:14,888 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2018-11-14 17:09:14,921 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 140. [2018-11-14 17:09:14,921 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:14,922 INFO L82 GeneralOperation]: Start isEquivalent. First operand 142 states. Second operand 140 states. [2018-11-14 17:09:14,922 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand 140 states. [2018-11-14 17:09:14,922 INFO L87 Difference]: Start difference. First operand 142 states. Second operand 140 states. [2018-11-14 17:09:14,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:14,924 INFO L93 Difference]: Finished difference Result 142 states and 146 transitions. [2018-11-14 17:09:14,925 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 146 transitions. [2018-11-14 17:09:14,925 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:14,925 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:14,925 INFO L74 IsIncluded]: Start isIncluded. First operand 140 states. Second operand 142 states. [2018-11-14 17:09:14,925 INFO L87 Difference]: Start difference. First operand 140 states. Second operand 142 states. [2018-11-14 17:09:14,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:14,928 INFO L93 Difference]: Finished difference Result 142 states and 146 transitions. [2018-11-14 17:09:14,928 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 146 transitions. [2018-11-14 17:09:14,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:14,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:14,929 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:14,929 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:14,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 140 states. [2018-11-14 17:09:14,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 144 transitions. [2018-11-14 17:09:14,932 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 144 transitions. Word has length 187 [2018-11-14 17:09:14,932 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:14,932 INFO L480 AbstractCegarLoop]: Abstraction has 140 states and 144 transitions. [2018-11-14 17:09:14,932 INFO L481 AbstractCegarLoop]: Interpolant automaton has 34 states. [2018-11-14 17:09:14,932 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 144 transitions. [2018-11-14 17:09:14,933 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 200 [2018-11-14 17:09:14,933 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:14,934 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 17:09:14,934 INFO L423 AbstractCegarLoop]: === Iteration 28 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:14,934 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:14,934 INFO L82 PathProgramCache]: Analyzing trace with hash 1909295699, now seen corresponding path program 24 times [2018-11-14 17:09:14,934 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:14,934 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:14,935 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:14,935 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:14,935 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:14,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:15,419 INFO L256 TraceCheckUtils]: 0: Hoare triple {20516#true} call ULTIMATE.init(); {20516#true} is VALID [2018-11-14 17:09:15,419 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 17:09:15,420 INFO L273 TraceCheckUtils]: 2: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,420 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20516#true} {20516#true} #69#return; {20516#true} is VALID [2018-11-14 17:09:15,420 INFO L256 TraceCheckUtils]: 4: Hoare triple {20516#true} call #t~ret12 := main(); {20516#true} is VALID [2018-11-14 17:09:15,421 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 17:09:15,422 INFO L273 TraceCheckUtils]: 6: Hoare triple {20518#(= main_~i~1 0)} assume true; {20518#(= main_~i~1 0)} is VALID [2018-11-14 17:09:15,422 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 17:09:15,423 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 17:09:15,423 INFO L273 TraceCheckUtils]: 9: Hoare triple {20519#(<= main_~i~1 1)} assume true; {20519#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:15,423 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 17:09:15,424 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 17:09:15,424 INFO L273 TraceCheckUtils]: 12: Hoare triple {20520#(<= main_~i~1 2)} assume true; {20520#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:15,425 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 17:09:15,425 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 17:09:15,425 INFO L273 TraceCheckUtils]: 15: Hoare triple {20521#(<= main_~i~1 3)} assume true; {20521#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:15,426 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 17:09:15,426 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 17:09:15,427 INFO L273 TraceCheckUtils]: 18: Hoare triple {20522#(<= main_~i~1 4)} assume true; {20522#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:15,427 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 17:09:15,428 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 17:09:15,428 INFO L273 TraceCheckUtils]: 21: Hoare triple {20523#(<= main_~i~1 5)} assume true; {20523#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:15,429 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 17:09:15,430 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 17:09:15,430 INFO L273 TraceCheckUtils]: 24: Hoare triple {20524#(<= main_~i~1 6)} assume true; {20524#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:15,431 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 17:09:15,431 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 17:09:15,432 INFO L273 TraceCheckUtils]: 27: Hoare triple {20525#(<= main_~i~1 7)} assume true; {20525#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:15,432 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 17:09:15,433 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 17:09:15,433 INFO L273 TraceCheckUtils]: 30: Hoare triple {20526#(<= main_~i~1 8)} assume true; {20526#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:15,434 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 17:09:15,435 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 17:09:15,435 INFO L273 TraceCheckUtils]: 33: Hoare triple {20527#(<= main_~i~1 9)} assume true; {20527#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:15,436 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 17:09:15,436 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 17:09:15,437 INFO L273 TraceCheckUtils]: 36: Hoare triple {20528#(<= main_~i~1 10)} assume true; {20528#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:15,437 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 17:09:15,438 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 17:09:15,439 INFO L273 TraceCheckUtils]: 39: Hoare triple {20529#(<= main_~i~1 11)} assume true; {20529#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:15,439 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 17:09:15,440 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 17:09:15,440 INFO L273 TraceCheckUtils]: 42: Hoare triple {20530#(<= main_~i~1 12)} assume true; {20530#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:15,441 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 17:09:15,442 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 17:09:15,442 INFO L273 TraceCheckUtils]: 45: Hoare triple {20531#(<= main_~i~1 13)} assume true; {20531#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:15,443 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 17:09:15,443 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 17:09:15,444 INFO L273 TraceCheckUtils]: 48: Hoare triple {20532#(<= main_~i~1 14)} assume true; {20532#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:15,444 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 17:09:15,445 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 17:09:15,446 INFO L273 TraceCheckUtils]: 51: Hoare triple {20533#(<= main_~i~1 15)} assume true; {20533#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:15,446 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 17:09:15,447 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 17:09:15,447 INFO L273 TraceCheckUtils]: 54: Hoare triple {20534#(<= main_~i~1 16)} assume true; {20534#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:15,448 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 17:09:15,448 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 17:09:15,449 INFO L273 TraceCheckUtils]: 57: Hoare triple {20535#(<= main_~i~1 17)} assume true; {20535#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:15,449 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 17:09:15,450 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 17:09:15,451 INFO L273 TraceCheckUtils]: 60: Hoare triple {20536#(<= main_~i~1 18)} assume true; {20536#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:15,451 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 17:09:15,452 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 17:09:15,452 INFO L273 TraceCheckUtils]: 63: Hoare triple {20537#(<= main_~i~1 19)} assume true; {20537#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:15,453 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 17:09:15,454 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 17:09:15,454 INFO L273 TraceCheckUtils]: 66: Hoare triple {20538#(<= main_~i~1 20)} assume true; {20538#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:15,455 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 17:09:15,455 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 17:09:15,456 INFO L273 TraceCheckUtils]: 69: Hoare triple {20539#(<= main_~i~1 21)} assume true; {20539#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:15,456 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 17:09:15,457 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 17:09:15,458 INFO L273 TraceCheckUtils]: 72: Hoare triple {20540#(<= main_~i~1 22)} assume true; {20540#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:15,458 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 17:09:15,459 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 17:09:15,459 INFO L273 TraceCheckUtils]: 75: Hoare triple {20541#(<= main_~i~1 23)} assume true; {20541#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:15,460 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 17:09:15,461 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 17:09:15,461 INFO L273 TraceCheckUtils]: 78: Hoare triple {20542#(<= main_~i~1 24)} assume true; {20542#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:15,462 INFO L273 TraceCheckUtils]: 79: Hoare triple {20542#(<= main_~i~1 24)} assume !(~i~1 < 10000); {20517#false} is VALID [2018-11-14 17:09:15,462 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 17:09:15,462 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 17:09:15,462 INFO L273 TraceCheckUtils]: 82: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,462 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 17:09:15,463 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 17:09:15,463 INFO L273 TraceCheckUtils]: 85: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,463 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 17:09:15,463 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 17:09:15,463 INFO L273 TraceCheckUtils]: 88: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,464 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 17:09:15,464 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 17:09:15,464 INFO L273 TraceCheckUtils]: 91: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,465 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 17:09:15,465 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 17:09:15,465 INFO L273 TraceCheckUtils]: 94: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,465 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 17:09:15,466 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 17:09:15,466 INFO L273 TraceCheckUtils]: 97: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,466 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 17:09:15,466 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 17:09:15,466 INFO L273 TraceCheckUtils]: 100: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,466 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 17:09:15,466 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 17:09:15,466 INFO L273 TraceCheckUtils]: 103: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,466 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 17:09:15,467 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 17:09:15,467 INFO L273 TraceCheckUtils]: 106: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,467 INFO L273 TraceCheckUtils]: 107: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 17:09:15,467 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 17:09:15,467 INFO L273 TraceCheckUtils]: 109: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,467 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {20516#true} {20517#false} #73#return; {20517#false} is VALID [2018-11-14 17:09:15,467 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 17:09:15,467 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 17:09:15,467 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 17:09:15,467 INFO L273 TraceCheckUtils]: 114: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,468 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 17:09:15,468 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 17:09:15,468 INFO L273 TraceCheckUtils]: 117: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,468 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 17:09:15,468 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 17:09:15,468 INFO L273 TraceCheckUtils]: 120: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,468 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 17:09:15,468 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 17:09:15,468 INFO L273 TraceCheckUtils]: 123: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,469 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 17:09:15,469 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 17:09:15,469 INFO L273 TraceCheckUtils]: 126: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,469 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 17:09:15,469 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 17:09:15,469 INFO L273 TraceCheckUtils]: 129: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,469 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 17:09:15,469 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 17:09:15,469 INFO L273 TraceCheckUtils]: 132: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,469 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 17:09:15,470 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 17:09:15,470 INFO L273 TraceCheckUtils]: 135: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,470 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 17:09:15,470 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 17:09:15,470 INFO L273 TraceCheckUtils]: 138: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,470 INFO L273 TraceCheckUtils]: 139: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 17:09:15,470 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 17:09:15,470 INFO L273 TraceCheckUtils]: 141: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,470 INFO L268 TraceCheckUtils]: 142: Hoare quadruple {20516#true} {20517#false} #75#return; {20517#false} is VALID [2018-11-14 17:09:15,471 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 17:09:15,471 INFO L273 TraceCheckUtils]: 144: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:15,471 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 17:09:15,471 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 17:09:15,471 INFO L273 TraceCheckUtils]: 147: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:15,471 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 17:09:15,471 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 17:09:15,471 INFO L273 TraceCheckUtils]: 150: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:15,471 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 17:09:15,471 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 17:09:15,472 INFO L273 TraceCheckUtils]: 153: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:15,472 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 17:09:15,472 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 17:09:15,472 INFO L273 TraceCheckUtils]: 156: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:15,472 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 17:09:15,472 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 17:09:15,472 INFO L273 TraceCheckUtils]: 159: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:15,472 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 17:09:15,472 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 17:09:15,472 INFO L273 TraceCheckUtils]: 162: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:15,473 INFO L273 TraceCheckUtils]: 163: Hoare triple {20517#false} assume !(~i~2 < 9999); {20517#false} is VALID [2018-11-14 17:09:15,473 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 17:09:15,473 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 17:09:15,473 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 17:09:15,473 INFO L273 TraceCheckUtils]: 167: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,473 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 17:09:15,473 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 17:09:15,473 INFO L273 TraceCheckUtils]: 170: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,473 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 17:09:15,473 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 17:09:15,474 INFO L273 TraceCheckUtils]: 173: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,474 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 17:09:15,474 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 17:09:15,474 INFO L273 TraceCheckUtils]: 176: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,474 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 17:09:15,474 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 17:09:15,474 INFO L273 TraceCheckUtils]: 179: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,474 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 17:09:15,474 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 17:09:15,474 INFO L273 TraceCheckUtils]: 182: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,475 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 17:09:15,475 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 17:09:15,475 INFO L273 TraceCheckUtils]: 185: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,475 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 17:09:15,475 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 17:09:15,475 INFO L273 TraceCheckUtils]: 188: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,475 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 17:09:15,475 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 17:09:15,475 INFO L273 TraceCheckUtils]: 191: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,476 INFO L273 TraceCheckUtils]: 192: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 17:09:15,476 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 17:09:15,476 INFO L273 TraceCheckUtils]: 194: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:15,476 INFO L268 TraceCheckUtils]: 195: Hoare quadruple {20516#true} {20517#false} #77#return; {20517#false} is VALID [2018-11-14 17:09:15,476 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 17:09:15,476 INFO L273 TraceCheckUtils]: 197: Hoare triple {20517#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20517#false} is VALID [2018-11-14 17:09:15,476 INFO L273 TraceCheckUtils]: 198: Hoare triple {20517#false} assume !false; {20517#false} is VALID [2018-11-14 17:09:15,495 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 17:09:15,496 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:15,496 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 17:09:15,503 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-14 17:09:15,941 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2018-11-14 17:09:15,941 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:15,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:15,975 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:16,236 INFO L256 TraceCheckUtils]: 0: Hoare triple {20516#true} call ULTIMATE.init(); {20516#true} is VALID [2018-11-14 17:09:16,236 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 17:09:16,237 INFO L273 TraceCheckUtils]: 2: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,237 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20516#true} {20516#true} #69#return; {20516#true} is VALID [2018-11-14 17:09:16,237 INFO L256 TraceCheckUtils]: 4: Hoare triple {20516#true} call #t~ret12 := main(); {20516#true} is VALID [2018-11-14 17:09:16,237 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 17:09:16,237 INFO L273 TraceCheckUtils]: 6: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,237 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 17:09:16,238 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 17:09:16,238 INFO L273 TraceCheckUtils]: 9: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,238 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 17:09:16,238 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 17:09:16,238 INFO L273 TraceCheckUtils]: 12: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,238 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 17:09:16,238 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 17:09:16,238 INFO L273 TraceCheckUtils]: 15: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,238 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 17:09:16,238 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 17:09:16,239 INFO L273 TraceCheckUtils]: 18: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,239 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 17:09:16,239 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 17:09:16,239 INFO L273 TraceCheckUtils]: 21: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,239 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 17:09:16,239 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 17:09:16,239 INFO L273 TraceCheckUtils]: 24: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,239 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 17:09:16,239 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 17:09:16,239 INFO L273 TraceCheckUtils]: 27: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,240 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 17:09:16,240 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 17:09:16,240 INFO L273 TraceCheckUtils]: 30: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,240 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 17:09:16,240 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 17:09:16,240 INFO L273 TraceCheckUtils]: 33: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,240 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 17:09:16,240 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 17:09:16,240 INFO L273 TraceCheckUtils]: 36: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,241 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 17:09:16,241 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 17:09:16,241 INFO L273 TraceCheckUtils]: 39: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,241 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 17:09:16,241 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 17:09:16,241 INFO L273 TraceCheckUtils]: 42: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,241 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 17:09:16,241 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 17:09:16,241 INFO L273 TraceCheckUtils]: 45: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,241 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 17:09:16,242 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 17:09:16,242 INFO L273 TraceCheckUtils]: 48: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,242 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 17:09:16,242 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 17:09:16,242 INFO L273 TraceCheckUtils]: 51: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,242 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 17:09:16,242 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 17:09:16,242 INFO L273 TraceCheckUtils]: 54: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,242 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 17:09:16,242 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 17:09:16,243 INFO L273 TraceCheckUtils]: 57: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,243 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 17:09:16,243 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 17:09:16,243 INFO L273 TraceCheckUtils]: 60: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,243 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 17:09:16,243 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 17:09:16,243 INFO L273 TraceCheckUtils]: 63: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,243 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 17:09:16,243 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 17:09:16,243 INFO L273 TraceCheckUtils]: 66: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,244 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 17:09:16,244 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 17:09:16,244 INFO L273 TraceCheckUtils]: 69: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,244 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 17:09:16,244 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 17:09:16,244 INFO L273 TraceCheckUtils]: 72: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,244 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 17:09:16,244 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 17:09:16,244 INFO L273 TraceCheckUtils]: 75: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,244 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 17:09:16,245 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 17:09:16,245 INFO L273 TraceCheckUtils]: 78: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,245 INFO L273 TraceCheckUtils]: 79: Hoare triple {20516#true} assume !(~i~1 < 10000); {20516#true} is VALID [2018-11-14 17:09:16,245 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 17:09:16,245 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 17:09:16,245 INFO L273 TraceCheckUtils]: 82: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,245 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 17:09:16,245 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 17:09:16,245 INFO L273 TraceCheckUtils]: 85: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,245 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 17:09:16,246 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 17:09:16,246 INFO L273 TraceCheckUtils]: 88: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,246 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 17:09:16,246 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 17:09:16,246 INFO L273 TraceCheckUtils]: 91: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,246 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 17:09:16,246 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 17:09:16,246 INFO L273 TraceCheckUtils]: 94: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,246 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 17:09:16,246 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 17:09:16,247 INFO L273 TraceCheckUtils]: 97: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,247 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 17:09:16,247 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 17:09:16,247 INFO L273 TraceCheckUtils]: 100: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,247 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 17:09:16,247 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 17:09:16,247 INFO L273 TraceCheckUtils]: 103: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,247 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 17:09:16,247 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 17:09:16,247 INFO L273 TraceCheckUtils]: 106: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,248 INFO L273 TraceCheckUtils]: 107: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 17:09:16,248 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 17:09:16,248 INFO L273 TraceCheckUtils]: 109: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,248 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {20516#true} {20516#true} #73#return; {20516#true} is VALID [2018-11-14 17:09:16,248 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 17:09:16,248 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 17:09:16,248 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 17:09:16,248 INFO L273 TraceCheckUtils]: 114: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,248 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 17:09:16,249 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 17:09:16,249 INFO L273 TraceCheckUtils]: 117: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,249 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 17:09:16,249 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 17:09:16,249 INFO L273 TraceCheckUtils]: 120: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,249 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 17:09:16,249 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 17:09:16,249 INFO L273 TraceCheckUtils]: 123: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,249 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 17:09:16,249 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 17:09:16,250 INFO L273 TraceCheckUtils]: 126: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,250 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 17:09:16,250 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 17:09:16,250 INFO L273 TraceCheckUtils]: 129: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,250 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 17:09:16,250 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 17:09:16,250 INFO L273 TraceCheckUtils]: 132: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,250 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 17:09:16,250 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 17:09:16,250 INFO L273 TraceCheckUtils]: 135: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,251 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 17:09:16,251 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 17:09:16,251 INFO L273 TraceCheckUtils]: 138: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,251 INFO L273 TraceCheckUtils]: 139: Hoare triple {20516#true} assume !(~i~0 < 10000); {20516#true} is VALID [2018-11-14 17:09:16,251 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 17:09:16,251 INFO L273 TraceCheckUtils]: 141: Hoare triple {20516#true} assume true; {20516#true} is VALID [2018-11-14 17:09:16,251 INFO L268 TraceCheckUtils]: 142: Hoare quadruple {20516#true} {20516#true} #75#return; {20516#true} is VALID [2018-11-14 17:09:16,252 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 17:09:16,252 INFO L273 TraceCheckUtils]: 144: Hoare triple {20975#(<= main_~i~2 0)} assume true; {20975#(<= main_~i~2 0)} is VALID [2018-11-14 17:09:16,252 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 17:09:16,253 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 17:09:16,253 INFO L273 TraceCheckUtils]: 147: Hoare triple {20985#(<= main_~i~2 1)} assume true; {20985#(<= main_~i~2 1)} is VALID [2018-11-14 17:09:16,254 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 17:09:16,254 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 17:09:16,255 INFO L273 TraceCheckUtils]: 150: Hoare triple {20995#(<= main_~i~2 2)} assume true; {20995#(<= main_~i~2 2)} is VALID [2018-11-14 17:09:16,255 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 17:09:16,256 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 17:09:16,256 INFO L273 TraceCheckUtils]: 153: Hoare triple {21005#(<= main_~i~2 3)} assume true; {21005#(<= main_~i~2 3)} is VALID [2018-11-14 17:09:16,257 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 17:09:16,257 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 17:09:16,258 INFO L273 TraceCheckUtils]: 156: Hoare triple {21015#(<= main_~i~2 4)} assume true; {21015#(<= main_~i~2 4)} is VALID [2018-11-14 17:09:16,258 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 17:09:16,259 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 17:09:16,260 INFO L273 TraceCheckUtils]: 159: Hoare triple {21025#(<= main_~i~2 5)} assume true; {21025#(<= main_~i~2 5)} is VALID [2018-11-14 17:09:16,260 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 17:09:16,261 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 17:09:16,261 INFO L273 TraceCheckUtils]: 162: Hoare triple {21035#(<= main_~i~2 6)} assume true; {21035#(<= main_~i~2 6)} is VALID [2018-11-14 17:09:16,262 INFO L273 TraceCheckUtils]: 163: Hoare triple {21035#(<= main_~i~2 6)} assume !(~i~2 < 9999); {20517#false} is VALID [2018-11-14 17:09:16,262 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 17:09:16,262 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 17:09:16,262 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 17:09:16,263 INFO L273 TraceCheckUtils]: 167: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,263 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 17:09:16,263 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 17:09:16,263 INFO L273 TraceCheckUtils]: 170: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,263 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 17:09:16,264 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 17:09:16,264 INFO L273 TraceCheckUtils]: 173: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,264 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 17:09:16,264 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 17:09:16,264 INFO L273 TraceCheckUtils]: 176: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,264 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 17:09:16,265 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 17:09:16,265 INFO L273 TraceCheckUtils]: 179: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,265 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 17:09:16,265 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 17:09:16,265 INFO L273 TraceCheckUtils]: 182: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,265 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 17:09:16,265 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 17:09:16,265 INFO L273 TraceCheckUtils]: 185: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,265 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 17:09:16,265 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 17:09:16,266 INFO L273 TraceCheckUtils]: 188: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,266 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 17:09:16,266 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 17:09:16,266 INFO L273 TraceCheckUtils]: 191: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,266 INFO L273 TraceCheckUtils]: 192: Hoare triple {20517#false} assume !(~i~0 < 10000); {20517#false} is VALID [2018-11-14 17:09:16,266 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 17:09:16,266 INFO L273 TraceCheckUtils]: 194: Hoare triple {20517#false} assume true; {20517#false} is VALID [2018-11-14 17:09:16,266 INFO L268 TraceCheckUtils]: 195: Hoare quadruple {20517#false} {20517#false} #77#return; {20517#false} is VALID [2018-11-14 17:09:16,266 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 17:09:16,266 INFO L273 TraceCheckUtils]: 197: Hoare triple {20517#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20517#false} is VALID [2018-11-14 17:09:16,267 INFO L273 TraceCheckUtils]: 198: Hoare triple {20517#false} assume !false; {20517#false} is VALID [2018-11-14 17:09:16,281 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 17:09:16,302 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:16,302 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 9] total 34 [2018-11-14 17:09:16,303 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 199 [2018-11-14 17:09:16,303 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:16,303 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states. [2018-11-14 17:09:16,433 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 17:09:16,434 INFO L459 AbstractCegarLoop]: Interpolant automaton has 34 states [2018-11-14 17:09:16,434 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2018-11-14 17:09:16,435 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=386, Invalid=736, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 17:09:16,435 INFO L87 Difference]: Start difference. First operand 140 states and 144 transitions. Second operand 34 states. [2018-11-14 17:09:17,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:17,488 INFO L93 Difference]: Finished difference Result 208 states and 217 transitions. [2018-11-14 17:09:17,488 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2018-11-14 17:09:17,489 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 199 [2018-11-14 17:09:17,489 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:17,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 17:09:17,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 154 transitions. [2018-11-14 17:09:17,490 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-14 17:09:17,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 154 transitions. [2018-11-14 17:09:17,491 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states and 154 transitions. [2018-11-14 17:09:17,625 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 17:09:17,628 INFO L225 Difference]: With dead ends: 208 [2018-11-14 17:09:17,628 INFO L226 Difference]: Without dead ends: 148 [2018-11-14 17:09:17,630 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 225 GetRequests, 193 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 168 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=386, Invalid=736, Unknown=0, NotChecked=0, Total=1122 [2018-11-14 17:09:17,630 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2018-11-14 17:09:17,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 146. [2018-11-14 17:09:17,666 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:17,666 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand 146 states. [2018-11-14 17:09:17,666 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand 146 states. [2018-11-14 17:09:17,666 INFO L87 Difference]: Start difference. First operand 148 states. Second operand 146 states. [2018-11-14 17:09:17,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:17,669 INFO L93 Difference]: Finished difference Result 148 states and 152 transitions. [2018-11-14 17:09:17,669 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 152 transitions. [2018-11-14 17:09:17,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:17,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:17,670 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand 148 states. [2018-11-14 17:09:17,670 INFO L87 Difference]: Start difference. First operand 146 states. Second operand 148 states. [2018-11-14 17:09:17,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:17,672 INFO L93 Difference]: Finished difference Result 148 states and 152 transitions. [2018-11-14 17:09:17,673 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 152 transitions. [2018-11-14 17:09:17,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:17,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:17,673 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:17,673 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:17,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 146 states. [2018-11-14 17:09:17,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 150 transitions. [2018-11-14 17:09:17,676 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 150 transitions. Word has length 199 [2018-11-14 17:09:17,676 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:17,676 INFO L480 AbstractCegarLoop]: Abstraction has 146 states and 150 transitions. [2018-11-14 17:09:17,676 INFO L481 AbstractCegarLoop]: Interpolant automaton has 34 states. [2018-11-14 17:09:17,676 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 150 transitions. [2018-11-14 17:09:17,677 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 206 [2018-11-14 17:09:17,678 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:17,678 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 17:09:17,678 INFO L423 AbstractCegarLoop]: === Iteration 29 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:17,678 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:17,678 INFO L82 PathProgramCache]: Analyzing trace with hash -256806737, now seen corresponding path program 25 times [2018-11-14 17:09:17,678 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:17,678 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:17,679 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:17,679 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:17,679 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:17,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:18,241 INFO L256 TraceCheckUtils]: 0: Hoare triple {21918#true} call ULTIMATE.init(); {21918#true} is VALID [2018-11-14 17:09:18,241 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 17:09:18,242 INFO L273 TraceCheckUtils]: 2: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,242 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {21918#true} {21918#true} #69#return; {21918#true} is VALID [2018-11-14 17:09:18,242 INFO L256 TraceCheckUtils]: 4: Hoare triple {21918#true} call #t~ret12 := main(); {21918#true} is VALID [2018-11-14 17:09:18,242 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 17:09:18,243 INFO L273 TraceCheckUtils]: 6: Hoare triple {21920#(= main_~i~1 0)} assume true; {21920#(= main_~i~1 0)} is VALID [2018-11-14 17:09:18,243 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 17:09:18,243 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 17:09:18,244 INFO L273 TraceCheckUtils]: 9: Hoare triple {21921#(<= main_~i~1 1)} assume true; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:18,244 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 17:09:18,245 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 17:09:18,245 INFO L273 TraceCheckUtils]: 12: Hoare triple {21922#(<= main_~i~1 2)} assume true; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:18,246 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 17:09:18,246 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 17:09:18,247 INFO L273 TraceCheckUtils]: 15: Hoare triple {21923#(<= main_~i~1 3)} assume true; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:18,247 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 17:09:18,248 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 17:09:18,248 INFO L273 TraceCheckUtils]: 18: Hoare triple {21924#(<= main_~i~1 4)} assume true; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:18,249 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 17:09:18,250 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 17:09:18,250 INFO L273 TraceCheckUtils]: 21: Hoare triple {21925#(<= main_~i~1 5)} assume true; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:18,251 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 17:09:18,251 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 17:09:18,252 INFO L273 TraceCheckUtils]: 24: Hoare triple {21926#(<= main_~i~1 6)} assume true; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:18,252 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 17:09:18,253 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 17:09:18,253 INFO L273 TraceCheckUtils]: 27: Hoare triple {21927#(<= main_~i~1 7)} assume true; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:18,254 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 17:09:18,254 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 17:09:18,255 INFO L273 TraceCheckUtils]: 30: Hoare triple {21928#(<= main_~i~1 8)} assume true; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:18,255 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 17:09:18,256 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 17:09:18,256 INFO L273 TraceCheckUtils]: 33: Hoare triple {21929#(<= main_~i~1 9)} assume true; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:18,257 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 17:09:18,258 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 17:09:18,258 INFO L273 TraceCheckUtils]: 36: Hoare triple {21930#(<= main_~i~1 10)} assume true; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:18,259 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 17:09:18,259 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 17:09:18,260 INFO L273 TraceCheckUtils]: 39: Hoare triple {21931#(<= main_~i~1 11)} assume true; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:18,260 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 17:09:18,261 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 17:09:18,261 INFO L273 TraceCheckUtils]: 42: Hoare triple {21932#(<= main_~i~1 12)} assume true; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:18,262 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 17:09:18,262 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 17:09:18,263 INFO L273 TraceCheckUtils]: 45: Hoare triple {21933#(<= main_~i~1 13)} assume true; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:18,263 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 17:09:18,264 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 17:09:18,265 INFO L273 TraceCheckUtils]: 48: Hoare triple {21934#(<= main_~i~1 14)} assume true; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:18,265 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 17:09:18,266 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 17:09:18,266 INFO L273 TraceCheckUtils]: 51: Hoare triple {21935#(<= main_~i~1 15)} assume true; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:18,267 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 17:09:18,268 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 17:09:18,268 INFO L273 TraceCheckUtils]: 54: Hoare triple {21936#(<= main_~i~1 16)} assume true; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:18,269 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 17:09:18,269 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 17:09:18,270 INFO L273 TraceCheckUtils]: 57: Hoare triple {21937#(<= main_~i~1 17)} assume true; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:18,270 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 17:09:18,271 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 17:09:18,271 INFO L273 TraceCheckUtils]: 60: Hoare triple {21938#(<= main_~i~1 18)} assume true; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:18,272 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 17:09:18,272 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 17:09:18,273 INFO L273 TraceCheckUtils]: 63: Hoare triple {21939#(<= main_~i~1 19)} assume true; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:18,273 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 17:09:18,274 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 17:09:18,275 INFO L273 TraceCheckUtils]: 66: Hoare triple {21940#(<= main_~i~1 20)} assume true; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:18,275 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 17:09:18,276 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 17:09:18,276 INFO L273 TraceCheckUtils]: 69: Hoare triple {21941#(<= main_~i~1 21)} assume true; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:18,277 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 17:09:18,277 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 17:09:18,278 INFO L273 TraceCheckUtils]: 72: Hoare triple {21942#(<= main_~i~1 22)} assume true; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:18,278 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 17:09:18,279 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 17:09:18,280 INFO L273 TraceCheckUtils]: 75: Hoare triple {21943#(<= main_~i~1 23)} assume true; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:18,280 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 17:09:18,281 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 17:09:18,281 INFO L273 TraceCheckUtils]: 78: Hoare triple {21944#(<= main_~i~1 24)} assume true; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:18,282 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 17:09:18,282 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 17:09:18,283 INFO L273 TraceCheckUtils]: 81: Hoare triple {21945#(<= main_~i~1 25)} assume true; {21945#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:18,284 INFO L273 TraceCheckUtils]: 82: Hoare triple {21945#(<= main_~i~1 25)} assume !(~i~1 < 10000); {21919#false} is VALID [2018-11-14 17:09:18,284 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 17:09:18,284 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 17:09:18,284 INFO L273 TraceCheckUtils]: 85: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,284 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 17:09:18,285 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 17:09:18,285 INFO L273 TraceCheckUtils]: 88: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,285 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 17:09:18,285 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 17:09:18,285 INFO L273 TraceCheckUtils]: 91: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,285 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 17:09:18,286 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 17:09:18,286 INFO L273 TraceCheckUtils]: 94: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,286 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 17:09:18,286 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 17:09:18,286 INFO L273 TraceCheckUtils]: 97: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,286 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 17:09:18,287 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 17:09:18,287 INFO L273 TraceCheckUtils]: 100: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,287 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 17:09:18,287 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 17:09:18,287 INFO L273 TraceCheckUtils]: 103: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,288 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 17:09:18,288 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 17:09:18,288 INFO L273 TraceCheckUtils]: 106: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,288 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 17:09:18,288 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 17:09:18,288 INFO L273 TraceCheckUtils]: 109: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,288 INFO L273 TraceCheckUtils]: 110: Hoare triple {21918#true} assume !(~i~0 < 10000); {21918#true} is VALID [2018-11-14 17:09:18,289 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 17:09:18,289 INFO L273 TraceCheckUtils]: 112: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,289 INFO L268 TraceCheckUtils]: 113: Hoare quadruple {21918#true} {21919#false} #73#return; {21919#false} is VALID [2018-11-14 17:09:18,289 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 17:09:18,289 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 17:09:18,289 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 17:09:18,289 INFO L273 TraceCheckUtils]: 117: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,289 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 17:09:18,289 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 17:09:18,289 INFO L273 TraceCheckUtils]: 120: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,290 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 17:09:18,290 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 17:09:18,290 INFO L273 TraceCheckUtils]: 123: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,290 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 17:09:18,290 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 17:09:18,290 INFO L273 TraceCheckUtils]: 126: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,290 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 17:09:18,290 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 17:09:18,290 INFO L273 TraceCheckUtils]: 129: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,290 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 17:09:18,291 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 17:09:18,291 INFO L273 TraceCheckUtils]: 132: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,291 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 17:09:18,291 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 17:09:18,291 INFO L273 TraceCheckUtils]: 135: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,291 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 17:09:18,291 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 17:09:18,291 INFO L273 TraceCheckUtils]: 138: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,291 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 17:09:18,292 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 17:09:18,292 INFO L273 TraceCheckUtils]: 141: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,292 INFO L273 TraceCheckUtils]: 142: Hoare triple {21918#true} assume !(~i~0 < 10000); {21918#true} is VALID [2018-11-14 17:09:18,292 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 17:09:18,292 INFO L273 TraceCheckUtils]: 144: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,292 INFO L268 TraceCheckUtils]: 145: Hoare quadruple {21918#true} {21919#false} #75#return; {21919#false} is VALID [2018-11-14 17:09:18,292 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 17:09:18,292 INFO L273 TraceCheckUtils]: 147: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,292 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 17:09:18,292 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 17:09:18,293 INFO L273 TraceCheckUtils]: 150: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,293 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 17:09:18,293 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 17:09:18,293 INFO L273 TraceCheckUtils]: 153: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,293 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 17:09:18,293 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 17:09:18,293 INFO L273 TraceCheckUtils]: 156: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,293 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 17:09:18,293 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 17:09:18,293 INFO L273 TraceCheckUtils]: 159: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,294 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 17:09:18,294 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 17:09:18,294 INFO L273 TraceCheckUtils]: 162: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,294 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 17:09:18,294 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 17:09:18,294 INFO L273 TraceCheckUtils]: 165: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,294 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 17:09:18,294 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 17:09:18,294 INFO L273 TraceCheckUtils]: 168: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,294 INFO L273 TraceCheckUtils]: 169: Hoare triple {21919#false} assume !(~i~2 < 9999); {21919#false} is VALID [2018-11-14 17:09:18,295 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 17:09:18,295 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 17:09:18,295 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 17:09:18,295 INFO L273 TraceCheckUtils]: 173: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,295 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 17:09:18,295 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 17:09:18,295 INFO L273 TraceCheckUtils]: 176: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,295 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 17:09:18,295 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 17:09:18,296 INFO L273 TraceCheckUtils]: 179: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,296 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 17:09:18,296 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 17:09:18,296 INFO L273 TraceCheckUtils]: 182: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,296 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 17:09:18,296 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 17:09:18,296 INFO L273 TraceCheckUtils]: 185: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,296 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 17:09:18,296 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 17:09:18,296 INFO L273 TraceCheckUtils]: 188: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,297 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 17:09:18,297 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 17:09:18,297 INFO L273 TraceCheckUtils]: 191: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,297 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 17:09:18,297 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 17:09:18,297 INFO L273 TraceCheckUtils]: 194: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,297 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 17:09:18,297 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 17:09:18,297 INFO L273 TraceCheckUtils]: 197: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,297 INFO L273 TraceCheckUtils]: 198: Hoare triple {21918#true} assume !(~i~0 < 10000); {21918#true} is VALID [2018-11-14 17:09:18,298 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 17:09:18,298 INFO L273 TraceCheckUtils]: 200: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,298 INFO L268 TraceCheckUtils]: 201: Hoare quadruple {21918#true} {21919#false} #77#return; {21919#false} is VALID [2018-11-14 17:09:18,298 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 17:09:18,298 INFO L273 TraceCheckUtils]: 203: Hoare triple {21919#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {21919#false} is VALID [2018-11-14 17:09:18,298 INFO L273 TraceCheckUtils]: 204: Hoare triple {21919#false} assume !false; {21919#false} is VALID [2018-11-14 17:09:18,316 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 17:09:18,317 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:18,317 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 17:09:18,327 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:09:18,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:18,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:18,452 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:18,830 INFO L256 TraceCheckUtils]: 0: Hoare triple {21918#true} call ULTIMATE.init(); {21918#true} is VALID [2018-11-14 17:09:18,830 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 17:09:18,830 INFO L273 TraceCheckUtils]: 2: Hoare triple {21918#true} assume true; {21918#true} is VALID [2018-11-14 17:09:18,830 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {21918#true} {21918#true} #69#return; {21918#true} is VALID [2018-11-14 17:09:18,831 INFO L256 TraceCheckUtils]: 4: Hoare triple {21918#true} call #t~ret12 := main(); {21918#true} is VALID [2018-11-14 17:09:18,831 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 17:09:18,832 INFO L273 TraceCheckUtils]: 6: Hoare triple {21964#(<= main_~i~1 0)} assume true; {21964#(<= main_~i~1 0)} is VALID [2018-11-14 17:09:18,832 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 17:09:18,832 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 17:09:18,833 INFO L273 TraceCheckUtils]: 9: Hoare triple {21921#(<= main_~i~1 1)} assume true; {21921#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:18,833 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 17:09:18,833 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 17:09:18,834 INFO L273 TraceCheckUtils]: 12: Hoare triple {21922#(<= main_~i~1 2)} assume true; {21922#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:18,834 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 17:09:18,834 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 17:09:18,835 INFO L273 TraceCheckUtils]: 15: Hoare triple {21923#(<= main_~i~1 3)} assume true; {21923#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:18,835 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 17:09:18,836 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 17:09:18,837 INFO L273 TraceCheckUtils]: 18: Hoare triple {21924#(<= main_~i~1 4)} assume true; {21924#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:18,837 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 17:09:18,838 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 17:09:18,838 INFO L273 TraceCheckUtils]: 21: Hoare triple {21925#(<= main_~i~1 5)} assume true; {21925#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:18,839 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 17:09:18,839 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 17:09:18,840 INFO L273 TraceCheckUtils]: 24: Hoare triple {21926#(<= main_~i~1 6)} assume true; {21926#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:18,840 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 17:09:18,841 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 17:09:18,842 INFO L273 TraceCheckUtils]: 27: Hoare triple {21927#(<= main_~i~1 7)} assume true; {21927#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:18,842 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 17:09:18,843 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 17:09:18,843 INFO L273 TraceCheckUtils]: 30: Hoare triple {21928#(<= main_~i~1 8)} assume true; {21928#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:18,844 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 17:09:18,844 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 17:09:18,845 INFO L273 TraceCheckUtils]: 33: Hoare triple {21929#(<= main_~i~1 9)} assume true; {21929#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:18,845 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 17:09:18,846 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 17:09:18,846 INFO L273 TraceCheckUtils]: 36: Hoare triple {21930#(<= main_~i~1 10)} assume true; {21930#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:18,847 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 17:09:18,848 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 17:09:18,848 INFO L273 TraceCheckUtils]: 39: Hoare triple {21931#(<= main_~i~1 11)} assume true; {21931#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:18,848 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 17:09:18,849 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 17:09:18,850 INFO L273 TraceCheckUtils]: 42: Hoare triple {21932#(<= main_~i~1 12)} assume true; {21932#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:18,850 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 17:09:18,851 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 17:09:18,851 INFO L273 TraceCheckUtils]: 45: Hoare triple {21933#(<= main_~i~1 13)} assume true; {21933#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:18,852 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 17:09:18,852 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 17:09:18,853 INFO L273 TraceCheckUtils]: 48: Hoare triple {21934#(<= main_~i~1 14)} assume true; {21934#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:18,853 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 17:09:18,854 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 17:09:18,854 INFO L273 TraceCheckUtils]: 51: Hoare triple {21935#(<= main_~i~1 15)} assume true; {21935#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:18,855 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 17:09:18,856 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 17:09:18,856 INFO L273 TraceCheckUtils]: 54: Hoare triple {21936#(<= main_~i~1 16)} assume true; {21936#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:18,856 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 17:09:18,857 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 17:09:18,858 INFO L273 TraceCheckUtils]: 57: Hoare triple {21937#(<= main_~i~1 17)} assume true; {21937#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:18,858 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 17:09:18,867 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 17:09:18,868 INFO L273 TraceCheckUtils]: 60: Hoare triple {21938#(<= main_~i~1 18)} assume true; {21938#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:18,868 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 17:09:18,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 17:09:18,869 INFO L273 TraceCheckUtils]: 63: Hoare triple {21939#(<= main_~i~1 19)} assume true; {21939#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:18,869 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 17:09:18,870 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 17:09:18,870 INFO L273 TraceCheckUtils]: 66: Hoare triple {21940#(<= main_~i~1 20)} assume true; {21940#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:18,870 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 17:09:18,871 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 17:09:18,871 INFO L273 TraceCheckUtils]: 69: Hoare triple {21941#(<= main_~i~1 21)} assume true; {21941#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:18,871 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 17:09:18,872 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 17:09:18,873 INFO L273 TraceCheckUtils]: 72: Hoare triple {21942#(<= main_~i~1 22)} assume true; {21942#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:18,873 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 17:09:18,874 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 17:09:18,874 INFO L273 TraceCheckUtils]: 75: Hoare triple {21943#(<= main_~i~1 23)} assume true; {21943#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:18,875 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 17:09:18,876 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 17:09:18,876 INFO L273 TraceCheckUtils]: 78: Hoare triple {21944#(<= main_~i~1 24)} assume true; {21944#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:18,877 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 17:09:18,877 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 17:09:18,878 INFO L273 TraceCheckUtils]: 81: Hoare triple {21945#(<= main_~i~1 25)} assume true; {21945#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:18,878 INFO L273 TraceCheckUtils]: 82: Hoare triple {21945#(<= main_~i~1 25)} assume !(~i~1 < 10000); {21919#false} is VALID [2018-11-14 17:09:18,879 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 17:09:18,879 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 17:09:18,879 INFO L273 TraceCheckUtils]: 85: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,879 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 17:09:18,879 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 17:09:18,880 INFO L273 TraceCheckUtils]: 88: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,880 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 17:09:18,880 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 17:09:18,880 INFO L273 TraceCheckUtils]: 91: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,880 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 17:09:18,880 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 17:09:18,881 INFO L273 TraceCheckUtils]: 94: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,881 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 17:09:18,881 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 17:09:18,881 INFO L273 TraceCheckUtils]: 97: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,881 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 17:09:18,881 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 17:09:18,881 INFO L273 TraceCheckUtils]: 100: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,881 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 17:09:18,881 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 17:09:18,882 INFO L273 TraceCheckUtils]: 103: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,882 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 17:09:18,882 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 17:09:18,882 INFO L273 TraceCheckUtils]: 106: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,882 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 17:09:18,882 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 17:09:18,882 INFO L273 TraceCheckUtils]: 109: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,882 INFO L273 TraceCheckUtils]: 110: Hoare triple {21919#false} assume !(~i~0 < 10000); {21919#false} is VALID [2018-11-14 17:09:18,882 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 17:09:18,882 INFO L273 TraceCheckUtils]: 112: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,883 INFO L268 TraceCheckUtils]: 113: Hoare quadruple {21919#false} {21919#false} #73#return; {21919#false} is VALID [2018-11-14 17:09:18,883 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 17:09:18,883 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 17:09:18,883 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 17:09:18,883 INFO L273 TraceCheckUtils]: 117: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,883 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 17:09:18,883 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 17:09:18,883 INFO L273 TraceCheckUtils]: 120: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,883 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 17:09:18,883 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 17:09:18,884 INFO L273 TraceCheckUtils]: 123: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,884 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 17:09:18,884 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 17:09:18,884 INFO L273 TraceCheckUtils]: 126: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,884 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 17:09:18,884 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 17:09:18,884 INFO L273 TraceCheckUtils]: 129: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,884 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 17:09:18,884 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 17:09:18,884 INFO L273 TraceCheckUtils]: 132: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,885 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 17:09:18,885 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 17:09:18,885 INFO L273 TraceCheckUtils]: 135: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,906 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 17:09:18,906 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 17:09:18,906 INFO L273 TraceCheckUtils]: 138: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,906 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 17:09:18,906 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 17:09:18,906 INFO L273 TraceCheckUtils]: 141: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,906 INFO L273 TraceCheckUtils]: 142: Hoare triple {21919#false} assume !(~i~0 < 10000); {21919#false} is VALID [2018-11-14 17:09:18,907 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 17:09:18,907 INFO L273 TraceCheckUtils]: 144: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,907 INFO L268 TraceCheckUtils]: 145: Hoare quadruple {21919#false} {21919#false} #75#return; {21919#false} is VALID [2018-11-14 17:09:18,907 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 17:09:18,907 INFO L273 TraceCheckUtils]: 147: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,907 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 17:09:18,907 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 17:09:18,907 INFO L273 TraceCheckUtils]: 150: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,908 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 17:09:18,908 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 17:09:18,908 INFO L273 TraceCheckUtils]: 153: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,908 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 17:09:18,908 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 17:09:18,908 INFO L273 TraceCheckUtils]: 156: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,909 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 17:09:18,909 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 17:09:18,909 INFO L273 TraceCheckUtils]: 159: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,909 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 17:09:18,909 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 17:09:18,909 INFO L273 TraceCheckUtils]: 162: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,909 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 17:09:18,909 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 17:09:18,909 INFO L273 TraceCheckUtils]: 165: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,909 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 17:09:18,910 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 17:09:18,910 INFO L273 TraceCheckUtils]: 168: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,910 INFO L273 TraceCheckUtils]: 169: Hoare triple {21919#false} assume !(~i~2 < 9999); {21919#false} is VALID [2018-11-14 17:09:18,910 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 17:09:18,910 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 17:09:18,910 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 17:09:18,910 INFO L273 TraceCheckUtils]: 173: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,910 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 17:09:18,910 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 17:09:18,910 INFO L273 TraceCheckUtils]: 176: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,911 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 17:09:18,911 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 17:09:18,911 INFO L273 TraceCheckUtils]: 179: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,911 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 17:09:18,911 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 17:09:18,911 INFO L273 TraceCheckUtils]: 182: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,911 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 17:09:18,911 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 17:09:18,911 INFO L273 TraceCheckUtils]: 185: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,911 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 17:09:18,912 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 17:09:18,912 INFO L273 TraceCheckUtils]: 188: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,912 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 17:09:18,912 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 17:09:18,912 INFO L273 TraceCheckUtils]: 191: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,912 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 17:09:18,912 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 17:09:18,912 INFO L273 TraceCheckUtils]: 194: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,912 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 17:09:18,913 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 17:09:18,913 INFO L273 TraceCheckUtils]: 197: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,913 INFO L273 TraceCheckUtils]: 198: Hoare triple {21919#false} assume !(~i~0 < 10000); {21919#false} is VALID [2018-11-14 17:09:18,913 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 17:09:18,913 INFO L273 TraceCheckUtils]: 200: Hoare triple {21919#false} assume true; {21919#false} is VALID [2018-11-14 17:09:18,913 INFO L268 TraceCheckUtils]: 201: Hoare quadruple {21919#false} {21919#false} #77#return; {21919#false} is VALID [2018-11-14 17:09:18,914 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 17:09:18,914 INFO L273 TraceCheckUtils]: 203: Hoare triple {21919#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {21919#false} is VALID [2018-11-14 17:09:18,914 INFO L273 TraceCheckUtils]: 204: Hoare triple {21919#false} assume !false; {21919#false} is VALID [2018-11-14 17:09:18,938 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 17:09:18,967 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:18,967 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [28, 28] total 29 [2018-11-14 17:09:18,968 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 205 [2018-11-14 17:09:18,968 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:18,968 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states. [2018-11-14 17:09:19,085 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 17:09:19,086 INFO L459 AbstractCegarLoop]: Interpolant automaton has 29 states [2018-11-14 17:09:19,086 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2018-11-14 17:09:19,086 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=406, Invalid=406, Unknown=0, NotChecked=0, Total=812 [2018-11-14 17:09:19,087 INFO L87 Difference]: Start difference. First operand 146 states and 150 transitions. Second operand 29 states. [2018-11-14 17:09:19,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:19,840 INFO L93 Difference]: Finished difference Result 213 states and 221 transitions. [2018-11-14 17:09:19,840 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2018-11-14 17:09:19,840 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 205 [2018-11-14 17:09:19,840 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:19,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 17:09:19,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 135 transitions. [2018-11-14 17:09:19,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 17:09:19,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 135 transitions. [2018-11-14 17:09:19,842 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 135 transitions. [2018-11-14 17:09:19,961 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 17:09:19,964 INFO L225 Difference]: With dead ends: 213 [2018-11-14 17:09:19,964 INFO L226 Difference]: Without dead ends: 150 [2018-11-14 17:09:19,965 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 232 GetRequests, 205 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=406, Invalid=406, Unknown=0, NotChecked=0, Total=812 [2018-11-14 17:09:19,965 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 150 states. [2018-11-14 17:09:20,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 150 to 149. [2018-11-14 17:09:20,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:20,010 INFO L82 GeneralOperation]: Start isEquivalent. First operand 150 states. Second operand 149 states. [2018-11-14 17:09:20,010 INFO L74 IsIncluded]: Start isIncluded. First operand 150 states. Second operand 149 states. [2018-11-14 17:09:20,011 INFO L87 Difference]: Start difference. First operand 150 states. Second operand 149 states. [2018-11-14 17:09:20,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:20,014 INFO L93 Difference]: Finished difference Result 150 states and 154 transitions. [2018-11-14 17:09:20,014 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 154 transitions. [2018-11-14 17:09:20,014 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:20,014 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:20,014 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 150 states. [2018-11-14 17:09:20,014 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 150 states. [2018-11-14 17:09:20,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:20,017 INFO L93 Difference]: Finished difference Result 150 states and 154 transitions. [2018-11-14 17:09:20,017 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 154 transitions. [2018-11-14 17:09:20,018 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:20,018 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:20,018 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:20,018 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:20,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 149 states. [2018-11-14 17:09:20,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 153 transitions. [2018-11-14 17:09:20,021 INFO L78 Accepts]: Start accepts. Automaton has 149 states and 153 transitions. Word has length 205 [2018-11-14 17:09:20,021 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:20,021 INFO L480 AbstractCegarLoop]: Abstraction has 149 states and 153 transitions. [2018-11-14 17:09:20,021 INFO L481 AbstractCegarLoop]: Interpolant automaton has 29 states. [2018-11-14 17:09:20,021 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 153 transitions. [2018-11-14 17:09:20,022 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 209 [2018-11-14 17:09:20,022 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:20,023 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 17:09:20,023 INFO L423 AbstractCegarLoop]: === Iteration 30 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:20,023 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:20,023 INFO L82 PathProgramCache]: Analyzing trace with hash 1152250244, now seen corresponding path program 26 times [2018-11-14 17:09:20,023 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:20,023 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:20,024 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:20,024 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:09:20,024 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:20,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:20,604 INFO L256 TraceCheckUtils]: 0: Hoare triple {23348#true} call ULTIMATE.init(); {23348#true} is VALID [2018-11-14 17:09:20,604 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 17:09:20,604 INFO L273 TraceCheckUtils]: 2: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,604 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23348#true} {23348#true} #69#return; {23348#true} is VALID [2018-11-14 17:09:20,605 INFO L256 TraceCheckUtils]: 4: Hoare triple {23348#true} call #t~ret12 := main(); {23348#true} is VALID [2018-11-14 17:09:20,605 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 17:09:20,606 INFO L273 TraceCheckUtils]: 6: Hoare triple {23350#(= main_~i~1 0)} assume true; {23350#(= main_~i~1 0)} is VALID [2018-11-14 17:09:20,606 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 17:09:20,607 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 17:09:20,607 INFO L273 TraceCheckUtils]: 9: Hoare triple {23351#(<= main_~i~1 1)} assume true; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:20,608 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 17:09:20,608 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 17:09:20,609 INFO L273 TraceCheckUtils]: 12: Hoare triple {23352#(<= main_~i~1 2)} assume true; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:20,609 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 17:09:20,610 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 17:09:20,610 INFO L273 TraceCheckUtils]: 15: Hoare triple {23353#(<= main_~i~1 3)} assume true; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:20,611 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 17:09:20,612 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 17:09:20,612 INFO L273 TraceCheckUtils]: 18: Hoare triple {23354#(<= main_~i~1 4)} assume true; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:20,613 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 17:09:20,613 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 17:09:20,614 INFO L273 TraceCheckUtils]: 21: Hoare triple {23355#(<= main_~i~1 5)} assume true; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:20,614 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 17:09:20,615 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 17:09:20,615 INFO L273 TraceCheckUtils]: 24: Hoare triple {23356#(<= main_~i~1 6)} assume true; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:20,616 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 17:09:20,616 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 17:09:20,617 INFO L273 TraceCheckUtils]: 27: Hoare triple {23357#(<= main_~i~1 7)} assume true; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:20,617 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 17:09:20,618 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 17:09:20,619 INFO L273 TraceCheckUtils]: 30: Hoare triple {23358#(<= main_~i~1 8)} assume true; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:20,619 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 17:09:20,620 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 17:09:20,620 INFO L273 TraceCheckUtils]: 33: Hoare triple {23359#(<= main_~i~1 9)} assume true; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:20,621 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 17:09:20,621 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 17:09:20,622 INFO L273 TraceCheckUtils]: 36: Hoare triple {23360#(<= main_~i~1 10)} assume true; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:20,622 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 17:09:20,623 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 17:09:20,624 INFO L273 TraceCheckUtils]: 39: Hoare triple {23361#(<= main_~i~1 11)} assume true; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:20,624 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 17:09:20,625 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 17:09:20,625 INFO L273 TraceCheckUtils]: 42: Hoare triple {23362#(<= main_~i~1 12)} assume true; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:20,626 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 17:09:20,626 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 17:09:20,627 INFO L273 TraceCheckUtils]: 45: Hoare triple {23363#(<= main_~i~1 13)} assume true; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:20,627 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 17:09:20,628 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 17:09:20,629 INFO L273 TraceCheckUtils]: 48: Hoare triple {23364#(<= main_~i~1 14)} assume true; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:20,629 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 17:09:20,630 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 17:09:20,630 INFO L273 TraceCheckUtils]: 51: Hoare triple {23365#(<= main_~i~1 15)} assume true; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:20,631 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 17:09:20,632 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 17:09:20,632 INFO L273 TraceCheckUtils]: 54: Hoare triple {23366#(<= main_~i~1 16)} assume true; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:20,633 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 17:09:20,633 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 17:09:20,634 INFO L273 TraceCheckUtils]: 57: Hoare triple {23367#(<= main_~i~1 17)} assume true; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:20,634 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 17:09:20,635 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 17:09:20,635 INFO L273 TraceCheckUtils]: 60: Hoare triple {23368#(<= main_~i~1 18)} assume true; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:20,636 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 17:09:20,636 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 17:09:20,637 INFO L273 TraceCheckUtils]: 63: Hoare triple {23369#(<= main_~i~1 19)} assume true; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:20,637 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 17:09:20,638 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 17:09:20,639 INFO L273 TraceCheckUtils]: 66: Hoare triple {23370#(<= main_~i~1 20)} assume true; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:20,639 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 17:09:20,640 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 17:09:20,640 INFO L273 TraceCheckUtils]: 69: Hoare triple {23371#(<= main_~i~1 21)} assume true; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:20,641 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 17:09:20,641 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 17:09:20,642 INFO L273 TraceCheckUtils]: 72: Hoare triple {23372#(<= main_~i~1 22)} assume true; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:20,642 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 17:09:20,643 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 17:09:20,643 INFO L273 TraceCheckUtils]: 75: Hoare triple {23373#(<= main_~i~1 23)} assume true; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:20,644 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 17:09:20,644 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 17:09:20,645 INFO L273 TraceCheckUtils]: 78: Hoare triple {23374#(<= main_~i~1 24)} assume true; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:20,645 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 17:09:20,646 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 17:09:20,647 INFO L273 TraceCheckUtils]: 81: Hoare triple {23375#(<= main_~i~1 25)} assume true; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:20,647 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 17:09:20,648 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 17:09:20,648 INFO L273 TraceCheckUtils]: 84: Hoare triple {23376#(<= main_~i~1 26)} assume true; {23376#(<= main_~i~1 26)} is VALID [2018-11-14 17:09:20,649 INFO L273 TraceCheckUtils]: 85: Hoare triple {23376#(<= main_~i~1 26)} assume !(~i~1 < 10000); {23349#false} is VALID [2018-11-14 17:09:20,649 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 17:09:20,649 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 17:09:20,649 INFO L273 TraceCheckUtils]: 88: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,650 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 17:09:20,650 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 17:09:20,650 INFO L273 TraceCheckUtils]: 91: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,650 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 17:09:20,650 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 17:09:20,650 INFO L273 TraceCheckUtils]: 94: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,651 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 17:09:20,651 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 17:09:20,651 INFO L273 TraceCheckUtils]: 97: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,651 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 17:09:20,652 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 17:09:20,652 INFO L273 TraceCheckUtils]: 100: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,652 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 17:09:20,652 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 17:09:20,652 INFO L273 TraceCheckUtils]: 103: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,652 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 17:09:20,653 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 17:09:20,653 INFO L273 TraceCheckUtils]: 106: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,653 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 17:09:20,653 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 17:09:20,653 INFO L273 TraceCheckUtils]: 109: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,653 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 17:09:20,654 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 17:09:20,654 INFO L273 TraceCheckUtils]: 112: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,654 INFO L273 TraceCheckUtils]: 113: Hoare triple {23348#true} assume !(~i~0 < 10000); {23348#true} is VALID [2018-11-14 17:09:20,654 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 17:09:20,654 INFO L273 TraceCheckUtils]: 115: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,654 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {23348#true} {23349#false} #73#return; {23349#false} is VALID [2018-11-14 17:09:20,655 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 17:09:20,655 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 17:09:20,655 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 17:09:20,655 INFO L273 TraceCheckUtils]: 120: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,655 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 17:09:20,655 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 17:09:20,656 INFO L273 TraceCheckUtils]: 123: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,656 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 17:09:20,656 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 17:09:20,656 INFO L273 TraceCheckUtils]: 126: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,656 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 17:09:20,656 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 17:09:20,656 INFO L273 TraceCheckUtils]: 129: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,657 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 17:09:20,657 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 17:09:20,657 INFO L273 TraceCheckUtils]: 132: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,657 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 17:09:20,657 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 17:09:20,657 INFO L273 TraceCheckUtils]: 135: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,658 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 17:09:20,658 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 17:09:20,658 INFO L273 TraceCheckUtils]: 138: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,658 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 17:09:20,658 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 17:09:20,658 INFO L273 TraceCheckUtils]: 141: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,658 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 17:09:20,659 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 17:09:20,659 INFO L273 TraceCheckUtils]: 144: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,659 INFO L273 TraceCheckUtils]: 145: Hoare triple {23348#true} assume !(~i~0 < 10000); {23348#true} is VALID [2018-11-14 17:09:20,659 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 17:09:20,659 INFO L273 TraceCheckUtils]: 147: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,659 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {23348#true} {23349#false} #75#return; {23349#false} is VALID [2018-11-14 17:09:20,659 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 17:09:20,660 INFO L273 TraceCheckUtils]: 150: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,660 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 17:09:20,660 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 17:09:20,660 INFO L273 TraceCheckUtils]: 153: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,660 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 17:09:20,660 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 17:09:20,660 INFO L273 TraceCheckUtils]: 156: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,661 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 17:09:20,661 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 17:09:20,661 INFO L273 TraceCheckUtils]: 159: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,661 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 17:09:20,661 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 17:09:20,661 INFO L273 TraceCheckUtils]: 162: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,662 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 17:09:20,662 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 17:09:20,662 INFO L273 TraceCheckUtils]: 165: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,662 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 17:09:20,662 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 17:09:20,662 INFO L273 TraceCheckUtils]: 168: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,662 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 17:09:20,663 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 17:09:20,663 INFO L273 TraceCheckUtils]: 171: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:20,663 INFO L273 TraceCheckUtils]: 172: Hoare triple {23349#false} assume !(~i~2 < 9999); {23349#false} is VALID [2018-11-14 17:09:20,663 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 17:09:20,663 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 17:09:20,663 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 17:09:20,663 INFO L273 TraceCheckUtils]: 176: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,664 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 17:09:20,664 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 17:09:20,664 INFO L273 TraceCheckUtils]: 179: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,664 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 17:09:20,664 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 17:09:20,664 INFO L273 TraceCheckUtils]: 182: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,664 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 17:09:20,665 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 17:09:20,665 INFO L273 TraceCheckUtils]: 185: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,665 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 17:09:20,665 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 17:09:20,665 INFO L273 TraceCheckUtils]: 188: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,665 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 17:09:20,665 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 17:09:20,666 INFO L273 TraceCheckUtils]: 191: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,666 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 17:09:20,666 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 17:09:20,666 INFO L273 TraceCheckUtils]: 194: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,666 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 17:09:20,666 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 17:09:20,667 INFO L273 TraceCheckUtils]: 197: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,667 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 17:09:20,667 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 17:09:20,667 INFO L273 TraceCheckUtils]: 200: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,667 INFO L273 TraceCheckUtils]: 201: Hoare triple {23348#true} assume !(~i~0 < 10000); {23348#true} is VALID [2018-11-14 17:09:20,667 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 17:09:20,667 INFO L273 TraceCheckUtils]: 203: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:20,668 INFO L268 TraceCheckUtils]: 204: Hoare quadruple {23348#true} {23349#false} #77#return; {23349#false} is VALID [2018-11-14 17:09:20,668 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 17:09:20,668 INFO L273 TraceCheckUtils]: 206: Hoare triple {23349#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23349#false} is VALID [2018-11-14 17:09:20,668 INFO L273 TraceCheckUtils]: 207: Hoare triple {23349#false} assume !false; {23349#false} is VALID [2018-11-14 17:09:20,693 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 17:09:20,694 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:20,694 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 17:09:20,710 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:09:20,785 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:09:20,785 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:20,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:20,824 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:21,122 INFO L256 TraceCheckUtils]: 0: Hoare triple {23348#true} call ULTIMATE.init(); {23348#true} is VALID [2018-11-14 17:09:21,123 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 17:09:21,123 INFO L273 TraceCheckUtils]: 2: Hoare triple {23348#true} assume true; {23348#true} is VALID [2018-11-14 17:09:21,123 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23348#true} {23348#true} #69#return; {23348#true} is VALID [2018-11-14 17:09:21,123 INFO L256 TraceCheckUtils]: 4: Hoare triple {23348#true} call #t~ret12 := main(); {23348#true} is VALID [2018-11-14 17:09:21,124 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 17:09:21,124 INFO L273 TraceCheckUtils]: 6: Hoare triple {23395#(<= main_~i~1 0)} assume true; {23395#(<= main_~i~1 0)} is VALID [2018-11-14 17:09:21,125 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 17:09:21,125 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 17:09:21,125 INFO L273 TraceCheckUtils]: 9: Hoare triple {23351#(<= main_~i~1 1)} assume true; {23351#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:21,126 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 17:09:21,126 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 17:09:21,126 INFO L273 TraceCheckUtils]: 12: Hoare triple {23352#(<= main_~i~1 2)} assume true; {23352#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:21,127 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 17:09:21,128 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 17:09:21,128 INFO L273 TraceCheckUtils]: 15: Hoare triple {23353#(<= main_~i~1 3)} assume true; {23353#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:21,128 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 17:09:21,129 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 17:09:21,130 INFO L273 TraceCheckUtils]: 18: Hoare triple {23354#(<= main_~i~1 4)} assume true; {23354#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:21,130 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 17:09:21,131 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 17:09:21,131 INFO L273 TraceCheckUtils]: 21: Hoare triple {23355#(<= main_~i~1 5)} assume true; {23355#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:21,132 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 17:09:21,132 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 17:09:21,133 INFO L273 TraceCheckUtils]: 24: Hoare triple {23356#(<= main_~i~1 6)} assume true; {23356#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:21,133 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 17:09:21,134 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 17:09:21,134 INFO L273 TraceCheckUtils]: 27: Hoare triple {23357#(<= main_~i~1 7)} assume true; {23357#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:21,135 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 17:09:21,136 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 17:09:21,136 INFO L273 TraceCheckUtils]: 30: Hoare triple {23358#(<= main_~i~1 8)} assume true; {23358#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:21,136 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 17:09:21,137 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 17:09:21,138 INFO L273 TraceCheckUtils]: 33: Hoare triple {23359#(<= main_~i~1 9)} assume true; {23359#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:21,138 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 17:09:21,139 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 17:09:21,139 INFO L273 TraceCheckUtils]: 36: Hoare triple {23360#(<= main_~i~1 10)} assume true; {23360#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:21,140 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 17:09:21,140 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 17:09:21,141 INFO L273 TraceCheckUtils]: 39: Hoare triple {23361#(<= main_~i~1 11)} assume true; {23361#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:21,141 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 17:09:21,142 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 17:09:21,142 INFO L273 TraceCheckUtils]: 42: Hoare triple {23362#(<= main_~i~1 12)} assume true; {23362#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:21,143 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 17:09:21,144 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 17:09:21,144 INFO L273 TraceCheckUtils]: 45: Hoare triple {23363#(<= main_~i~1 13)} assume true; {23363#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:21,145 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 17:09:21,145 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 17:09:21,146 INFO L273 TraceCheckUtils]: 48: Hoare triple {23364#(<= main_~i~1 14)} assume true; {23364#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:21,146 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 17:09:21,147 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 17:09:21,147 INFO L273 TraceCheckUtils]: 51: Hoare triple {23365#(<= main_~i~1 15)} assume true; {23365#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:21,148 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 17:09:21,148 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 17:09:21,149 INFO L273 TraceCheckUtils]: 54: Hoare triple {23366#(<= main_~i~1 16)} assume true; {23366#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:21,149 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 17:09:21,150 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 17:09:21,151 INFO L273 TraceCheckUtils]: 57: Hoare triple {23367#(<= main_~i~1 17)} assume true; {23367#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:21,151 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 17:09:21,152 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 17:09:21,152 INFO L273 TraceCheckUtils]: 60: Hoare triple {23368#(<= main_~i~1 18)} assume true; {23368#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:21,153 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 17:09:21,153 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 17:09:21,154 INFO L273 TraceCheckUtils]: 63: Hoare triple {23369#(<= main_~i~1 19)} assume true; {23369#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:21,154 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 17:09:21,155 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 17:09:21,155 INFO L273 TraceCheckUtils]: 66: Hoare triple {23370#(<= main_~i~1 20)} assume true; {23370#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:21,156 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 17:09:21,156 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 17:09:21,157 INFO L273 TraceCheckUtils]: 69: Hoare triple {23371#(<= main_~i~1 21)} assume true; {23371#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:21,157 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 17:09:21,158 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 17:09:21,159 INFO L273 TraceCheckUtils]: 72: Hoare triple {23372#(<= main_~i~1 22)} assume true; {23372#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:21,159 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 17:09:21,160 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 17:09:21,160 INFO L273 TraceCheckUtils]: 75: Hoare triple {23373#(<= main_~i~1 23)} assume true; {23373#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:21,161 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 17:09:21,161 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 17:09:21,162 INFO L273 TraceCheckUtils]: 78: Hoare triple {23374#(<= main_~i~1 24)} assume true; {23374#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:21,162 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 17:09:21,163 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 17:09:21,163 INFO L273 TraceCheckUtils]: 81: Hoare triple {23375#(<= main_~i~1 25)} assume true; {23375#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:21,164 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 17:09:21,164 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 17:09:21,165 INFO L273 TraceCheckUtils]: 84: Hoare triple {23376#(<= main_~i~1 26)} assume true; {23376#(<= main_~i~1 26)} is VALID [2018-11-14 17:09:21,166 INFO L273 TraceCheckUtils]: 85: Hoare triple {23376#(<= main_~i~1 26)} assume !(~i~1 < 10000); {23349#false} is VALID [2018-11-14 17:09:21,166 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 17:09:21,166 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 17:09:21,166 INFO L273 TraceCheckUtils]: 88: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,166 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 17:09:21,166 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 17:09:21,167 INFO L273 TraceCheckUtils]: 91: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,167 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 17:09:21,167 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 17:09:21,167 INFO L273 TraceCheckUtils]: 94: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,167 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 17:09:21,168 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 17:09:21,168 INFO L273 TraceCheckUtils]: 97: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,168 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 17:09:21,168 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 17:09:21,168 INFO L273 TraceCheckUtils]: 100: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,168 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 17:09:21,169 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 17:09:21,169 INFO L273 TraceCheckUtils]: 103: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,169 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 17:09:21,169 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 17:09:21,169 INFO L273 TraceCheckUtils]: 106: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,169 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 17:09:21,170 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 17:09:21,170 INFO L273 TraceCheckUtils]: 109: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,170 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 17:09:21,170 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 17:09:21,170 INFO L273 TraceCheckUtils]: 112: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,171 INFO L273 TraceCheckUtils]: 113: Hoare triple {23349#false} assume !(~i~0 < 10000); {23349#false} is VALID [2018-11-14 17:09:21,171 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 17:09:21,171 INFO L273 TraceCheckUtils]: 115: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,171 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {23349#false} {23349#false} #73#return; {23349#false} is VALID [2018-11-14 17:09:21,171 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 17:09:21,171 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 17:09:21,171 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 17:09:21,171 INFO L273 TraceCheckUtils]: 120: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,171 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 17:09:21,171 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 17:09:21,172 INFO L273 TraceCheckUtils]: 123: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,172 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 17:09:21,172 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 17:09:21,172 INFO L273 TraceCheckUtils]: 126: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,172 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 17:09:21,172 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 17:09:21,172 INFO L273 TraceCheckUtils]: 129: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,172 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 17:09:21,172 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 17:09:21,172 INFO L273 TraceCheckUtils]: 132: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,173 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 17:09:21,173 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 17:09:21,173 INFO L273 TraceCheckUtils]: 135: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,173 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 17:09:21,173 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 17:09:21,173 INFO L273 TraceCheckUtils]: 138: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,173 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 17:09:21,173 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 17:09:21,173 INFO L273 TraceCheckUtils]: 141: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,174 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 17:09:21,174 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 17:09:21,174 INFO L273 TraceCheckUtils]: 144: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,174 INFO L273 TraceCheckUtils]: 145: Hoare triple {23349#false} assume !(~i~0 < 10000); {23349#false} is VALID [2018-11-14 17:09:21,174 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 17:09:21,174 INFO L273 TraceCheckUtils]: 147: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,174 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {23349#false} {23349#false} #75#return; {23349#false} is VALID [2018-11-14 17:09:21,174 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 17:09:21,174 INFO L273 TraceCheckUtils]: 150: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,174 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 17:09:21,175 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 17:09:21,175 INFO L273 TraceCheckUtils]: 153: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,175 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 17:09:21,175 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 17:09:21,175 INFO L273 TraceCheckUtils]: 156: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,175 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 17:09:21,175 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 17:09:21,175 INFO L273 TraceCheckUtils]: 159: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,175 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 17:09:21,175 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 17:09:21,176 INFO L273 TraceCheckUtils]: 162: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,176 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 17:09:21,176 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 17:09:21,176 INFO L273 TraceCheckUtils]: 165: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,176 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 17:09:21,176 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 17:09:21,176 INFO L273 TraceCheckUtils]: 168: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,176 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 17:09:21,176 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 17:09:21,176 INFO L273 TraceCheckUtils]: 171: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,177 INFO L273 TraceCheckUtils]: 172: Hoare triple {23349#false} assume !(~i~2 < 9999); {23349#false} is VALID [2018-11-14 17:09:21,177 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 17:09:21,177 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 17:09:21,177 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 17:09:21,177 INFO L273 TraceCheckUtils]: 176: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,177 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 17:09:21,177 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 17:09:21,177 INFO L273 TraceCheckUtils]: 179: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,177 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 17:09:21,177 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 17:09:21,178 INFO L273 TraceCheckUtils]: 182: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,178 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 17:09:21,178 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 17:09:21,178 INFO L273 TraceCheckUtils]: 185: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,178 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 17:09:21,178 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 17:09:21,178 INFO L273 TraceCheckUtils]: 188: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,178 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 17:09:21,178 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 17:09:21,178 INFO L273 TraceCheckUtils]: 191: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,179 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 17:09:21,179 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 17:09:21,179 INFO L273 TraceCheckUtils]: 194: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,179 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 17:09:21,179 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 17:09:21,179 INFO L273 TraceCheckUtils]: 197: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,179 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 17:09:21,179 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 17:09:21,179 INFO L273 TraceCheckUtils]: 200: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,179 INFO L273 TraceCheckUtils]: 201: Hoare triple {23349#false} assume !(~i~0 < 10000); {23349#false} is VALID [2018-11-14 17:09:21,180 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 17:09:21,180 INFO L273 TraceCheckUtils]: 203: Hoare triple {23349#false} assume true; {23349#false} is VALID [2018-11-14 17:09:21,180 INFO L268 TraceCheckUtils]: 204: Hoare quadruple {23349#false} {23349#false} #77#return; {23349#false} is VALID [2018-11-14 17:09:21,180 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 17:09:21,180 INFO L273 TraceCheckUtils]: 206: Hoare triple {23349#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23349#false} is VALID [2018-11-14 17:09:21,180 INFO L273 TraceCheckUtils]: 207: Hoare triple {23349#false} assume !false; {23349#false} is VALID [2018-11-14 17:09:21,199 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 17:09:21,219 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:21,220 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 29] total 30 [2018-11-14 17:09:21,220 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 208 [2018-11-14 17:09:21,221 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:21,221 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2018-11-14 17:09:21,333 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 17:09:21,333 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2018-11-14 17:09:21,334 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2018-11-14 17:09:21,335 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=435, Invalid=435, Unknown=0, NotChecked=0, Total=870 [2018-11-14 17:09:21,335 INFO L87 Difference]: Start difference. First operand 149 states and 153 transitions. Second operand 30 states. [2018-11-14 17:09:21,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:21,958 INFO L93 Difference]: Finished difference Result 216 states and 224 transitions. [2018-11-14 17:09:21,959 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-11-14 17:09:21,959 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 208 [2018-11-14 17:09:21,959 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:21,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 17:09:21,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 138 transitions. [2018-11-14 17:09:21,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-14 17:09:21,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 138 transitions. [2018-11-14 17:09:21,961 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 138 transitions. [2018-11-14 17:09:22,078 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 17:09:22,081 INFO L225 Difference]: With dead ends: 216 [2018-11-14 17:09:22,081 INFO L226 Difference]: Without dead ends: 153 [2018-11-14 17:09:22,082 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 236 GetRequests, 208 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=435, Invalid=435, Unknown=0, NotChecked=0, Total=870 [2018-11-14 17:09:22,082 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2018-11-14 17:09:22,192 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 152. [2018-11-14 17:09:22,192 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:22,192 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand 152 states. [2018-11-14 17:09:22,193 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand 152 states. [2018-11-14 17:09:22,193 INFO L87 Difference]: Start difference. First operand 153 states. Second operand 152 states. [2018-11-14 17:09:22,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:22,196 INFO L93 Difference]: Finished difference Result 153 states and 157 transitions. [2018-11-14 17:09:22,196 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 157 transitions. [2018-11-14 17:09:22,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:22,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:22,196 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand 153 states. [2018-11-14 17:09:22,196 INFO L87 Difference]: Start difference. First operand 152 states. Second operand 153 states. [2018-11-14 17:09:22,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:22,199 INFO L93 Difference]: Finished difference Result 153 states and 157 transitions. [2018-11-14 17:09:22,199 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 157 transitions. [2018-11-14 17:09:22,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:22,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:22,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:22,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:22,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 152 states. [2018-11-14 17:09:22,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 152 states to 152 states and 156 transitions. [2018-11-14 17:09:22,201 INFO L78 Accepts]: Start accepts. Automaton has 152 states and 156 transitions. Word has length 208 [2018-11-14 17:09:22,201 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:22,201 INFO L480 AbstractCegarLoop]: Abstraction has 152 states and 156 transitions. [2018-11-14 17:09:22,202 INFO L481 AbstractCegarLoop]: Interpolant automaton has 30 states. [2018-11-14 17:09:22,202 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 156 transitions. [2018-11-14 17:09:22,202 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 212 [2018-11-14 17:09:22,202 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:22,203 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 17:09:22,203 INFO L423 AbstractCegarLoop]: === Iteration 31 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:22,203 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:22,203 INFO L82 PathProgramCache]: Analyzing trace with hash -641579889, now seen corresponding path program 27 times [2018-11-14 17:09:22,203 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:22,203 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:22,204 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:22,204 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:22,204 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:22,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:22,940 INFO L256 TraceCheckUtils]: 0: Hoare triple {24802#true} call ULTIMATE.init(); {24802#true} is VALID [2018-11-14 17:09:22,941 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 17:09:22,941 INFO L273 TraceCheckUtils]: 2: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,941 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {24802#true} {24802#true} #69#return; {24802#true} is VALID [2018-11-14 17:09:22,941 INFO L256 TraceCheckUtils]: 4: Hoare triple {24802#true} call #t~ret12 := main(); {24802#true} is VALID [2018-11-14 17:09:22,942 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 17:09:22,942 INFO L273 TraceCheckUtils]: 6: Hoare triple {24804#(= main_~i~1 0)} assume true; {24804#(= main_~i~1 0)} is VALID [2018-11-14 17:09:22,943 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 17:09:22,943 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 17:09:22,944 INFO L273 TraceCheckUtils]: 9: Hoare triple {24805#(<= main_~i~1 1)} assume true; {24805#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:22,944 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 17:09:22,945 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 17:09:22,946 INFO L273 TraceCheckUtils]: 12: Hoare triple {24806#(<= main_~i~1 2)} assume true; {24806#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:22,946 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 17:09:22,947 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 17:09:22,947 INFO L273 TraceCheckUtils]: 15: Hoare triple {24807#(<= main_~i~1 3)} assume true; {24807#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:22,948 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 17:09:22,949 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 17:09:22,949 INFO L273 TraceCheckUtils]: 18: Hoare triple {24808#(<= main_~i~1 4)} assume true; {24808#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:22,950 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 17:09:22,950 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 17:09:22,951 INFO L273 TraceCheckUtils]: 21: Hoare triple {24809#(<= main_~i~1 5)} assume true; {24809#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:22,951 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 17:09:22,952 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 17:09:22,952 INFO L273 TraceCheckUtils]: 24: Hoare triple {24810#(<= main_~i~1 6)} assume true; {24810#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:22,953 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 17:09:22,954 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 17:09:22,954 INFO L273 TraceCheckUtils]: 27: Hoare triple {24811#(<= main_~i~1 7)} assume true; {24811#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:22,954 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 17:09:22,955 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 17:09:22,956 INFO L273 TraceCheckUtils]: 30: Hoare triple {24812#(<= main_~i~1 8)} assume true; {24812#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:22,956 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 17:09:22,957 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 17:09:22,957 INFO L273 TraceCheckUtils]: 33: Hoare triple {24813#(<= main_~i~1 9)} assume true; {24813#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:22,958 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 17:09:22,958 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 17:09:22,959 INFO L273 TraceCheckUtils]: 36: Hoare triple {24814#(<= main_~i~1 10)} assume true; {24814#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:22,959 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 17:09:22,960 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 17:09:22,961 INFO L273 TraceCheckUtils]: 39: Hoare triple {24815#(<= main_~i~1 11)} assume true; {24815#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:22,961 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 17:09:22,962 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 17:09:22,962 INFO L273 TraceCheckUtils]: 42: Hoare triple {24816#(<= main_~i~1 12)} assume true; {24816#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:22,963 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 17:09:22,963 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 17:09:22,964 INFO L273 TraceCheckUtils]: 45: Hoare triple {24817#(<= main_~i~1 13)} assume true; {24817#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:22,964 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 17:09:22,965 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 17:09:22,965 INFO L273 TraceCheckUtils]: 48: Hoare triple {24818#(<= main_~i~1 14)} assume true; {24818#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:22,966 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 17:09:22,967 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 17:09:22,967 INFO L273 TraceCheckUtils]: 51: Hoare triple {24819#(<= main_~i~1 15)} assume true; {24819#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:22,968 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 17:09:22,968 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 17:09:22,969 INFO L273 TraceCheckUtils]: 54: Hoare triple {24820#(<= main_~i~1 16)} assume true; {24820#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:22,969 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 17:09:22,970 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 17:09:22,970 INFO L273 TraceCheckUtils]: 57: Hoare triple {24821#(<= main_~i~1 17)} assume true; {24821#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:22,971 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 17:09:22,972 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 17:09:22,972 INFO L273 TraceCheckUtils]: 60: Hoare triple {24822#(<= main_~i~1 18)} assume true; {24822#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:22,973 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 17:09:22,973 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 17:09:22,974 INFO L273 TraceCheckUtils]: 63: Hoare triple {24823#(<= main_~i~1 19)} assume true; {24823#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:22,974 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 17:09:22,975 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 17:09:22,975 INFO L273 TraceCheckUtils]: 66: Hoare triple {24824#(<= main_~i~1 20)} assume true; {24824#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:22,976 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 17:09:22,977 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 17:09:22,977 INFO L273 TraceCheckUtils]: 69: Hoare triple {24825#(<= main_~i~1 21)} assume true; {24825#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:22,977 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 17:09:22,978 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 17:09:22,979 INFO L273 TraceCheckUtils]: 72: Hoare triple {24826#(<= main_~i~1 22)} assume true; {24826#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:22,979 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 17:09:22,980 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 17:09:22,980 INFO L273 TraceCheckUtils]: 75: Hoare triple {24827#(<= main_~i~1 23)} assume true; {24827#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:22,981 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 17:09:22,981 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 17:09:22,982 INFO L273 TraceCheckUtils]: 78: Hoare triple {24828#(<= main_~i~1 24)} assume true; {24828#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:22,982 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 17:09:22,983 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 17:09:22,983 INFO L273 TraceCheckUtils]: 81: Hoare triple {24829#(<= main_~i~1 25)} assume true; {24829#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:22,984 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 17:09:22,985 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 17:09:22,985 INFO L273 TraceCheckUtils]: 84: Hoare triple {24830#(<= main_~i~1 26)} assume true; {24830#(<= main_~i~1 26)} is VALID [2018-11-14 17:09:22,986 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 17:09:22,986 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 17:09:22,987 INFO L273 TraceCheckUtils]: 87: Hoare triple {24831#(<= main_~i~1 27)} assume true; {24831#(<= main_~i~1 27)} is VALID [2018-11-14 17:09:22,987 INFO L273 TraceCheckUtils]: 88: Hoare triple {24831#(<= main_~i~1 27)} assume !(~i~1 < 10000); {24803#false} is VALID [2018-11-14 17:09:22,988 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 17:09:22,988 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 17:09:22,988 INFO L273 TraceCheckUtils]: 91: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,988 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 17:09:22,988 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 17:09:22,988 INFO L273 TraceCheckUtils]: 94: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,989 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 17:09:22,989 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 17:09:22,989 INFO L273 TraceCheckUtils]: 97: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,989 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 17:09:22,989 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 17:09:22,989 INFO L273 TraceCheckUtils]: 100: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,989 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 17:09:22,990 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 17:09:22,990 INFO L273 TraceCheckUtils]: 103: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,990 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 17:09:22,990 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 17:09:22,990 INFO L273 TraceCheckUtils]: 106: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,990 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 17:09:22,990 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 17:09:22,990 INFO L273 TraceCheckUtils]: 109: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,990 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 17:09:22,990 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 17:09:22,991 INFO L273 TraceCheckUtils]: 112: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,991 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 17:09:22,991 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 17:09:22,991 INFO L273 TraceCheckUtils]: 115: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,991 INFO L273 TraceCheckUtils]: 116: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 17:09:22,991 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 17:09:22,991 INFO L273 TraceCheckUtils]: 118: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,991 INFO L268 TraceCheckUtils]: 119: Hoare quadruple {24802#true} {24803#false} #73#return; {24803#false} is VALID [2018-11-14 17:09:22,991 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 17:09:22,991 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 17:09:22,992 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 17:09:22,992 INFO L273 TraceCheckUtils]: 123: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,992 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 17:09:22,992 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 17:09:22,992 INFO L273 TraceCheckUtils]: 126: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,992 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 17:09:22,992 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 17:09:22,992 INFO L273 TraceCheckUtils]: 129: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,992 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 17:09:22,992 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 17:09:22,993 INFO L273 TraceCheckUtils]: 132: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,993 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 17:09:22,993 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 17:09:22,993 INFO L273 TraceCheckUtils]: 135: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,993 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 17:09:22,993 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 17:09:22,993 INFO L273 TraceCheckUtils]: 138: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,993 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 17:09:22,993 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 17:09:22,993 INFO L273 TraceCheckUtils]: 141: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,994 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 17:09:22,994 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 17:09:22,994 INFO L273 TraceCheckUtils]: 144: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,994 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 17:09:22,994 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 17:09:22,994 INFO L273 TraceCheckUtils]: 147: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,994 INFO L273 TraceCheckUtils]: 148: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 17:09:22,994 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 17:09:22,994 INFO L273 TraceCheckUtils]: 150: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,994 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {24802#true} {24803#false} #75#return; {24803#false} is VALID [2018-11-14 17:09:22,995 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 17:09:22,995 INFO L273 TraceCheckUtils]: 153: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,995 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 17:09:22,995 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 17:09:22,995 INFO L273 TraceCheckUtils]: 156: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,995 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 17:09:22,995 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 17:09:22,995 INFO L273 TraceCheckUtils]: 159: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,995 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 17:09:22,996 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 17:09:22,996 INFO L273 TraceCheckUtils]: 162: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,996 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 17:09:22,996 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 17:09:22,996 INFO L273 TraceCheckUtils]: 165: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,996 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 17:09:22,996 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 17:09:22,996 INFO L273 TraceCheckUtils]: 168: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,996 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 17:09:22,996 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 17:09:22,997 INFO L273 TraceCheckUtils]: 171: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,997 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 17:09:22,997 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 17:09:22,997 INFO L273 TraceCheckUtils]: 174: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:22,997 INFO L273 TraceCheckUtils]: 175: Hoare triple {24803#false} assume !(~i~2 < 9999); {24803#false} is VALID [2018-11-14 17:09:22,997 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 17:09:22,997 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 17:09:22,997 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 17:09:22,997 INFO L273 TraceCheckUtils]: 179: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,997 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 17:09:22,998 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 17:09:22,998 INFO L273 TraceCheckUtils]: 182: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,998 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 17:09:22,998 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 17:09:22,998 INFO L273 TraceCheckUtils]: 185: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,998 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 17:09:22,998 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 17:09:22,998 INFO L273 TraceCheckUtils]: 188: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,998 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 17:09:22,998 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 17:09:22,999 INFO L273 TraceCheckUtils]: 191: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,999 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 17:09:22,999 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 17:09:22,999 INFO L273 TraceCheckUtils]: 194: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,999 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 17:09:22,999 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 17:09:22,999 INFO L273 TraceCheckUtils]: 197: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:22,999 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 17:09:22,999 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 17:09:22,999 INFO L273 TraceCheckUtils]: 200: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,000 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 17:09:23,000 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 17:09:23,000 INFO L273 TraceCheckUtils]: 203: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,000 INFO L273 TraceCheckUtils]: 204: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 17:09:23,000 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 17:09:23,000 INFO L273 TraceCheckUtils]: 206: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,000 INFO L268 TraceCheckUtils]: 207: Hoare quadruple {24802#true} {24803#false} #77#return; {24803#false} is VALID [2018-11-14 17:09:23,000 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 17:09:23,000 INFO L273 TraceCheckUtils]: 209: Hoare triple {24803#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {24803#false} is VALID [2018-11-14 17:09:23,001 INFO L273 TraceCheckUtils]: 210: Hoare triple {24803#false} assume !false; {24803#false} is VALID [2018-11-14 17:09:23,020 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 17:09:23,020 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:23,020 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 17:09:23,029 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:09:23,181 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2018-11-14 17:09:23,181 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:23,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:23,216 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:23,569 INFO L256 TraceCheckUtils]: 0: Hoare triple {24802#true} call ULTIMATE.init(); {24802#true} is VALID [2018-11-14 17:09:23,569 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 17:09:23,570 INFO L273 TraceCheckUtils]: 2: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,570 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {24802#true} {24802#true} #69#return; {24802#true} is VALID [2018-11-14 17:09:23,570 INFO L256 TraceCheckUtils]: 4: Hoare triple {24802#true} call #t~ret12 := main(); {24802#true} is VALID [2018-11-14 17:09:23,570 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 17:09:23,570 INFO L273 TraceCheckUtils]: 6: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,570 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 17:09:23,571 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 17:09:23,571 INFO L273 TraceCheckUtils]: 9: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,571 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 17:09:23,571 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 17:09:23,571 INFO L273 TraceCheckUtils]: 12: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,571 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 17:09:23,572 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 17:09:23,572 INFO L273 TraceCheckUtils]: 15: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,572 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 17:09:23,572 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 17:09:23,572 INFO L273 TraceCheckUtils]: 18: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,572 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 17:09:23,572 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 17:09:23,572 INFO L273 TraceCheckUtils]: 21: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,573 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 17:09:23,573 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 17:09:23,573 INFO L273 TraceCheckUtils]: 24: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,573 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 17:09:23,573 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 17:09:23,573 INFO L273 TraceCheckUtils]: 27: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,573 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 17:09:23,573 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 17:09:23,573 INFO L273 TraceCheckUtils]: 30: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,573 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 17:09:23,574 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 17:09:23,574 INFO L273 TraceCheckUtils]: 33: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,574 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 17:09:23,574 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 17:09:23,574 INFO L273 TraceCheckUtils]: 36: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,574 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 17:09:23,574 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 17:09:23,574 INFO L273 TraceCheckUtils]: 39: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,574 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 17:09:23,574 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 17:09:23,575 INFO L273 TraceCheckUtils]: 42: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,575 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 17:09:23,575 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 17:09:23,575 INFO L273 TraceCheckUtils]: 45: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,575 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 17:09:23,575 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 17:09:23,575 INFO L273 TraceCheckUtils]: 48: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,575 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 17:09:23,575 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 17:09:23,575 INFO L273 TraceCheckUtils]: 51: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,576 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 17:09:23,576 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 17:09:23,576 INFO L273 TraceCheckUtils]: 54: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,576 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 17:09:23,576 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 17:09:23,576 INFO L273 TraceCheckUtils]: 57: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,576 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 17:09:23,576 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 17:09:23,576 INFO L273 TraceCheckUtils]: 60: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,576 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 17:09:23,577 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 17:09:23,577 INFO L273 TraceCheckUtils]: 63: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,577 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 17:09:23,577 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 17:09:23,577 INFO L273 TraceCheckUtils]: 66: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,577 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 17:09:23,577 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 17:09:23,577 INFO L273 TraceCheckUtils]: 69: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,577 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 17:09:23,577 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 17:09:23,578 INFO L273 TraceCheckUtils]: 72: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,578 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 17:09:23,578 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 17:09:23,578 INFO L273 TraceCheckUtils]: 75: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,578 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 17:09:23,578 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 17:09:23,578 INFO L273 TraceCheckUtils]: 78: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,578 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 17:09:23,578 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 17:09:23,578 INFO L273 TraceCheckUtils]: 81: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,579 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 17:09:23,579 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 17:09:23,579 INFO L273 TraceCheckUtils]: 84: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,579 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 17:09:23,579 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 17:09:23,579 INFO L273 TraceCheckUtils]: 87: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,579 INFO L273 TraceCheckUtils]: 88: Hoare triple {24802#true} assume !(~i~1 < 10000); {24802#true} is VALID [2018-11-14 17:09:23,579 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 17:09:23,579 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 17:09:23,579 INFO L273 TraceCheckUtils]: 91: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,580 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 17:09:23,580 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 17:09:23,580 INFO L273 TraceCheckUtils]: 94: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,580 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 17:09:23,580 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 17:09:23,580 INFO L273 TraceCheckUtils]: 97: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,580 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 17:09:23,580 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 17:09:23,580 INFO L273 TraceCheckUtils]: 100: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,580 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 17:09:23,581 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 17:09:23,581 INFO L273 TraceCheckUtils]: 103: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,581 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 17:09:23,581 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 17:09:23,581 INFO L273 TraceCheckUtils]: 106: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,581 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 17:09:23,581 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 17:09:23,581 INFO L273 TraceCheckUtils]: 109: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,581 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 17:09:23,581 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 17:09:23,582 INFO L273 TraceCheckUtils]: 112: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,582 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 17:09:23,582 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 17:09:23,582 INFO L273 TraceCheckUtils]: 115: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,582 INFO L273 TraceCheckUtils]: 116: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 17:09:23,582 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 17:09:23,582 INFO L273 TraceCheckUtils]: 118: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,582 INFO L268 TraceCheckUtils]: 119: Hoare quadruple {24802#true} {24802#true} #73#return; {24802#true} is VALID [2018-11-14 17:09:23,582 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 17:09:23,583 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 17:09:23,583 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 17:09:23,583 INFO L273 TraceCheckUtils]: 123: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,583 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 17:09:23,583 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 17:09:23,583 INFO L273 TraceCheckUtils]: 126: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,583 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 17:09:23,583 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 17:09:23,583 INFO L273 TraceCheckUtils]: 129: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,583 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 17:09:23,583 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 17:09:23,584 INFO L273 TraceCheckUtils]: 132: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,584 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 17:09:23,584 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 17:09:23,584 INFO L273 TraceCheckUtils]: 135: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,584 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 17:09:23,584 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 17:09:23,584 INFO L273 TraceCheckUtils]: 138: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,584 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 17:09:23,584 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 17:09:23,584 INFO L273 TraceCheckUtils]: 141: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,585 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 17:09:23,585 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 17:09:23,585 INFO L273 TraceCheckUtils]: 144: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,585 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 17:09:23,585 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 17:09:23,585 INFO L273 TraceCheckUtils]: 147: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,585 INFO L273 TraceCheckUtils]: 148: Hoare triple {24802#true} assume !(~i~0 < 10000); {24802#true} is VALID [2018-11-14 17:09:23,585 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 17:09:23,585 INFO L273 TraceCheckUtils]: 150: Hoare triple {24802#true} assume true; {24802#true} is VALID [2018-11-14 17:09:23,585 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {24802#true} {24802#true} #75#return; {24802#true} is VALID [2018-11-14 17:09:23,586 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 17:09:23,586 INFO L273 TraceCheckUtils]: 153: Hoare triple {25291#(<= main_~i~2 0)} assume true; {25291#(<= main_~i~2 0)} is VALID [2018-11-14 17:09:23,587 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 17:09:23,587 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 17:09:23,587 INFO L273 TraceCheckUtils]: 156: Hoare triple {25301#(<= main_~i~2 1)} assume true; {25301#(<= main_~i~2 1)} is VALID [2018-11-14 17:09:23,588 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 17:09:23,588 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 17:09:23,588 INFO L273 TraceCheckUtils]: 159: Hoare triple {25311#(<= main_~i~2 2)} assume true; {25311#(<= main_~i~2 2)} is VALID [2018-11-14 17:09:23,589 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 17:09:23,589 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 17:09:23,589 INFO L273 TraceCheckUtils]: 162: Hoare triple {25321#(<= main_~i~2 3)} assume true; {25321#(<= main_~i~2 3)} is VALID [2018-11-14 17:09:23,590 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 17:09:23,590 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 17:09:23,591 INFO L273 TraceCheckUtils]: 165: Hoare triple {25331#(<= main_~i~2 4)} assume true; {25331#(<= main_~i~2 4)} is VALID [2018-11-14 17:09:23,591 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 17:09:23,592 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 17:09:23,593 INFO L273 TraceCheckUtils]: 168: Hoare triple {25341#(<= main_~i~2 5)} assume true; {25341#(<= main_~i~2 5)} is VALID [2018-11-14 17:09:23,593 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 17:09:23,594 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 17:09:23,594 INFO L273 TraceCheckUtils]: 171: Hoare triple {25351#(<= main_~i~2 6)} assume true; {25351#(<= main_~i~2 6)} is VALID [2018-11-14 17:09:23,595 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 17:09:23,595 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 17:09:23,596 INFO L273 TraceCheckUtils]: 174: Hoare triple {25361#(<= main_~i~2 7)} assume true; {25361#(<= main_~i~2 7)} is VALID [2018-11-14 17:09:23,596 INFO L273 TraceCheckUtils]: 175: Hoare triple {25361#(<= main_~i~2 7)} assume !(~i~2 < 9999); {24803#false} is VALID [2018-11-14 17:09:23,597 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 17:09:23,597 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 17:09:23,597 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 17:09:23,597 INFO L273 TraceCheckUtils]: 179: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,597 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 17:09:23,597 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 17:09:23,598 INFO L273 TraceCheckUtils]: 182: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,598 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 17:09:23,598 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 17:09:23,598 INFO L273 TraceCheckUtils]: 185: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,598 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 17:09:23,599 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 17:09:23,599 INFO L273 TraceCheckUtils]: 188: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,599 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 17:09:23,599 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 17:09:23,599 INFO L273 TraceCheckUtils]: 191: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,599 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 17:09:23,600 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 17:09:23,600 INFO L273 TraceCheckUtils]: 194: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,600 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 17:09:23,600 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 17:09:23,600 INFO L273 TraceCheckUtils]: 197: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,600 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 17:09:23,600 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 17:09:23,601 INFO L273 TraceCheckUtils]: 200: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,601 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 17:09:23,601 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 17:09:23,601 INFO L273 TraceCheckUtils]: 203: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,601 INFO L273 TraceCheckUtils]: 204: Hoare triple {24803#false} assume !(~i~0 < 10000); {24803#false} is VALID [2018-11-14 17:09:23,601 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 17:09:23,602 INFO L273 TraceCheckUtils]: 206: Hoare triple {24803#false} assume true; {24803#false} is VALID [2018-11-14 17:09:23,602 INFO L268 TraceCheckUtils]: 207: Hoare quadruple {24803#false} {24803#false} #77#return; {24803#false} is VALID [2018-11-14 17:09:23,602 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 17:09:23,602 INFO L273 TraceCheckUtils]: 209: Hoare triple {24803#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {24803#false} is VALID [2018-11-14 17:09:23,602 INFO L273 TraceCheckUtils]: 210: Hoare triple {24803#false} assume !false; {24803#false} is VALID [2018-11-14 17:09:23,625 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 17:09:23,645 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:23,646 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [30, 10] total 38 [2018-11-14 17:09:23,646 INFO L78 Accepts]: Start accepts. Automaton has 38 states. Word has length 211 [2018-11-14 17:09:23,646 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:23,647 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 38 states. [2018-11-14 17:09:23,893 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 17:09:23,893 INFO L459 AbstractCegarLoop]: Interpolant automaton has 38 states [2018-11-14 17:09:23,894 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 38 interpolants. [2018-11-14 17:09:23,894 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=479, Invalid=927, Unknown=0, NotChecked=0, Total=1406 [2018-11-14 17:09:23,895 INFO L87 Difference]: Start difference. First operand 152 states and 156 transitions. Second operand 38 states. [2018-11-14 17:09:24,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:24,885 INFO L93 Difference]: Finished difference Result 223 states and 232 transitions. [2018-11-14 17:09:24,885 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2018-11-14 17:09:24,885 INFO L78 Accepts]: Start accepts. Automaton has 38 states. Word has length 211 [2018-11-14 17:09:24,885 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:24,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-14 17:09:24,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 166 transitions. [2018-11-14 17:09:24,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-14 17:09:24,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 166 transitions. [2018-11-14 17:09:24,888 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 38 states and 166 transitions. [2018-11-14 17:09:25,032 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 17:09:25,036 INFO L225 Difference]: With dead ends: 223 [2018-11-14 17:09:25,036 INFO L226 Difference]: Without dead ends: 160 [2018-11-14 17:09:25,037 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 240 GetRequests, 204 SyntacticMatches, 0 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 216 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=479, Invalid=927, Unknown=0, NotChecked=0, Total=1406 [2018-11-14 17:09:25,037 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2018-11-14 17:09:25,396 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 158. [2018-11-14 17:09:25,396 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:25,396 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand 158 states. [2018-11-14 17:09:25,396 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand 158 states. [2018-11-14 17:09:25,397 INFO L87 Difference]: Start difference. First operand 160 states. Second operand 158 states. [2018-11-14 17:09:25,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:25,400 INFO L93 Difference]: Finished difference Result 160 states and 164 transitions. [2018-11-14 17:09:25,400 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 164 transitions. [2018-11-14 17:09:25,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:25,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:25,400 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand 160 states. [2018-11-14 17:09:25,401 INFO L87 Difference]: Start difference. First operand 158 states. Second operand 160 states. [2018-11-14 17:09:25,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:25,403 INFO L93 Difference]: Finished difference Result 160 states and 164 transitions. [2018-11-14 17:09:25,403 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 164 transitions. [2018-11-14 17:09:25,403 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:25,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:25,403 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:25,403 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:25,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 158 states. [2018-11-14 17:09:25,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 162 transitions. [2018-11-14 17:09:25,405 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 162 transitions. Word has length 211 [2018-11-14 17:09:25,405 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:25,406 INFO L480 AbstractCegarLoop]: Abstraction has 158 states and 162 transitions. [2018-11-14 17:09:25,406 INFO L481 AbstractCegarLoop]: Interpolant automaton has 38 states. [2018-11-14 17:09:25,406 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 162 transitions. [2018-11-14 17:09:25,406 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 218 [2018-11-14 17:09:25,407 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:25,407 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 17:09:25,407 INFO L423 AbstractCegarLoop]: === Iteration 32 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:25,407 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:25,407 INFO L82 PathProgramCache]: Analyzing trace with hash -2035407757, now seen corresponding path program 28 times [2018-11-14 17:09:25,408 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:25,408 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:25,408 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:25,408 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:25,409 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:25,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:26,045 INFO L256 TraceCheckUtils]: 0: Hoare triple {26304#true} call ULTIMATE.init(); {26304#true} is VALID [2018-11-14 17:09:26,045 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 17:09:26,046 INFO L273 TraceCheckUtils]: 2: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,046 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26304#true} {26304#true} #69#return; {26304#true} is VALID [2018-11-14 17:09:26,046 INFO L256 TraceCheckUtils]: 4: Hoare triple {26304#true} call #t~ret12 := main(); {26304#true} is VALID [2018-11-14 17:09:26,046 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 17:09:26,047 INFO L273 TraceCheckUtils]: 6: Hoare triple {26306#(= main_~i~1 0)} assume true; {26306#(= main_~i~1 0)} is VALID [2018-11-14 17:09:26,047 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 17:09:26,048 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 17:09:26,049 INFO L273 TraceCheckUtils]: 9: Hoare triple {26307#(<= main_~i~1 1)} assume true; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:26,049 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 17:09:26,050 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 17:09:26,050 INFO L273 TraceCheckUtils]: 12: Hoare triple {26308#(<= main_~i~1 2)} assume true; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:26,051 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 17:09:26,052 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 17:09:26,052 INFO L273 TraceCheckUtils]: 15: Hoare triple {26309#(<= main_~i~1 3)} assume true; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:26,053 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 17:09:26,053 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 17:09:26,054 INFO L273 TraceCheckUtils]: 18: Hoare triple {26310#(<= main_~i~1 4)} assume true; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:26,054 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 17:09:26,055 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 17:09:26,056 INFO L273 TraceCheckUtils]: 21: Hoare triple {26311#(<= main_~i~1 5)} assume true; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:26,056 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 17:09:26,057 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 17:09:26,057 INFO L273 TraceCheckUtils]: 24: Hoare triple {26312#(<= main_~i~1 6)} assume true; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:26,058 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 17:09:26,058 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 17:09:26,059 INFO L273 TraceCheckUtils]: 27: Hoare triple {26313#(<= main_~i~1 7)} assume true; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:26,059 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 17:09:26,060 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 17:09:26,061 INFO L273 TraceCheckUtils]: 30: Hoare triple {26314#(<= main_~i~1 8)} assume true; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:26,061 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 17:09:26,062 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 17:09:26,062 INFO L273 TraceCheckUtils]: 33: Hoare triple {26315#(<= main_~i~1 9)} assume true; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:26,063 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 17:09:26,064 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 17:09:26,064 INFO L273 TraceCheckUtils]: 36: Hoare triple {26316#(<= main_~i~1 10)} assume true; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:26,065 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 17:09:26,065 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 17:09:26,066 INFO L273 TraceCheckUtils]: 39: Hoare triple {26317#(<= main_~i~1 11)} assume true; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:26,066 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 17:09:26,067 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 17:09:26,068 INFO L273 TraceCheckUtils]: 42: Hoare triple {26318#(<= main_~i~1 12)} assume true; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:26,068 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 17:09:26,069 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 17:09:26,069 INFO L273 TraceCheckUtils]: 45: Hoare triple {26319#(<= main_~i~1 13)} assume true; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:26,070 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 17:09:26,071 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 17:09:26,071 INFO L273 TraceCheckUtils]: 48: Hoare triple {26320#(<= main_~i~1 14)} assume true; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:26,072 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 17:09:26,072 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 17:09:26,073 INFO L273 TraceCheckUtils]: 51: Hoare triple {26321#(<= main_~i~1 15)} assume true; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:26,073 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 17:09:26,074 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 17:09:26,075 INFO L273 TraceCheckUtils]: 54: Hoare triple {26322#(<= main_~i~1 16)} assume true; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:26,075 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 17:09:26,076 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 17:09:26,076 INFO L273 TraceCheckUtils]: 57: Hoare triple {26323#(<= main_~i~1 17)} assume true; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:26,077 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 17:09:26,077 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 17:09:26,078 INFO L273 TraceCheckUtils]: 60: Hoare triple {26324#(<= main_~i~1 18)} assume true; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:26,078 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 17:09:26,079 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 17:09:26,080 INFO L273 TraceCheckUtils]: 63: Hoare triple {26325#(<= main_~i~1 19)} assume true; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:26,080 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 17:09:26,081 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 17:09:26,081 INFO L273 TraceCheckUtils]: 66: Hoare triple {26326#(<= main_~i~1 20)} assume true; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:26,082 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 17:09:26,083 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 17:09:26,083 INFO L273 TraceCheckUtils]: 69: Hoare triple {26327#(<= main_~i~1 21)} assume true; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:26,084 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 17:09:26,084 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 17:09:26,085 INFO L273 TraceCheckUtils]: 72: Hoare triple {26328#(<= main_~i~1 22)} assume true; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:26,085 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 17:09:26,086 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 17:09:26,086 INFO L273 TraceCheckUtils]: 75: Hoare triple {26329#(<= main_~i~1 23)} assume true; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:26,087 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 17:09:26,088 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 17:09:26,088 INFO L273 TraceCheckUtils]: 78: Hoare triple {26330#(<= main_~i~1 24)} assume true; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:26,089 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 17:09:26,089 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 17:09:26,090 INFO L273 TraceCheckUtils]: 81: Hoare triple {26331#(<= main_~i~1 25)} assume true; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:26,090 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 17:09:26,091 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 17:09:26,092 INFO L273 TraceCheckUtils]: 84: Hoare triple {26332#(<= main_~i~1 26)} assume true; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 17:09:26,092 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 17:09:26,093 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 17:09:26,093 INFO L273 TraceCheckUtils]: 87: Hoare triple {26333#(<= main_~i~1 27)} assume true; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 17:09:26,094 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 17:09:26,095 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 17:09:26,095 INFO L273 TraceCheckUtils]: 90: Hoare triple {26334#(<= main_~i~1 28)} assume true; {26334#(<= main_~i~1 28)} is VALID [2018-11-14 17:09:26,096 INFO L273 TraceCheckUtils]: 91: Hoare triple {26334#(<= main_~i~1 28)} assume !(~i~1 < 10000); {26305#false} is VALID [2018-11-14 17:09:26,096 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 17:09:26,096 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 17:09:26,096 INFO L273 TraceCheckUtils]: 94: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,097 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 17:09:26,097 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 17:09:26,097 INFO L273 TraceCheckUtils]: 97: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,097 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 17:09:26,097 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 17:09:26,097 INFO L273 TraceCheckUtils]: 100: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,098 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 17:09:26,098 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 17:09:26,098 INFO L273 TraceCheckUtils]: 103: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,098 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 17:09:26,098 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 17:09:26,098 INFO L273 TraceCheckUtils]: 106: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,099 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 17:09:26,099 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 17:09:26,099 INFO L273 TraceCheckUtils]: 109: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,099 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 17:09:26,099 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 17:09:26,099 INFO L273 TraceCheckUtils]: 112: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,099 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 17:09:26,099 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 17:09:26,100 INFO L273 TraceCheckUtils]: 115: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,100 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 17:09:26,100 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 17:09:26,100 INFO L273 TraceCheckUtils]: 118: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,100 INFO L273 TraceCheckUtils]: 119: Hoare triple {26304#true} assume !(~i~0 < 10000); {26304#true} is VALID [2018-11-14 17:09:26,100 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 17:09:26,100 INFO L273 TraceCheckUtils]: 121: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,100 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {26304#true} {26305#false} #73#return; {26305#false} is VALID [2018-11-14 17:09:26,100 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 17:09:26,100 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 17:09:26,101 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 17:09:26,101 INFO L273 TraceCheckUtils]: 126: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,101 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 17:09:26,101 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 17:09:26,101 INFO L273 TraceCheckUtils]: 129: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,101 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 17:09:26,101 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 17:09:26,101 INFO L273 TraceCheckUtils]: 132: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,101 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 17:09:26,102 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 17:09:26,102 INFO L273 TraceCheckUtils]: 135: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,102 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 17:09:26,102 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 17:09:26,102 INFO L273 TraceCheckUtils]: 138: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,102 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 17:09:26,102 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 17:09:26,102 INFO L273 TraceCheckUtils]: 141: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,102 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 17:09:26,102 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 17:09:26,103 INFO L273 TraceCheckUtils]: 144: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,103 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 17:09:26,103 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 17:09:26,103 INFO L273 TraceCheckUtils]: 147: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,103 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 17:09:26,103 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 17:09:26,103 INFO L273 TraceCheckUtils]: 150: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,103 INFO L273 TraceCheckUtils]: 151: Hoare triple {26304#true} assume !(~i~0 < 10000); {26304#true} is VALID [2018-11-14 17:09:26,103 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 17:09:26,103 INFO L273 TraceCheckUtils]: 153: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,104 INFO L268 TraceCheckUtils]: 154: Hoare quadruple {26304#true} {26305#false} #75#return; {26305#false} is VALID [2018-11-14 17:09:26,104 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 17:09:26,104 INFO L273 TraceCheckUtils]: 156: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,104 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 17:09:26,104 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 17:09:26,104 INFO L273 TraceCheckUtils]: 159: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,104 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 17:09:26,104 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 17:09:26,104 INFO L273 TraceCheckUtils]: 162: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,104 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 17:09:26,105 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 17:09:26,105 INFO L273 TraceCheckUtils]: 165: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,105 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 17:09:26,105 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 17:09:26,105 INFO L273 TraceCheckUtils]: 168: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,105 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 17:09:26,105 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 17:09:26,105 INFO L273 TraceCheckUtils]: 171: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,105 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 17:09:26,105 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 17:09:26,106 INFO L273 TraceCheckUtils]: 174: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,106 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 17:09:26,106 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 17:09:26,106 INFO L273 TraceCheckUtils]: 177: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,106 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 17:09:26,106 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 17:09:26,106 INFO L273 TraceCheckUtils]: 180: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,106 INFO L273 TraceCheckUtils]: 181: Hoare triple {26305#false} assume !(~i~2 < 9999); {26305#false} is VALID [2018-11-14 17:09:26,106 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 17:09:26,106 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 17:09:26,107 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 17:09:26,107 INFO L273 TraceCheckUtils]: 185: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,107 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 17:09:26,107 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 17:09:26,107 INFO L273 TraceCheckUtils]: 188: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,107 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 17:09:26,107 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 17:09:26,107 INFO L273 TraceCheckUtils]: 191: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,107 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 17:09:26,107 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 17:09:26,108 INFO L273 TraceCheckUtils]: 194: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,108 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 17:09:26,108 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 17:09:26,108 INFO L273 TraceCheckUtils]: 197: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,108 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 17:09:26,108 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 17:09:26,108 INFO L273 TraceCheckUtils]: 200: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,108 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 17:09:26,108 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 17:09:26,108 INFO L273 TraceCheckUtils]: 203: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,109 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 17:09:26,109 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 17:09:26,109 INFO L273 TraceCheckUtils]: 206: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,109 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 17:09:26,109 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 17:09:26,109 INFO L273 TraceCheckUtils]: 209: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,109 INFO L273 TraceCheckUtils]: 210: Hoare triple {26304#true} assume !(~i~0 < 10000); {26304#true} is VALID [2018-11-14 17:09:26,109 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 17:09:26,109 INFO L273 TraceCheckUtils]: 212: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,109 INFO L268 TraceCheckUtils]: 213: Hoare quadruple {26304#true} {26305#false} #77#return; {26305#false} is VALID [2018-11-14 17:09:26,110 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 17:09:26,110 INFO L273 TraceCheckUtils]: 215: Hoare triple {26305#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26305#false} is VALID [2018-11-14 17:09:26,110 INFO L273 TraceCheckUtils]: 216: Hoare triple {26305#false} assume !false; {26305#false} is VALID [2018-11-14 17:09:26,130 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 17:09:26,131 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:26,131 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 17:09:26,140 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 17:09:26,221 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 17:09:26,221 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:09:26,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:26,259 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:09:26,588 INFO L256 TraceCheckUtils]: 0: Hoare triple {26304#true} call ULTIMATE.init(); {26304#true} is VALID [2018-11-14 17:09:26,588 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 17:09:26,588 INFO L273 TraceCheckUtils]: 2: Hoare triple {26304#true} assume true; {26304#true} is VALID [2018-11-14 17:09:26,588 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26304#true} {26304#true} #69#return; {26304#true} is VALID [2018-11-14 17:09:26,589 INFO L256 TraceCheckUtils]: 4: Hoare triple {26304#true} call #t~ret12 := main(); {26304#true} is VALID [2018-11-14 17:09:26,589 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 17:09:26,590 INFO L273 TraceCheckUtils]: 6: Hoare triple {26353#(<= main_~i~1 0)} assume true; {26353#(<= main_~i~1 0)} is VALID [2018-11-14 17:09:26,590 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 17:09:26,591 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 17:09:26,591 INFO L273 TraceCheckUtils]: 9: Hoare triple {26307#(<= main_~i~1 1)} assume true; {26307#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:26,591 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 17:09:26,592 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 17:09:26,592 INFO L273 TraceCheckUtils]: 12: Hoare triple {26308#(<= main_~i~1 2)} assume true; {26308#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:26,592 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 17:09:26,593 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 17:09:26,594 INFO L273 TraceCheckUtils]: 15: Hoare triple {26309#(<= main_~i~1 3)} assume true; {26309#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:26,594 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 17:09:26,595 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 17:09:26,595 INFO L273 TraceCheckUtils]: 18: Hoare triple {26310#(<= main_~i~1 4)} assume true; {26310#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:26,596 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 17:09:26,597 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 17:09:26,597 INFO L273 TraceCheckUtils]: 21: Hoare triple {26311#(<= main_~i~1 5)} assume true; {26311#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:26,598 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 17:09:26,598 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 17:09:26,599 INFO L273 TraceCheckUtils]: 24: Hoare triple {26312#(<= main_~i~1 6)} assume true; {26312#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:26,599 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 17:09:26,600 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 17:09:26,600 INFO L273 TraceCheckUtils]: 27: Hoare triple {26313#(<= main_~i~1 7)} assume true; {26313#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:26,601 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 17:09:26,602 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 17:09:26,602 INFO L273 TraceCheckUtils]: 30: Hoare triple {26314#(<= main_~i~1 8)} assume true; {26314#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:26,603 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 17:09:26,603 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 17:09:26,604 INFO L273 TraceCheckUtils]: 33: Hoare triple {26315#(<= main_~i~1 9)} assume true; {26315#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:26,604 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 17:09:26,605 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 17:09:26,606 INFO L273 TraceCheckUtils]: 36: Hoare triple {26316#(<= main_~i~1 10)} assume true; {26316#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:26,606 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 17:09:26,607 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 17:09:26,607 INFO L273 TraceCheckUtils]: 39: Hoare triple {26317#(<= main_~i~1 11)} assume true; {26317#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:26,608 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 17:09:26,609 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 17:09:26,609 INFO L273 TraceCheckUtils]: 42: Hoare triple {26318#(<= main_~i~1 12)} assume true; {26318#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:26,610 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 17:09:26,610 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 17:09:26,611 INFO L273 TraceCheckUtils]: 45: Hoare triple {26319#(<= main_~i~1 13)} assume true; {26319#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:26,611 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 17:09:26,612 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 17:09:26,612 INFO L273 TraceCheckUtils]: 48: Hoare triple {26320#(<= main_~i~1 14)} assume true; {26320#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:26,613 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 17:09:26,614 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 17:09:26,614 INFO L273 TraceCheckUtils]: 51: Hoare triple {26321#(<= main_~i~1 15)} assume true; {26321#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:26,615 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 17:09:26,615 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 17:09:26,616 INFO L273 TraceCheckUtils]: 54: Hoare triple {26322#(<= main_~i~1 16)} assume true; {26322#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:26,616 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 17:09:26,617 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 17:09:26,618 INFO L273 TraceCheckUtils]: 57: Hoare triple {26323#(<= main_~i~1 17)} assume true; {26323#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:26,618 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 17:09:26,619 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 17:09:26,619 INFO L273 TraceCheckUtils]: 60: Hoare triple {26324#(<= main_~i~1 18)} assume true; {26324#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:26,620 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 17:09:26,620 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 17:09:26,621 INFO L273 TraceCheckUtils]: 63: Hoare triple {26325#(<= main_~i~1 19)} assume true; {26325#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:26,621 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 17:09:26,622 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 17:09:26,623 INFO L273 TraceCheckUtils]: 66: Hoare triple {26326#(<= main_~i~1 20)} assume true; {26326#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:26,623 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 17:09:26,624 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 17:09:26,624 INFO L273 TraceCheckUtils]: 69: Hoare triple {26327#(<= main_~i~1 21)} assume true; {26327#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:26,625 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 17:09:26,626 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 17:09:26,626 INFO L273 TraceCheckUtils]: 72: Hoare triple {26328#(<= main_~i~1 22)} assume true; {26328#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:26,627 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 17:09:26,627 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 17:09:26,628 INFO L273 TraceCheckUtils]: 75: Hoare triple {26329#(<= main_~i~1 23)} assume true; {26329#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:26,628 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 17:09:26,629 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 17:09:26,630 INFO L273 TraceCheckUtils]: 78: Hoare triple {26330#(<= main_~i~1 24)} assume true; {26330#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:26,630 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 17:09:26,631 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 17:09:26,631 INFO L273 TraceCheckUtils]: 81: Hoare triple {26331#(<= main_~i~1 25)} assume true; {26331#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:26,632 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 17:09:26,632 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 17:09:26,633 INFO L273 TraceCheckUtils]: 84: Hoare triple {26332#(<= main_~i~1 26)} assume true; {26332#(<= main_~i~1 26)} is VALID [2018-11-14 17:09:26,633 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 17:09:26,634 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 17:09:26,635 INFO L273 TraceCheckUtils]: 87: Hoare triple {26333#(<= main_~i~1 27)} assume true; {26333#(<= main_~i~1 27)} is VALID [2018-11-14 17:09:26,635 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 17:09:26,636 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 17:09:26,636 INFO L273 TraceCheckUtils]: 90: Hoare triple {26334#(<= main_~i~1 28)} assume true; {26334#(<= main_~i~1 28)} is VALID [2018-11-14 17:09:26,637 INFO L273 TraceCheckUtils]: 91: Hoare triple {26334#(<= main_~i~1 28)} assume !(~i~1 < 10000); {26305#false} is VALID [2018-11-14 17:09:26,637 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 17:09:26,637 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 17:09:26,638 INFO L273 TraceCheckUtils]: 94: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,638 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 17:09:26,638 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 17:09:26,638 INFO L273 TraceCheckUtils]: 97: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,638 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 17:09:26,638 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 17:09:26,639 INFO L273 TraceCheckUtils]: 100: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,639 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 17:09:26,639 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 17:09:26,639 INFO L273 TraceCheckUtils]: 103: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,639 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 17:09:26,640 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 17:09:26,640 INFO L273 TraceCheckUtils]: 106: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,640 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 17:09:26,640 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 17:09:26,640 INFO L273 TraceCheckUtils]: 109: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,640 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 17:09:26,640 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 17:09:26,640 INFO L273 TraceCheckUtils]: 112: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,641 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 17:09:26,641 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 17:09:26,641 INFO L273 TraceCheckUtils]: 115: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,641 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 17:09:26,641 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 17:09:26,641 INFO L273 TraceCheckUtils]: 118: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,641 INFO L273 TraceCheckUtils]: 119: Hoare triple {26305#false} assume !(~i~0 < 10000); {26305#false} is VALID [2018-11-14 17:09:26,641 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 17:09:26,641 INFO L273 TraceCheckUtils]: 121: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,641 INFO L268 TraceCheckUtils]: 122: Hoare quadruple {26305#false} {26305#false} #73#return; {26305#false} is VALID [2018-11-14 17:09:26,642 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 17:09:26,642 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 17:09:26,642 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 17:09:26,642 INFO L273 TraceCheckUtils]: 126: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,642 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 17:09:26,642 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 17:09:26,642 INFO L273 TraceCheckUtils]: 129: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,642 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 17:09:26,642 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 17:09:26,642 INFO L273 TraceCheckUtils]: 132: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,643 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 17:09:26,643 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 17:09:26,643 INFO L273 TraceCheckUtils]: 135: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,643 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 17:09:26,643 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 17:09:26,643 INFO L273 TraceCheckUtils]: 138: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,643 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 17:09:26,643 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 17:09:26,643 INFO L273 TraceCheckUtils]: 141: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,643 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 17:09:26,644 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 17:09:26,644 INFO L273 TraceCheckUtils]: 144: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,644 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 17:09:26,644 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 17:09:26,644 INFO L273 TraceCheckUtils]: 147: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,644 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 17:09:26,644 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 17:09:26,644 INFO L273 TraceCheckUtils]: 150: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,644 INFO L273 TraceCheckUtils]: 151: Hoare triple {26305#false} assume !(~i~0 < 10000); {26305#false} is VALID [2018-11-14 17:09:26,644 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 17:09:26,645 INFO L273 TraceCheckUtils]: 153: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,645 INFO L268 TraceCheckUtils]: 154: Hoare quadruple {26305#false} {26305#false} #75#return; {26305#false} is VALID [2018-11-14 17:09:26,645 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 17:09:26,645 INFO L273 TraceCheckUtils]: 156: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,645 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 17:09:26,645 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 17:09:26,645 INFO L273 TraceCheckUtils]: 159: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,645 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 17:09:26,645 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 17:09:26,646 INFO L273 TraceCheckUtils]: 162: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,646 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 17:09:26,646 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 17:09:26,646 INFO L273 TraceCheckUtils]: 165: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,646 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 17:09:26,646 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 17:09:26,646 INFO L273 TraceCheckUtils]: 168: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,646 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 17:09:26,646 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 17:09:26,646 INFO L273 TraceCheckUtils]: 171: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,647 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 17:09:26,647 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 17:09:26,647 INFO L273 TraceCheckUtils]: 174: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,647 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 17:09:26,647 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 17:09:26,647 INFO L273 TraceCheckUtils]: 177: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,647 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 17:09:26,647 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 17:09:26,647 INFO L273 TraceCheckUtils]: 180: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,647 INFO L273 TraceCheckUtils]: 181: Hoare triple {26305#false} assume !(~i~2 < 9999); {26305#false} is VALID [2018-11-14 17:09:26,648 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 17:09:26,648 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 17:09:26,648 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 17:09:26,648 INFO L273 TraceCheckUtils]: 185: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,648 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 17:09:26,648 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 17:09:26,648 INFO L273 TraceCheckUtils]: 188: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,648 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 17:09:26,648 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 17:09:26,648 INFO L273 TraceCheckUtils]: 191: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,649 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 17:09:26,649 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 17:09:26,649 INFO L273 TraceCheckUtils]: 194: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,649 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 17:09:26,649 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 17:09:26,649 INFO L273 TraceCheckUtils]: 197: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,649 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 17:09:26,649 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 17:09:26,649 INFO L273 TraceCheckUtils]: 200: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,649 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 17:09:26,650 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 17:09:26,650 INFO L273 TraceCheckUtils]: 203: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,650 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 17:09:26,650 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 17:09:26,650 INFO L273 TraceCheckUtils]: 206: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,650 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 17:09:26,650 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 17:09:26,650 INFO L273 TraceCheckUtils]: 209: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,650 INFO L273 TraceCheckUtils]: 210: Hoare triple {26305#false} assume !(~i~0 < 10000); {26305#false} is VALID [2018-11-14 17:09:26,650 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 17:09:26,651 INFO L273 TraceCheckUtils]: 212: Hoare triple {26305#false} assume true; {26305#false} is VALID [2018-11-14 17:09:26,651 INFO L268 TraceCheckUtils]: 213: Hoare quadruple {26305#false} {26305#false} #77#return; {26305#false} is VALID [2018-11-14 17:09:26,651 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 17:09:26,651 INFO L273 TraceCheckUtils]: 215: Hoare triple {26305#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26305#false} is VALID [2018-11-14 17:09:26,651 INFO L273 TraceCheckUtils]: 216: Hoare triple {26305#false} assume !false; {26305#false} is VALID [2018-11-14 17:09:26,672 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 17:09:26,693 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:09:26,693 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [31, 31] total 32 [2018-11-14 17:09:26,694 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 217 [2018-11-14 17:09:26,694 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:09:26,694 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states. [2018-11-14 17:09:26,831 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 17:09:26,831 INFO L459 AbstractCegarLoop]: Interpolant automaton has 32 states [2018-11-14 17:09:26,831 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2018-11-14 17:09:26,832 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=496, Invalid=496, Unknown=0, NotChecked=0, Total=992 [2018-11-14 17:09:26,832 INFO L87 Difference]: Start difference. First operand 158 states and 162 transitions. Second operand 32 states. [2018-11-14 17:09:28,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:28,189 INFO L93 Difference]: Finished difference Result 228 states and 236 transitions. [2018-11-14 17:09:28,190 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2018-11-14 17:09:28,190 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 217 [2018-11-14 17:09:28,190 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:09:28,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-14 17:09:28,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 144 transitions. [2018-11-14 17:09:28,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-14 17:09:28,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 144 transitions. [2018-11-14 17:09:28,192 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 144 transitions. [2018-11-14 17:09:28,341 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 17:09:28,344 INFO L225 Difference]: With dead ends: 228 [2018-11-14 17:09:28,345 INFO L226 Difference]: Without dead ends: 162 [2018-11-14 17:09:28,345 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 17:09:28,346 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 162 states. [2018-11-14 17:09:28,399 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 162 to 161. [2018-11-14 17:09:28,400 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:09:28,400 INFO L82 GeneralOperation]: Start isEquivalent. First operand 162 states. Second operand 161 states. [2018-11-14 17:09:28,400 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand 161 states. [2018-11-14 17:09:28,400 INFO L87 Difference]: Start difference. First operand 162 states. Second operand 161 states. [2018-11-14 17:09:28,403 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:28,403 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2018-11-14 17:09:28,404 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 166 transitions. [2018-11-14 17:09:28,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:28,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:28,404 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 162 states. [2018-11-14 17:09:28,404 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 162 states. [2018-11-14 17:09:28,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:09:28,407 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2018-11-14 17:09:28,407 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 166 transitions. [2018-11-14 17:09:28,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:09:28,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:09:28,408 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:09:28,408 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:09:28,408 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 161 states. [2018-11-14 17:09:28,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 165 transitions. [2018-11-14 17:09:28,411 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 165 transitions. Word has length 217 [2018-11-14 17:09:28,411 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:09:28,411 INFO L480 AbstractCegarLoop]: Abstraction has 161 states and 165 transitions. [2018-11-14 17:09:28,411 INFO L481 AbstractCegarLoop]: Interpolant automaton has 32 states. [2018-11-14 17:09:28,412 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 165 transitions. [2018-11-14 17:09:28,413 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 221 [2018-11-14 17:09:28,413 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:09:28,413 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 17:09:28,413 INFO L423 AbstractCegarLoop]: === Iteration 33 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:09:28,414 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:09:28,414 INFO L82 PathProgramCache]: Analyzing trace with hash -1225847352, now seen corresponding path program 29 times [2018-11-14 17:09:28,414 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:09:28,414 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:09:28,415 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:28,415 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:09:28,415 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:09:28,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:09:30,488 INFO L256 TraceCheckUtils]: 0: Hoare triple {27833#true} call ULTIMATE.init(); {27833#true} is VALID [2018-11-14 17:09:30,489 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 17:09:30,489 INFO L273 TraceCheckUtils]: 2: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,489 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {27833#true} {27833#true} #69#return; {27833#true} is VALID [2018-11-14 17:09:30,489 INFO L256 TraceCheckUtils]: 4: Hoare triple {27833#true} call #t~ret12 := main(); {27833#true} is VALID [2018-11-14 17:09:30,489 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 17:09:30,490 INFO L273 TraceCheckUtils]: 6: Hoare triple {27835#(= main_~i~1 0)} assume true; {27835#(= main_~i~1 0)} is VALID [2018-11-14 17:09:30,490 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 17:09:30,491 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 17:09:30,491 INFO L273 TraceCheckUtils]: 9: Hoare triple {27836#(<= main_~i~1 1)} assume true; {27836#(<= main_~i~1 1)} is VALID [2018-11-14 17:09:30,492 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 17:09:30,492 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 17:09:30,492 INFO L273 TraceCheckUtils]: 12: Hoare triple {27837#(<= main_~i~1 2)} assume true; {27837#(<= main_~i~1 2)} is VALID [2018-11-14 17:09:30,493 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 17:09:30,493 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 17:09:30,494 INFO L273 TraceCheckUtils]: 15: Hoare triple {27838#(<= main_~i~1 3)} assume true; {27838#(<= main_~i~1 3)} is VALID [2018-11-14 17:09:30,494 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 17:09:30,495 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 17:09:30,495 INFO L273 TraceCheckUtils]: 18: Hoare triple {27839#(<= main_~i~1 4)} assume true; {27839#(<= main_~i~1 4)} is VALID [2018-11-14 17:09:30,496 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 17:09:30,496 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 17:09:30,497 INFO L273 TraceCheckUtils]: 21: Hoare triple {27840#(<= main_~i~1 5)} assume true; {27840#(<= main_~i~1 5)} is VALID [2018-11-14 17:09:30,498 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 17:09:30,498 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 17:09:30,499 INFO L273 TraceCheckUtils]: 24: Hoare triple {27841#(<= main_~i~1 6)} assume true; {27841#(<= main_~i~1 6)} is VALID [2018-11-14 17:09:30,499 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 17:09:30,500 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 17:09:30,501 INFO L273 TraceCheckUtils]: 27: Hoare triple {27842#(<= main_~i~1 7)} assume true; {27842#(<= main_~i~1 7)} is VALID [2018-11-14 17:09:30,501 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 17:09:30,502 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 17:09:30,502 INFO L273 TraceCheckUtils]: 30: Hoare triple {27843#(<= main_~i~1 8)} assume true; {27843#(<= main_~i~1 8)} is VALID [2018-11-14 17:09:30,503 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 17:09:30,503 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 17:09:30,504 INFO L273 TraceCheckUtils]: 33: Hoare triple {27844#(<= main_~i~1 9)} assume true; {27844#(<= main_~i~1 9)} is VALID [2018-11-14 17:09:30,504 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 17:09:30,505 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 17:09:30,506 INFO L273 TraceCheckUtils]: 36: Hoare triple {27845#(<= main_~i~1 10)} assume true; {27845#(<= main_~i~1 10)} is VALID [2018-11-14 17:09:30,506 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 17:09:30,507 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 17:09:30,507 INFO L273 TraceCheckUtils]: 39: Hoare triple {27846#(<= main_~i~1 11)} assume true; {27846#(<= main_~i~1 11)} is VALID [2018-11-14 17:09:30,508 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 17:09:30,509 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 17:09:30,509 INFO L273 TraceCheckUtils]: 42: Hoare triple {27847#(<= main_~i~1 12)} assume true; {27847#(<= main_~i~1 12)} is VALID [2018-11-14 17:09:30,510 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 17:09:30,510 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 17:09:30,511 INFO L273 TraceCheckUtils]: 45: Hoare triple {27848#(<= main_~i~1 13)} assume true; {27848#(<= main_~i~1 13)} is VALID [2018-11-14 17:09:30,511 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 17:09:30,512 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 17:09:30,513 INFO L273 TraceCheckUtils]: 48: Hoare triple {27849#(<= main_~i~1 14)} assume true; {27849#(<= main_~i~1 14)} is VALID [2018-11-14 17:09:30,513 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 17:09:30,514 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 17:09:30,514 INFO L273 TraceCheckUtils]: 51: Hoare triple {27850#(<= main_~i~1 15)} assume true; {27850#(<= main_~i~1 15)} is VALID [2018-11-14 17:09:30,515 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 17:09:30,515 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 17:09:30,516 INFO L273 TraceCheckUtils]: 54: Hoare triple {27851#(<= main_~i~1 16)} assume true; {27851#(<= main_~i~1 16)} is VALID [2018-11-14 17:09:30,517 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 17:09:30,517 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 17:09:30,518 INFO L273 TraceCheckUtils]: 57: Hoare triple {27852#(<= main_~i~1 17)} assume true; {27852#(<= main_~i~1 17)} is VALID [2018-11-14 17:09:30,518 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 17:09:30,519 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 17:09:30,519 INFO L273 TraceCheckUtils]: 60: Hoare triple {27853#(<= main_~i~1 18)} assume true; {27853#(<= main_~i~1 18)} is VALID [2018-11-14 17:09:30,520 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 17:09:30,521 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 17:09:30,521 INFO L273 TraceCheckUtils]: 63: Hoare triple {27854#(<= main_~i~1 19)} assume true; {27854#(<= main_~i~1 19)} is VALID [2018-11-14 17:09:30,522 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 17:09:30,522 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 17:09:30,523 INFO L273 TraceCheckUtils]: 66: Hoare triple {27855#(<= main_~i~1 20)} assume true; {27855#(<= main_~i~1 20)} is VALID [2018-11-14 17:09:30,523 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 17:09:30,524 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 17:09:30,525 INFO L273 TraceCheckUtils]: 69: Hoare triple {27856#(<= main_~i~1 21)} assume true; {27856#(<= main_~i~1 21)} is VALID [2018-11-14 17:09:30,525 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 17:09:30,526 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 17:09:30,526 INFO L273 TraceCheckUtils]: 72: Hoare triple {27857#(<= main_~i~1 22)} assume true; {27857#(<= main_~i~1 22)} is VALID [2018-11-14 17:09:30,527 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 17:09:30,528 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 17:09:30,528 INFO L273 TraceCheckUtils]: 75: Hoare triple {27858#(<= main_~i~1 23)} assume true; {27858#(<= main_~i~1 23)} is VALID [2018-11-14 17:09:30,529 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 17:09:30,529 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 17:09:30,530 INFO L273 TraceCheckUtils]: 78: Hoare triple {27859#(<= main_~i~1 24)} assume true; {27859#(<= main_~i~1 24)} is VALID [2018-11-14 17:09:30,530 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 17:09:30,531 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 17:09:30,532 INFO L273 TraceCheckUtils]: 81: Hoare triple {27860#(<= main_~i~1 25)} assume true; {27860#(<= main_~i~1 25)} is VALID [2018-11-14 17:09:30,532 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 17:09:30,533 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 17:09:30,533 INFO L273 TraceCheckUtils]: 84: Hoare triple {27861#(<= main_~i~1 26)} assume true; {27861#(<= main_~i~1 26)} is VALID [2018-11-14 17:09:30,534 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 17:09:30,534 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 17:09:30,535 INFO L273 TraceCheckUtils]: 87: Hoare triple {27862#(<= main_~i~1 27)} assume true; {27862#(<= main_~i~1 27)} is VALID [2018-11-14 17:09:30,535 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 17:09:30,536 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 17:09:30,537 INFO L273 TraceCheckUtils]: 90: Hoare triple {27863#(<= main_~i~1 28)} assume true; {27863#(<= main_~i~1 28)} is VALID [2018-11-14 17:09:30,537 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 17:09:30,538 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 17:09:30,538 INFO L273 TraceCheckUtils]: 93: Hoare triple {27864#(<= main_~i~1 29)} assume true; {27864#(<= main_~i~1 29)} is VALID [2018-11-14 17:09:30,539 INFO L273 TraceCheckUtils]: 94: Hoare triple {27864#(<= main_~i~1 29)} assume !(~i~1 < 10000); {27834#false} is VALID [2018-11-14 17:09:30,539 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 17:09:30,539 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 17:09:30,540 INFO L273 TraceCheckUtils]: 97: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,540 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 17:09:30,540 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 17:09:30,540 INFO L273 TraceCheckUtils]: 100: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,540 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 17:09:30,540 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 17:09:30,541 INFO L273 TraceCheckUtils]: 103: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,541 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 17:09:30,541 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 17:09:30,541 INFO L273 TraceCheckUtils]: 106: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,541 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 17:09:30,541 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 17:09:30,542 INFO L273 TraceCheckUtils]: 109: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,542 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 17:09:30,542 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 17:09:30,542 INFO L273 TraceCheckUtils]: 112: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,542 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 17:09:30,542 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 17:09:30,542 INFO L273 TraceCheckUtils]: 115: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,542 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 17:09:30,542 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 17:09:30,542 INFO L273 TraceCheckUtils]: 118: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,543 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 17:09:30,543 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 17:09:30,543 INFO L273 TraceCheckUtils]: 121: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,543 INFO L273 TraceCheckUtils]: 122: Hoare triple {27833#true} assume !(~i~0 < 10000); {27833#true} is VALID [2018-11-14 17:09:30,543 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 17:09:30,543 INFO L273 TraceCheckUtils]: 124: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,543 INFO L268 TraceCheckUtils]: 125: Hoare quadruple {27833#true} {27834#false} #73#return; {27834#false} is VALID [2018-11-14 17:09:30,543 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 17:09:30,543 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 17:09:30,543 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 17:09:30,544 INFO L273 TraceCheckUtils]: 129: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,544 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 17:09:30,544 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 17:09:30,544 INFO L273 TraceCheckUtils]: 132: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,544 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 17:09:30,544 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 17:09:30,544 INFO L273 TraceCheckUtils]: 135: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,544 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 17:09:30,544 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 17:09:30,544 INFO L273 TraceCheckUtils]: 138: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,545 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 17:09:30,545 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 17:09:30,545 INFO L273 TraceCheckUtils]: 141: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,545 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 17:09:30,545 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 17:09:30,545 INFO L273 TraceCheckUtils]: 144: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,545 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 17:09:30,545 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 17:09:30,545 INFO L273 TraceCheckUtils]: 147: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,545 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 17:09:30,546 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 17:09:30,546 INFO L273 TraceCheckUtils]: 150: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,546 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 17:09:30,546 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 17:09:30,546 INFO L273 TraceCheckUtils]: 153: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,546 INFO L273 TraceCheckUtils]: 154: Hoare triple {27833#true} assume !(~i~0 < 10000); {27833#true} is VALID [2018-11-14 17:09:30,546 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 17:09:30,546 INFO L273 TraceCheckUtils]: 156: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,546 INFO L268 TraceCheckUtils]: 157: Hoare quadruple {27833#true} {27834#false} #75#return; {27834#false} is VALID [2018-11-14 17:09:30,546 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 17:09:30,547 INFO L273 TraceCheckUtils]: 159: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,547 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 17:09:30,547 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 17:09:30,547 INFO L273 TraceCheckUtils]: 162: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,547 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 17:09:30,547 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 17:09:30,547 INFO L273 TraceCheckUtils]: 165: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,547 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 17:09:30,547 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 17:09:30,547 INFO L273 TraceCheckUtils]: 168: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,548 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 17:09:30,548 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 17:09:30,548 INFO L273 TraceCheckUtils]: 171: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,548 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 17:09:30,548 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 17:09:30,548 INFO L273 TraceCheckUtils]: 174: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,548 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 17:09:30,548 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 17:09:30,548 INFO L273 TraceCheckUtils]: 177: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,548 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 17:09:30,549 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 17:09:30,549 INFO L273 TraceCheckUtils]: 180: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,549 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 17:09:30,549 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 17:09:30,549 INFO L273 TraceCheckUtils]: 183: Hoare triple {27834#false} assume true; {27834#false} is VALID [2018-11-14 17:09:30,549 INFO L273 TraceCheckUtils]: 184: Hoare triple {27834#false} assume !(~i~2 < 9999); {27834#false} is VALID [2018-11-14 17:09:30,549 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 17:09:30,549 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 17:09:30,549 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 17:09:30,549 INFO L273 TraceCheckUtils]: 188: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,550 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 17:09:30,550 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 17:09:30,550 INFO L273 TraceCheckUtils]: 191: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,550 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 17:09:30,550 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 17:09:30,550 INFO L273 TraceCheckUtils]: 194: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,550 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 17:09:30,550 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 17:09:30,550 INFO L273 TraceCheckUtils]: 197: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,550 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 17:09:30,551 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 17:09:30,551 INFO L273 TraceCheckUtils]: 200: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,551 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 17:09:30,551 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 17:09:30,551 INFO L273 TraceCheckUtils]: 203: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,551 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 17:09:30,551 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 17:09:30,551 INFO L273 TraceCheckUtils]: 206: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,551 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 17:09:30,551 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 17:09:30,552 INFO L273 TraceCheckUtils]: 209: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,552 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 17:09:30,552 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 17:09:30,552 INFO L273 TraceCheckUtils]: 212: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,552 INFO L273 TraceCheckUtils]: 213: Hoare triple {27833#true} assume !(~i~0 < 10000); {27833#true} is VALID [2018-11-14 17:09:30,552 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 17:09:30,552 INFO L273 TraceCheckUtils]: 215: Hoare triple {27833#true} assume true; {27833#true} is VALID [2018-11-14 17:09:30,552 INFO L268 TraceCheckUtils]: 216: Hoare quadruple {27833#true} {27834#false} #77#return; {27834#false} is VALID [2018-11-14 17:09:30,552 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 17:09:30,552 INFO L273 TraceCheckUtils]: 218: Hoare triple {27834#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {27834#false} is VALID [2018-11-14 17:09:30,553 INFO L273 TraceCheckUtils]: 219: Hoare triple {27834#false} assume !false; {27834#false} is VALID [2018-11-14 17:09:30,574 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 17:09:30,574 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:09:30,574 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 17:09:30,588 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1